Миди система своими руками

Добавил пользователь Владимир З.
Обновлено: 19.09.2024

Клавиатура предназначена для подключения к внешнему саунд-модулю или компьютеру (при наличии соответствующего интерфейса) с использованием MIDI протокола – для записи музыки в секвенсерную программу или живого исполнения. Количество клавиш в предложенном варианте 48, может быть увеличено без переделки схемы до 64. Отличительной особенностью предлагаемой клавиатуры является чувствительность к силе удара по клавише.

История создания устройства

Сначала был запущен нединамический вариант программы (его я тоже привожу для тех, у кого клавиатура имеет один контакт на клавишу). Потом запустилась динамическая версия. И тут созрела мысль добавить кнопки и индикатор. Дело в том, что у меня без дела давно валялась платка WAVEBLASTER (дочерний wavetable синтезатор для очень старых звуковух). Подключивши ее к моему творению, я получил нечто, на чем можно играть (в меру сил и таланта) без компьютера, что иногда довольно удобно. Это и определило набор функций на кнопках – он может пригодиться при подключении к звуковым модулям при “живой” игре. Функции кнопок легко изменить, написав свои обработчики и используя мои процедуры опроса и индикации. Кое-как собранная в железном корпусе клавиатура оказалась удобнее, чем YAMAHA PSS (все же полноразмерные клавиши, педаль и, главное, динамика!). В разгаре творческого процесса возникло труднопреодолимое желание сделать версию MIDI клавиатуры чисто для компьютера – индикатор и кнопки необязательны, но нужны колеса PITCH WEEL и MODULATION. Некоторое время я с ним боролся, но, в конце концов, сдался и снова включил паяльник. Электронику собрать несложно, с механикой – несколько сложнее, и я начал морщить лоб над устройством колеса. Поразмыслив, я решил отказаться от второго колеса - все равно я никогда не кручу их сразу оба, обычно сначала пишу ноты и pitch, затем дописываю modulation. Не последним соображением было и уменьшение в два раза объема столь любимых мною механических работ. Для менее ленивых я ниже объясню, как почти не усложняя схему сделать два колеса. Чтобы все-таки иметь возможность писать modulation, я решил организовать три режима работы колеса: pitch на 2 полутона, pitch на 1 полутон (удобно), и modulation. Переключать это все можно одной кнопкой, а индицировать режим – парой светодиодов. Чтобы упростить схему, остальные кнопки и индикаторы я ликвидировал, для работы с современными программами-секвенсорами это все не нужно.

Колесо, конечно же, должно быть надето на ось потенциометра, это-то понятно, а вот к чему его подключить? Первой мыслью было использовать одновибратор на таймере 555. Но расчет показал, что будет трудно добиться точности и стабильности измерения длительности импульса при попытке обеспечить приемлемую частоту опроса колеса, ведь процессор в основном занят измерением времени переключения клавиатурных контактов. Остался путь использования аналого-цифрового преобразователя (АЦП). Поскольку у меня использовался Pic16F84 без встроенного АЦП, я вспомнил инженерное прошлое (и родной завод) и сделал АЦП из нескольких резисторов с компаратором (и куска программы). Получилось просто, дешево и довольно точно.

Я привожу обе схемы – и с кнопками, и с колесом, а также программы для них. При желании обе схемы можно легко совместить, слегка изменив адреса внешних устройств, нужно только помнить, что режим CHORUS (STEREO) использует pitch для получения расстройки и его нужно или убрать, или озаботится передачей pitch с расстройкой по каналам.

Итак – собственно клавиатура

Схема устройства

Первым появился нединамический вариант, нечувствительный к силе удара по клавише – для проверки работоспособности макета.

Я использовал PIC16F84 в качестве процессора из нескольких соображений: эта микросхема доступна, дешева и удобно программируется, кроме того – именно она оказалась у меня под руками. Внимание: PIC16C84 не годится - у него ОЗУ всего 36 ячеек и программа не будет работать. Впрочем, схема с колесом использует меньше ячеек ОЗУ и ее программу можно втиснуть и в PIC16C84, сократив еще пару ячеек, например MIDCH (присвоив постоянный MIDI канал всем передаваемым данным).

