Найти в Дзене
У Павла!

Проигрываем Midi музыку на Дискетоводах и Ардуино.

Оглавление

В этой статье попытаюсь рассказать, как можно проигрывать музыку на floppy дисководах подключенных к Ардуино.

Когда-то наткнулся на одно видео в просторах интернета. Там из флопиков  (дисководов, Floppy Drive’ов) игралась некая музыка, сейчас уже не вспомню, но мне кажется это и был классический star wars – imperial march ну или по русски марш империи из к.ф звездные войны.

Так как я всегда был компьютерщиком любителем, да и работа с этим связана, взял и записал у себя в заметках, что сие чудо надо повторить обязательно.

Шло время и я собирал флопики). И в принципе уже их когда было 3 шт. Все руки никак не доходили их собрать в музыкальный проигрыватель. Но вот сейчас этот момент настал.

Начал искать статьи с реализацией данного примера. Много информации перебрал как русскоязычной так и зарубежной. Много было описано примеры как скачать проект в программе разработки NetBeans и через эту программу запускать проект написанный на java и подкидывая .dll в определенные директории, заставлять все это работать с помощью платы ардуино и компьютера с проектом на java.

Я даже начал пробовать реализовать данный проект, но там нужно было скачать java sdk и netbeans ругался постоянно на разные версии. В итоге я плюнул на этот способ. Полез на github на страницу с проектом  “Moppy” и начал читать его и смотреть, что-же коллега сделал в этом проекте.

В итоге как оказалось, все описанные способы запуска проекта Moppy сильно устарели и что проект все также развивается. и уже ненужно пользоваться не NetBeans ни java sdk. Достаточно только установленной Java ( мне кажется она установлена на 90% компьютеров) и все. Скачав проект со страницы github нужно будет запустить только .bat файл который сам проделывает с компьютером все манипуляции нужные и все запускается (по крайней мере на windows 10) без проблем.

Вот ссылка на все библиотеки и программы проекта Moppy:  https://github.com/SammyIAm/Moppy2/releases

А здесь ссылка на описание того что нужно сделать с данными файлами от самого автора: https://github.com/SammyIAm/Moppy2/wiki/Getting-Started

Правда все на английском, но я постарался в видео все доступно объяснить.

Ну и собственно потомкам), если вдруг через года проект еще перерастет что-то и вы не будете понимать как это настроить, оставляю ссылки на файлы именно те которые я использовал.

Скетч и программу для воспроизведения можете найти у меня на сайте.

После того как вы загрузили скетч в ардуино и запустили программу, можно приступить к подключению флопиков и атх блока питания.

Давайте сначала разберемся как же запустить БП ATX от компьютера. Он же при подаче питания не запускается.

Вот я привожу распиновку основного блока контактов с БП которые подключаются в материнскую плату.

Согласно данной схеме видно что нам нужно замкнуть зеленый провод с любым черным и вуаля, все запустится.

Теперь что касается питания самого флоппи дисковода. Флоппик питается от 4 контактного разъема. В статье писалось что он питается от  вольт. подключив 5 вольт к флопику. Подав 5 вольт с лабораторного БП оказалось что этого мало, точнее я подумал что дисководы не рабочие. Но в итоге все таки оказалось что питания мало. Если посмотреть на разъем питающий сам флоппик

-2

Видно что тут есть и +5 вольт и +12 вольт. В итоге подключив сие чудо от АТХ БП все завелось без проблем причем на всех флопиках.

Теперь что касается подключения Arduino и Floppy Drive.

Схема:

-3

Нам необходимы следующие пины:

11 и 12 контакты дисковода замыкаем между собой с помощью джампера (Jumper).
17 и 19 контакты дисковода подводим к земле Arduino (GND).
18 контакт флоппа соединяем с 3 digital pin Arduino.
20 контакт флоппа соединяем со 2 digital pin Arduino.
Это что касается одного флоппика, с другими остальными если хотите подключить 2 и более, то повторяем процедуру так же. Единственное отличие, то что на 2 дисководе 18 контакт соединяем с 5 цифровым контактом Ардуины, а 20 с 4-м и так далее.

И после того как уже будет занят 13 digital pin Arduino, можно будет использовать аналоговые пины вплоть до A5 analog pin arduino.

Все, на этом подключение закончено. Выглядит это примерно так:

-4

Компоненты которые использовались в статье:

Arduino uno: http://ali.pub/1th4sk

Контактные провода: http://ali.pub/2plcsi

Переходник с Molex на питание Floppy: http://ali.pub/2plczw

Блок питания ATX.

Ну и сами Флопики)

Ну и конечно-же видео с демонстрацией работы: