Добрый вечер. Ну вот, наконец дособирал я контролер, чем и спешу поделиться.
Собсно вот инструкция как самому безо всяких каких то там специальных знаний собрать для себя этот полезный девайс, цена на который производителями гитарного аппарата явно завышена.
Итак, для изготовления миди контроллера необходимо приобрести в ближайшем радиомагазине след комплектующие:
- Микроконтроллер ATmega16. Можно с индексом L, в корпусе PDIP40.
- Посадочное место (кроватка) PDIP40(можно и без нее обойтись)
- Стабилизатор напряжения КР142ЕН5А или КР142ЕН5В(VC7805CT) или любой другой с выходом 5В
- Кварцевый резонатор на 4МГц
- Резисторы 10Ком, 220 2шт. все млт-0.125
- Алфавитно-цифровой ЖК-дисплей 16x2 HD44780-совместимый. Например, Winstar WH11602A.
- Переменный (подстрочный) резистор на 10к для регулировки контраста(потом можно заменить постоянными)
- Конденсаторы 22мкФ электролитические на 10 и более вольт. 2 шт.
- Конденсаторы керамические 22пФ 2шт. и 0.1мкФ 2 шт.
- Желательно двухрядный разъем – вилка на плату, побольше, от него будем «отламывать» нужные кусочки и штук 15 двухконтактных розеток на кабель к ним.
- Разъем 5PINF для миди выхода(можно отковырять от старого совецкого усилка)
- Кнопки без фиксации(4 маленьких, для управляющих переключателей и больших, как на футсвичах (идеал - Alpha )сколько нужно для функциональных переключателей)
- Монтажный провод, припой, канифоль и тд, все что нужно для таких дел короче.
- Корпус для будущего контроллера.
Для начала выложу фото того, что получилось у меня… внешний вид и качество корпуса конечно не фонтан, надеюсь, у вас получится эстетичней.(Заранее извиняюсь за качество фоток, снимал телефоном. На самом деле дисплей четко разлечим на расстоянии моего роста)
а внутри вот какая абракадабра
Четыре нижних кнопки слева-направо переключают пресеты на контроллере(Program Change сообщения). На дисплее в основном режиме работы отображается значения пресетов, назначенных на каждую кнопку, активный в данный момент пресет отмечается стрелочкой.
Маленькие кнопки под дисплеем реализуют управление – назначение пресетов на конкретные кнопки(+, -), сохранение банков настроек, и загрузка настроек. При включении загружается по умолчанию первый банк настроек и активируется первый пресет (при включении миди сообщение не шлется, так что начальные состояния контроллера и управляемого процессора могут не совпадать). Память может хранить до 10 банков настроек (пока). В режиме сохранения или загрузки в нижней строке дисплея отображаются значения пресетов, сохраненных в просматриваемом банке.
Сохранение или загрузка осуществляются повторным нажатие на соответствующую кнопку. Переключение банков теме же кнопками что и переключение пресетов в обычном режиме.
Крайняя правая кнопка в нижнем ряду – это тап(обычное CC сообщение, обработчик запускается по прерыванию). Верхние кнопки – это СС сообщения для включения отдельных эффектов. По умолчанию они выключены, чтобы синхронизировать с процессором, придется сначала по ним попрыгать(т.е например когда включаете новый пресет на процессоре, там включен дилей. чтобы его выключить, нужно нажать соотв. Кнопку на контроллере, сначала контроллер пошлет сообщение о включении, поскольку не знает в каком состоянии находится процессор, затем значение к проце и в контролере будут согласованы) . Питание 9 вольт от БП, или батарейка внутри. Батарейку хавает не очень сильно, на одном дюраселе я отладил всю железяку
Схема приведена ниже. Вроде ничего не забыл, если что то забыл поправлю завтра на свежую голову).
Монтаж я производил на макетной плате, конечно лучше сделать печатную плату.
Микросхема DD1 – любой стабилизатор с 5 вольтами на выходе.Диод D1 любой маломощный выпрямительный.Конденсаторы C3 и C4 можно заменить на любые, не больше 33 и не меньше 18 пФ емкостями. Я рекомендую все проводки паять не прямо на плату, а через разъемы. Например, кнопки удобно подключать через 2 рядный разъем с помощью двухконтактных розеток, одна сторона разъема соединяется с землей, другая с контактами микроконтроллера. Дисплей так же удобно подключать через разъем. Для настройки контрастности дисплея используется переменный резистор на 10Ком, после настройки его можно заменить на фиксированный делитель. Некоторые дисплеи требуют дополнительного подключения резистора на
подсветку. Как это сделать, смотрите в Datasheet на дисплей.
Одна кнопка у меня не поместилась на корпус, но обработчик в прошивке на нее есть... Ну собсно на все свободные контакты можно паовесить еще кнопки, если это нужно.
Контакты MISO, MOSI, SCK служат для прошивки девайса. (Кстати, замечательная схема USB программатора, который я сделал себе и очень доволен, есть тут
http://prottoss.com/projects/AVR910.usb.prog/avr910_usb_programmer.htm спасибо огромное автору)
Исходники и прошивку выложу завтра, ибо нашел сегодня косячок с обработкой тапа, завтра исправлю.
Кстати, для процессоров без миди мэппинга (например POD xt) (фиксированные номера миди – контроллеров для каждого эффекта) нужно зашить соответствующие значения исходя из документации на процессор.
Внимательно выслушаю Ваши предложения и замечания