Схема динамической клавиатуры с индикацией приведена ниже:

Схема во многом традиционна - трудно изобрести велосипед без педалей и колес.J Порт B работает на передачу - младшие 7 бит выводят адрес клавиши в матрице или данные для внешних устройств (индикатор и ЦАП колеса). Старший бит используется для вывода MIDI данных последовательным кодом - преобразование и вывод сделаны программными. Поэтому кварц должен быть на 4 MHz, если вы не хотите переписывать процедуру вывода байта по MIDI. Два младших бита порта A работают на прием - на них поступают сигналы с мультиплексоров “отпущенных” и “нажатых” контактов клавиш, а три старших бита определяют адрес внешнего устройства (через еще один дешифратор КР1533ИД7). В схеме с колесом от дешифратора адреса внешнего устройства я отказался для упрощения схемы и освобождения старшего бита порта PA4 для ввода данных с компаратора, поэтому адреса клавиатуры и кнопок другие. При совмещении схем эту микросхему придется вернуть, для дешифрации адреса использовать биты порта PA2 и PA3,и адресовать 4 устройства: клавиатуру, кнопки, регистр данных динамической индикации и регистр знакоместа динамической индикации. Индикацию режимов колеса придется переписать.

Схема с колесом PITCH WEEL / MODULATION выглядит так:

Очень важно хорошо отстроить механику - верхние контакты ОБЯЗАТЕЛЬНО должны замыкаться при отпускании клавиш. Если этого не сделать, программа считает такие клавиши нажатыми и пытается их обрабатывать, поэтому повторное нажатие этих клавиш звука не дает. Кроме того, максимальное количество одновременно звучащих нот – 10 (если у кого-нибудь на руках выросло больше пальцев, это количество легко изменить), и не отпущенные клавиши уменьшают это количество. Из этих же соображений число клавиш, указанное в процедуре опроса клавиатуры, должно ОБЯЗАТЕЛЬНО совпадать с количеством реальных клавиш. Дребезг контактов давится программно.

Для резистивной матрицы R-2R АЦП желательно подобрать резисторы с точностью 1–2%, причем абсолютные значения могут быть и другие, важно отношение. Впрочем, сильно увеличивать номинал не стоит, это увеличит время преобразования из-за входной емкости компаратора. Я использовал SMD резисторы без подбора, хотя измерения показали, что в одной монтажной полоске резисторы обычно согласованы с точностью выше 1%. Я уверен, что схема будет работать и с неточными резисторами, но линейность характеристики ухудшится. Само колесо сделано из ручки от старого телевизора и имеет пружинку на оси потенциометра, возвращающую его в среднее положение. Для удобства настройки механики, при включении питания с нажатой кнопкой режима, включается отладочная программа, зажигающая светодиод, когда колесо находится в среднем положении, это позволяет точно настроить нулевой положение колеса на оси потенциометра. Если есть потребность и желание сделать отдельное колесо MODULATION, его нужно подключить к свободному элементу компаратора (их там четыре), причем матрица R-2R у обоих колес общая. Для коммутации выходов компараторов лучше применить дополнительную микросхему, а в качестве управляющего сигнала использовать PA2.

При желании можно собрать динамический вариант клавиатуры и без индикации, кнопок и колеса PITCH WEEL / MODULATION – просто не собирая неиспользуемую часть схемы. Все изменяемые параметры будут установлены по умолчанию при включении питания…

Питать это все можно от чего угодно, ток потребления зависит от конкретного индикатора и не превышает 100 mA. У меня прямо на плате стоит стабилизатор 7805 без радиатора (его хорошо видно на фотографии). Небольшой радиатор нужен, если на него подавать более 9v. Компаратор питается напряжением 9 – 12 v, желательно стабилизированным. Да, я использовал микросхемы советского производства из старых запасов – существует большое количество их современных аналогов, замена возможна и даже желательна – современные аналоги имеют меньшее потребление.

