цифровая электроника
вычислительная техника
встраиваемые системы

 

Arduino и MIDI

Автор: Mike(admin) от 28-09-2015, 15:15

Некоторые музыканты, которые разбираются в электронике, или электронщики, которым нравится музицировать, хотели бы подключить своё MIDI-устройство к Arduino, но не знают как это правильно сделать. Данный проект поможет разобраться в этом вопросе.


Для начала немного разберемся, что такое MIDI. MIDI расшифровывается как Musical Instrument Digital Interface или по-русски цифровой интерфейс музыкальных инструментов. В передаваемом коде этого интерфейса могут быть зашифрованы параметры громкости, тональности, темпа и других характеристик музыкальных инструментов. Данные интерфейса MIDI обычно передаются по пятипрошодным шинам с разъемами круглой формы DIN 41524 также с пятью контактами, как показано будет на схеме, приведенной ниже. Стандартная скорость передачи данных такого последовательного интерфейса составляет 31.25 кбит/с. Передача осуществляется однонаправленно, то есть в связанной интерфейсом MIDI системе музыкальные инструменты, например, синтезаторы могут только передавать данные головному устройству, например, пульту управления звуковым окружением или компьютеру. Следует помнить, что данные интерфейса MIDI представляют собой не оцифрованный звук, а команды и значения, например, ноты, параметры звука и т.п.


Необходимые компоненты


Arduino и MIDI

  • 5-выводной разъём DIN/MIDI – 1 шт.
  • Оптопара 4n35 или аналог – 1 шт.
  • Диод IN914 или аналог – 1 шт.
  • Резистор 220 Ом – 1 шт.
  • Резистор 560 Ом (можно 220 и 230 в послед.) – 1 шт.
  • Монтажная плата – 1 шт.
  • Arduino – 1 шт.
  • Кабель MIDI – 1 шт.
  • MIDI-устройство – 1 шт.

Схема подключения Arduino к MIDI-устройствам


Arduino и MIDI

Arduino и MIDI

Схема, созданная с помощью fritzing, довольно подробно показывает соединения компонентов. Всё здесь подключается достаточно просто и легко. В основе схемы мы видим микросхему оптической гальванической развязки. Эта оптопара нужна для гальванической развязки линии MIDI от схемы Arduino. Без неё можно сжечь вход Arduino. В данном случае была взята оптопара серии 4n35, состоящая из светодиода и фототранзистора, впрочем, вместо нее подойдет любой другой оптрон со схожими характеристиками.


Будьте внимательны при подключении диода, соблюдайте полярность. Данная схема была создана с учетом стандартов и характеристик интерфейса MIDI. Оригина схемы можно найти здесь http://www.midi.org/techspecs/electrispec.php


Код (скетч для Arduino)


Это простой скрипт взаимодействия с MIDI с использованием библиотеки MIDI.h (скрипт MIDI CALLBACK). Он проверяет, поступил ли сигнал (нота) NoteOn и переходит в соответствующую область обработки. В эту область вы можете вставить свой код.



#include <MIDI.h>

MIDI_CREATE_DEFAULT_INSTANCE();

void handleNoteOn(byte channel, byte pitch, byte velocity)
{

// место для вашего кода при поступившем сигнале

}

void handleNoteOff(byte channel, byte pitch, byte velocity)
{

// место для вашего кода при отсутствии сигнала

}

void setup()
{
MIDI.setHandleNoteOn(handleNoteOn);
MIDI.setHandleNoteOff(handleNoteOff);
MIDI.begin(MIDI_CHANNEL_OMNI);
}

void loop()
{
MIDI.read;
}



© digitrode.ru


<Перевод>


Теги: Arduino




Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии:

Оставить комментарий
Цитата
  • zadan

  • 30 января 2018 07:51
  • Группа: Гости
  • ICQ:
  • Регистрация: --
  • Статус:
  • Комментариев: 0
  • Публикаций: 0
^
библиотека MIDI.h не стандартная для Arduio. Будет практичнее, если автор её приложит к проекту.