MIDI-клавиатура на PIC16F84


         

Положение R1 при каждом опросе


Положение R1 при каждом опросе умножается на 4, т. о. оно может принимать 32 дискретных значений. Если R1 настроен как регулятор громкости, то необходимая информация посылается вместе с событиями нажатия клавиш.
Кнопка SA49 предназначена для перевода устройства в режим настройки, о чем сигнализирует HL1. В этом случае сообщения о нажатиях клавиш не передаются на выход устройства. Нажатие любой из 16 первых клавиш (т. е. подключенных к DD1 и DD2) приводит к переключению MIDI-канала. Нажатие любой из 32 других клавиш приводит к выбору соответствующего номера контроллера, которым будет управлять R1. Если будет нажата клавиша SA18 (подключена к входу X0 DD3), то R1 конфигурируется как регулятор громкости, иначе (при нажатии SA19, SA20 и т. д.) - как манипулятор соответствующего MIDI-контроллера.
Коды программы приведены в табл. 1 (файл MidiKbd.hex).

Первый байт строки 9 (число 29) - константа, изменение которой влияет на номер ноты, с которой начинается клавиатура. В приведенном варианте стартовой нотой считается F 3 (41). В случае применения другой клавиатуры следует откорректировать эту константу и пересчитать контрольную сумму строки 9.
Печатная плата для устройства не разрабатывалась. Мультиплексоры DD1 - DD6 смонтированы непосредственно под клавиатурой. Источник питания, подключаемый к разъему XS2, может иметь выходное напряжение в пределах 6 - 12 В и ток около 50 мА.
С небольшими доработками DD1 - DD6 можно заменить на К561КП1. В качестве DD7 можно применить PIC16F84A или PIC16CR84. Прямая замена на PIC16C84 или PIC16F83 невозможна. В качестве R1 можно использовать любой соответствующий резистор с линейной характеристикой. Разъем XS1 - стандартный пятиконтактный DIN-5.
Клавиатура практически не нуждается в налаживании и начинает работать сразу после включения питания. Если положение R1 определяется неверно, следует подобрать номиналы С1 и R2. Для полного тестирования клавиатуру можно подключить к ПК и с помощью программы-секвенсора проверить правильность работы устройства.При подключении устройства к ПК необходимо использовать переходник, обеспечивающий оптоэлектронную развязку интерфейса. Он может быть собран по любой из общеизвестных схем (например [2]). В таком случае, питать устройство можно от импульсного преобразователя, описанного в [3], подключив его к источнику +5В на игровом порту. При этом следует для уменьшения потребляемого тока увеличить номинал R12 или вообще исключить HL1.

Литература.

1. Студнев А. MIDI-клавиатура - Радио, 1993, № 11, с. 32-34.
2. Оборотов Н. Простая MIDI-клавиатура для ПК - Радио, 2000, №3, с. 25, 26, 44.
3. Власов Ю. Простой преобразователь с независимым возбуждением - Радио, 1996, № 7, с. 50.

Содержание  Назад