Программа

АЦП колеса наполовину программный, работает по алгоритму последовательных приближений, матрица R-2R выполняет преобразование “цифра - аналог”. Вначале на матрицу R-2R подается 1 в старшем разряде, и компаратор определяет, много это или мало. Если мало, в старшем разряде остается 1, если много – 0.Далее то же самое происходит с каждым следующим младшим разрядом (всего 6 шагов) и мы получаем шестибитное число, соответствующее углу поворота колеса. Такая точность мне представляется достаточной, но можно добавить еще один бит, увеличив матрицу и программу преобразования.

Конструкция

Печатная плата не разрабатывалась – я посчитал нецелесообразным для изготовления единичного экземпляра устройства тратить время на разводку и изготовление платы, а макет был изготовлен на монтажной плате с помощью перемычек из МГТФа. В качестве разъема и шлейфа к клавиатуре был использован шлейф от флоппи-дисководов из компьютера с соответствующим разъемом с каждой стороны – это облегчает сборку/разборку готового устройства.

В моем случае корпус был выгнут из тонкой листовой стали (что было под руками) – с деревянными боковинами (как у старых советских инструментов).

А зачем делать самому? Все же продаётся! — Спросите Вы меня.
Во-первых, это реализация своего творческого потенциала. Сделать собственный проект это занимательно, интересно и позволяет унять желание сделать что-то своими руками.
Во-вторых, крупноблочный DIY проект это не очень сложно, но позволяет получить изделие с уникальными характеристиками и авторским дизайном.
И, наконец, DIY проект портативной акустики может стать необычным, но полезным подарком.
Я сделал более двух десятков различных типов колонок, хочу поделится своим опытом.


Содержание

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

Выбор концепции и дизайна акустики

Сначала надо определится с размерным классом будущего изделия. Условно разделим портативную акустику на три класса: микро, мини и макси.

Микро — портативная акустика ближнего поля, формата небольшого радиоприемника. Такую даже можно сделать моно, все равно размер не даст получить нормальный стереозвук.
Мини — типовой формат, китайские покупные колонки как раз такого размера. Там обычно пара динамиков и пассивный излучатель.
И, наконец-то, макси формат. Размер на грани портативного. Для вечеринок большой компанией. Формат аудио чаще всего 2.1 (стерео с отдельным низкочастотным каналом).


Дизайн вещь индивидуальная! Тут есть место полету фантазии. Совет: необходим эскиз/чертеж/трехмерная модель будущего изделия, что бы прикинуть компоновку узлов и не ошибиться в размерах.

Выбор типа корпуса

Фанера

Самый простой в обработке и легкодоступный материал — фанера. Как вариант: деревянный массив, ДСП или МДФ.

Минусы — это тяжесть и дополнительные работы по влагостойкости.


Кроме фанеры можно использовать текстолит (клеить эпоксидкой) и картон. Последний неплохо пропитать горячим лаком.

Вот мои поделки — под ретро радио из стеклотектолита и вариант корпуса из пропитанной картонной трубы:



Донором для портативной акустики может служить:

  • Чемоданы
  • Ящики для инструмента
  • Канистры
  • Аптечки
  • Кашпо
  • Кейсы от коньяка
  • И экзотические варианты, например, патронный ящик от пулемёта.

Рассмотрим как реализовывали это различные авторы:




Корпуса для РЭА

Можно использовать корпуса для РЭА. Это удобно: широкий выбор размеров, доступность. Корпуса чаще всего герметичные (с резиновым уплотнением).

Корпуса для РЭА есть пластиковые (чаще), алюминиевые (дороже) и комбинированные.

При приложении рук получается вполне нарядно:


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

Из алюминиевых корпусов мне очень понравился такой с торцевыми пластиковыми крышками (я купил):


Профили

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

Пластиковые корпуса нужно усиливать ребрами жесткости.

Вот мой мой пример корпуса из профиля:


3D печать и формовка

Повальное распространение 3D принтеров, печатающих пластиком, серьезно упростило жизнь самодельщикам. Теперь небольшие корпуса или элементы конструктива можно печатать из пластика. Без проблем можно реализовать сложные формы, вроде, лабиринтов.


Формовка — подразумевает собой классический приём: каркас, стеклоткань и эпоксидная смола. На финише шпатлёвка, шлифовка и окраска. Таким образом можно получить корпус весьма замысловатой формы.


Подбор динамиков и акустического оформления

Помните про размерный класс? Так вот, и динамики можно соотнести так же.

  • Микро — размер 3" Там уже может быть использованы и две полосы, а так же сабвуферный басовый канал.

Основные акустические оформления для портативной акустики:

  1. Закрытый ящик. Самый простой вариант, меньше риск ошибиться.
  2. Фазоинвертор. Тяжело настраивать без параметров динамика. В маленьких корпусах тяжело реализуем.
  3. Пассивный излучатель. Самый распространенный в портативных решениях вариант. Площадь излучателя должна быть больше или примерно равна площади динамика, а настройку рабочей частоты можно подкорректировать добавочной массой.

Но все это тема сложная и требующая отдельной статьи. Для портативной акустики можно опираться на данные производителя и от них выбирать объем оформления. А тип оформления рекомендую использовать пассивный излучатель, на нем сейчас 99% такой акустики и сделано.

Пожелания к динамикам для портативной акустики:

  • Желательно неодимовый магнит (мощнее, компактнее, эффективнее)
  • Желательно диффузор с защитой от влажности (пластик, полимер)
  • Резиновый широкий подвес (прочнее, долговечнее, больше ход динамика, глубже бас)
  • Лучше брать динамики 4 Ом, чем 8, так как усилитель выдаст на такую нагрузку больше мощности

Для защиты от внешних воздействий рекомендуется использовать защитные сетки (грили). Продаются они на Алиэкспресс любых размеров, состоят из пластикового фланца и мелкоячеистой металлической сетки.

Подборка предпочтительных моделей динамиков приведена в конце статьи.

Подбор усилителя


Основные пожелания к усилителю мощности в портативную акустику:

  • Высокий КПД, малое потребление от батареи (а это class D)
  • Компактный размер
  • Однополярное питание под аккумуляторы
  • Запас по искажениям и мощности
  • Способность работать в замкнутом пространстве без массивных радиаторов

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

Соответственно для размерных классов напряжения для питания усилителя:

  • Микро — 1S (3-4.2 В)
  • Мини — 2-3S
  • Макси — >3S

Подборка предпочтительных моделей плат усилителей приведена в конце статьи.

Подбор источника сигнала

Тут нужно отталкиваться от своих предпочтений и что будет наиболее востребовано.

Просто линейный вход на усилитель, если нужно проводное подключение. Если источником будет только смартфон/планшет по Bluetooth или WiFi, то плата приемника беспроводного сигнала.

Если нужна универсальность (Bluetooth/FM радио/USB/карта SD и пульт ДУ) — то лучше выбрать mp3-модуль с нужным функционалом и подходящего размера.


Рекомендую для крупных проектов использовать толковый MP3/FLAC-модуль TDM 157. Я делал на него подробный обзор.

Подборка остальных предпочтительных mp3-модулей приведена в конце статьи.


Выбор аккумулятора

Для носимой техники предпочтительнее литиевые аккумуляторы, чаще всего в форм-факторе цилиндров или плоских пакетов.

У многих есть в использовании аккумуляторы популярного формата 18650, можно их и применить.

Помимо аккумуляторов нужна плата зарядки, защиты и балансировки и желательно кейс (холдер) или рамки для набора нужной батареи.

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


Для морозостойкого исполнения бумбокса можно применить аккумуляторы формата LiFePO4.

Сборка изделия

Советы для финальной сборки портативной акустики:

  • Корпус акустики должен быть герметичен, щелей и лишних отверстий быть не должно.
  • В большом корпусе лучше разделить левый канал от правого перегородкой.
  • Динамики нужно стараться поставить дальше друг от друга.
  • Разборная конструкция практичнее склеенной.
  • Ручка или петелька для переноски добавят удобства использования.
  • Пайка проводов лучше чем скрутка, разъемы практичнее.

И еще важный момент, для развязки земляной петли (фона) при питании от одного аккумулятора и источника и усилителя, нужно запитать источник сигнала через преобразователь B1212. Это компактный DC-DC преобразователь 12 В, с гальванической развязкой и выходной мощностью 1 Вт. Фона гарантированно не будет.

  • Часы
  • Кнопку с подсветкой
  • Кольцевую RGB подсветку
  • Светодиодный фонарик
  • Стрелочный или цифровой индикатор уровня

Для наглядности и контроля батареи рекомендую поставить индикатор заряда аккумуляторов:


Если что-то не вместилось при компоновке, всегда можно навесить доп. оборудование в отдельном кейсе снаружи конструкции:


Заключение


Нельзя объять необъятное ©

В комментариях предлагайте свои идеи и делитесь своими конструкциями портативных колонок.

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

MESS2 - DIY - HANDMADE USB MIDI CONTROLLER FOR TRAKTOR EZ DRUMMER SUPERIOR DRUMMER AND MORE

Алексей Булдаков

Алексей Булдаков запись закреплена

Здравствуйте!
У меня такой вопрос:
Делаю потихоньку loop switcher на 8 входов. Делаю на STM32F401. Поскольку у меня для опроса кнопок будут использоваться сдвиговые регистры, а светодиоды я хочу использовать адресные + OLED дисплей для удобства c подключением по I2C, то у меня остаётся большое количество незадействованных выводов. Плюс сам проц избыточен для этой цели.
Что ещё можно в него запихать?
Как минимум приходит на ум сделать миди вход для управления с миди-контроллера. Также, можно сделать USB/MIDI выход для подключения к компу. Но если его делать то тогда имеет смысл запихнуть в него функционал миди контроллера с внешней клавиатурой на 16/32/64 кнопок банками, потенциометрами и т.п. на чём нибудь типа STM32F030 и связью с основным МК через I2C/SPI/1WIRE.

Пётр Останин

Пётр Останин
запись закреплена

Здравствуйте, недавно захотел себе миди контроллер с моторизированными фейдерами. Искал и инете такие фейдеры, понял, что их не просто найти и что они не мало стоят. Знаете ли где можно достать моторизированные фейдеры с ходом от 60мм и ценой до 1000р?



Еще в далекие 80е годы я своими руками сделал электронный баян на элементной базе, которая существовала в то время. Реализация звукового модуля была осуществлена аппаратными средствами и потому была громоздкой и не совершенной. Сейчас в мире электроники совершенно другой подход – программный. Современная, на базе микропроцессоров техника, позволяет без труда оснастить любой музыкальный инструмент, так называемой системой Миди.

Всем знаком электронный синтезатор, со стандартной клавиатурой пианино. Вся электроника (в том числе звуковой модуль) встроена внутри корпуса.

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

В отличие от синтезатора, Миди инструмент не содержит устройств синтезирующих (создающих) звуков то есть в нем отсутствует звуковой модуль!

MIDI – что это за зверь? Если Вы продвинутый музыкант, то не читайте это, поскольку статья написана для начинающих и по возможности использую минимум технических терминов.

В мире принят единый стандарт на разработку синтезаторов который назвали Music Instrument Digital Interfase (MIDI) – цифровой интерфейс музыкальных инструментов. Это сделано для того, чтобы, если музыкант знает основные принципы Миди, мог без особого труда разобраться с управлением любого музыкального синтезатора, так как все соответствующие функции и органы управления, на разных инструментах, как правило, имеют одинаковые названия. В кругу музыкантов принято более широкое толкование этого термина.

Пытливый читатель конечно заметил, зачем такие сложности?! В идеале лучше всего иметь инструмент со встроенным синтезатором звука и не заморачиваться, но за это придется выложить значительно большую сумму денег, возрастет вес инструмента, ограничены функциональные возможности (в прочем хорошие синтезаторы имеют дополнительно свой Миди интерфейс и потому возможности безграничны).

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

Для домашнего музицирования электронную гармонь лично я не рекомендую, и вот почему. Купив Миди инструмент, вы дополнительно должны приобрести музыкальный модуль или хороший компьютер! К тому же придется потратися на качественные звуковые колонки.

В некоторых моделях электронных гармоней имеются встроенные динамики и позволяют поиграть вне помещения, но во первых звук будет не качественным и очень быстро разрядятся аккумуляторы. И поверьте моему опыту – электроника Вам очень быстро надоест и вы будете мечтать о настоящей, хорошей гармошке, цена которой соизмерима с ценой Миди!

Если Вы профессиональный музыкант и используете инструмент в ансамбле в качестве клавишника то можно потратится.

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


В один прекрасный день я решил, что может стоит замутить на AVR дешевый MIDI-синтезатор. Подобный проект был очень интересен мне как эмбеддеру. Поиски информации о принципах генерации сложных звуков на AVR контроллерах привели к выводу, что это очень, очень, … очень не тривиальная тема. В найденных мной примерах разработки MIDI-синтезаторов количество тембров и многоголосие были весьма ограничены. Это меня совсем не устроило, к тому же я не хотел завязнуть в собственных изысканиях по синтезу звуков. Продолжив поиск далее, я нашел ссылку на замечательный чип от VLSI Solution — VS1053B. Его официальная спецификация — OggVorbis/MP3/AAC/WMA/FLAC/MIDI Audio Codec. Вот даташит на это чудо. Согласно даташиту на борту у этого чипа присутствует MIDI-синтезатор с двумя банками инструментов и эффектом реверберации. Сам чип обошелся бы мне в 143 грн. По сравнению со стоимостью самого дешевого готового промышленного MIDI-синтезатора это сущие копейки. Чтобы не возится с платой под корпус LQFP48, я решил купить уже готовый модуль от SparkFun для Ардуины на базе VS1053B, который у них называется — Music Instrument Shield. Вот на него ссылка. Модуль потянул на 260 грн., что вполне вписывалось в бюджетное решение. Спаяв на макетке цепь опторазвязки входа MIDI, я смог запустить модуль, подключить клавиши и послушать звучание синтезатора на чипе VS1053. Качество конечно не такое как у Super Quartet, но вполне приемлемое, и к тому же 128 инструментов только в первом банке инструментов (их список есть в даташите) — это замечательно. Это было именно то, что я искал. Возможно на этом можно было бы и остановиться, но а где тут AVR? Где же наш дорогой и любимый эмбеддинг? Все далее….

Моя MIDI-клавиатура M-Audio Keystation 61, как очень дешевое изделие, сильно урезана функционально. На ней есть всего две кнопки выбора функций, которых не достаточно для быстрого и удобного управления инструментом. По-умолчанию после включения питания, эти кнопки позволяют смещаться вверх или вниз на одну октаву. Чтобы переназначить управление другими функциями, надо совершить очень хитрые комбинации нажатий кнопок и клавиш, которые запомнить сложно. Поэтому я решил к MIDI-модулю добавить микроконтроллерное управление, которое бы оживило недоступные с клавиатуры функции.


�?нтерфейс MIDI по сути оказался простым UART работающим на скорости 31250 бод, 8 бит данных, 1 стоп-бит и без контроля четности. Поэтому добавить AVR-посредника между клавишами и MIDI-модулем была не проблема. Этот контроллер должен был транслировать через себя MIDI-команды полученные с клавиатуры и вставлять необходимые команды управления. Так родилась концепция моего синтезатора. Детальная проработка позволила разделить устройство на три блока: питание, MIDI-Audio и управление.


Первый блок — блок питания. Ничего революционного в нем нет. Схема классическая. Трансформатор 20 ватт, на выходе выпрямителя получаем 9 вольт, которые отдельным шнуром выводятся для питания MIDI-клавиатуры (т.е. мой синтезатор выступает еще и блоком питания для клавиш). После выпрямителя идет стабилизатор на LM7805 (КРЕН05), который выдает питание 5 вольт на все цифровые и аналоговые цепи. Тут все просто.


Второй блок — блок MIDI-Audio. Блок имеет цифровую и аналоговую части. На плате четко видно разделение цифровой и аналоговой земли. MIDI-модуль подключается сверху в разъемы на плате блока (прям как к Ардуине). На цифровой части находятся разъем MIDI, опторазвязка преобразователя MIDI-TTL и контроллер-посредник ATtiny2313. Контроллер транслирует через себя данные со входа Rx на выход Tx, это канал от клавиш к синтезатору VS1053. Команды управления контроллер получает от блока управления асинхронно параллельным кодом (это для скорости) на порт В. Блок управления сигнализирует контроллеру о готовности передачи байта сигналом внешнего прерывания. По окончании приема всех байтов MIDI-команды контроллер сразу выталкивает их на выход Tx, т.е. в синтезатор. На этом пока все обязанности контроллера-посредника заканчиваются. Работает контроллер только на прерываниях. На аналоговой части блока расположено два стерео усилителя: первый — линейный, второй — для наушников. Линейный усилитель усиливает слабый сигнал с аудио-выхода MIDI-модуля и выводит его на разъемы линейного выхода (разъемы типа тюльпан). На усилитель для наушников сигнал линейного выхода попадает через сдвоенный потенциометр регулятора громкости. Выход усилителя наушников оформлен в виде разъема под пальчиковый штекер. В этом блоке тоже все достаточно просто, без нюансов.

Третий блок — блок управления. Основа блока контроллер ATmega16. Порт С этого контроллера используется для передачи команд управления в блок MIDI-Audio. К этому же порту также подключен LCD на 2 строки по 16 символов (в моем случае это WH1602С). На LCD выводится номер и название (по даташиту VS1053) текущего инструмента. Все выводы порта A контроллера используются как входы АЦП. На текущий момент задействованы только 2 входа. К ним подключены потенциометры, с помощью которых задается уровень реверберации и время задержки реверберации. Остальные шесть входов пока заглушены и возможно будут использованы для будущих функций. На плате блока имеется преобразователь уровней RS232-TTL — чип MAX232N, для обеспечения подключения синтезатора к СОМ-порту компьютера. Это задел для будущих функций. Есть у меня мысли о загрузке с ПК небольших музыкальных семплов в память контроллера для подыгрывания исполнителю на втором MIDI-канале. Порт B используется для работы с матричной клавиатурой и светодиодами. Половина выводов этого порта подключена к двоично-десятичному дешифратору 74HC154N (аналог К155�?Д3), который позволяет организовать до 16 вертикалей для матрицы клавиатуры (хотя я использовал всего 7). Эти выводы также управляют сдвиговым регистром 74HC595, который на прикрепленной к передней панели платке может зажигать до 8 светодиодов (запаяно 3, используется пока 1).

Клавиатура выполнена на отдельной плате, которая прикреплена к передней панели корпуса. Кнопки разделены на две группы: 8 кнопок управления и 20 кнопок для быстрого выбора инструментов. Текущая версия прошивки контроллера блока управления позволяет кнопками управления выбрать один из 128 инструментов и привязать его к любой из кнопок быстрого выбора. Данная привязка сохраняется в энергонезависимой памяти и сохраняется с выключением питания. Также сохраняется и последний выбранный инструмент, который автоматически выбирается сразу после включения устройства.

На этом я пока завершу рассказ о моем синтезаторе. Данный проект обязательно будет развиваться далее, впрочем как и эта статья. По мере появления доработок и интереса к моему устройству, я буду сюда дописывать.

Запись опубликована в рубрике Разное с метками AVR, MIDI, VS1053. Добавьте в закладки постоянную ссылку.

Читайте также: