MIDI контроллер

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

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

Что касается нового устройства, то оттуда MIDI 5DIN выход убран за бесполезностью, так что будет исключительно компьютерная USB вещь.
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

Дизайн-проект нового устройства:
Изображение

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

Мне нравится вот такая картинка из интернета, красиво. Разумеется для такого класса (небольшого контроллера).
Изображение

А может в самом деле таких же мелких кнопочек наставить на саму плату, железячку правда сверлить без станка намучаешься.
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

Миди-контоллер доделан. В итоге 10 переменников, 4 кнопки, 1 энкодер, дисплей - вот схема:

Изображение

Подключение кнопок через мультиплексор:
Изображение

Подключение ЖКИ:
Изображение

Подключение энкодера:
Изображение

Прошивка, с которой все эти кнопки и крутилки работают уже есть, но пока на LCD выводится всякая ерунда. И кнопки, подключенные как показано к мультиплексору работают наоборот. Также есть бутлоадер (не через сусекс, а через V-USB), так что дописывать и обновлять прошивку легко.

Попробовал в Virtual DJ энкодер как jog wheel использовать (для скрэтча), работает 8)
Последний раз редактировалось Avarges Пт окт 14, 2011 22:48:03, всего редактировалось 1 раз.
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

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

Изображение
Информация на дисплее:
1 - номер контрола на устройстве 0..9,A..C
2 - значение контрола от 0 до 127
3 - направление движения энкодера (2-влево, 1-вправо)
4 - значение от кнопки энкодера (00-отпущена или 7F-нажата)
5,6,7 - значение 13 основных контроллов высотой столбика
5,7 - переменники
6 - 3 кнопки

Значения фьюзов в программаторе uniprof:
Изображение
(галочка означает - логическая единица (по даташиту: unprogrammed), без галочки - ноль (по даташиту: programmed) )

Позже будут исходники, там предусмотрена работа без LCD, также будет версия прошивки с бутлоадером под атмегу8.
Вложения
djcj3.zip
прошивка Atmega8/Atmega48/LCD
(4.71 КБ) 325 скачиваний
swaike
Родился
Сообщения: 1
Зарегистрирован: Сб фев 12, 2011 12:16:14

Re: MIDI контроллер

Сообщение swaike »

Avarges
как понимаю, по данной схеме можно подключить 5 CD4051BCN и будет 25 переменников, 15 кнопaк? A есть разница между CD4051 и CD4051BCN?
Аватара пользователя
zvyagaaa
Встал на лапы
Сообщения: 111
Зарегистрирован: Пт янв 01, 2010 07:49:31
Откуда: Барнаул-Новокузнецк
Контактная информация:

Re: MIDI контроллер

Сообщение zvyagaaa »

Avarges
Сильно круто. Ждем исходников.
теплый ламповый кот
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

swaike писал(а):Avarges
как понимаю, по данной схеме можно подключить 5 CD4051BCN и будет 25 переменников, 15 кнопaк?

Конечно можно 5 мультиплексоров добавить. В итоге, можно на атмегу48 или атмегу8 подключить 48 контролов на АЦП, причём из них сколько хочется кнопок и остальное на переменники. Я удивился, почему об этом не пишут, но потом почитал тему - у khomych была такая идея. Обработка кнопок, подключенных на другие ноги менее удобна, а на АЦП получается универсально. Исходники малость поправить под 48 контролов.

A есть разница между CD4051 и CD4051BCN?

Никакой. Также подходят других производителей аналоги: КР1561КП2, HEF4051, 74HC4051. BCN в моём случае означает, что корпус PDIP16, они есть и в СМД корпусах.

PS. В качестве пищи для ума: никто не пробовал ставить второй каскад мультиплексоров и этим расширять количество кнопок/крутилок до бесконечности, а по сути это можно. 4051 чуть-чуть шумит, но не сильно.
spongebob
Грызет канифоль
Сообщения: 289
Зарегистрирован: Пт мар 20, 2009 12:25:47
Откуда: Ivanovo
Контактная информация:

Re: MIDI контроллер

Сообщение spongebob »

Avarges писал(а):PS. В качестве пищи для ума: никто не пробовал ставить второй каскад мультиплексоров и этим расширять количество кнопок/крутилок до бесконечности, а по сути это можно. 4051 чуть-чуть шумит, но не сильно.

зачем 4051 для кнопок? это мультиплексор всё таки, его для аналога нада юзать. кондёры на питание не забыли? что бы не шумел.
74hc165 - по трём проводам каскадируем много-много штук (у меня 8 было - 64 кнопки)
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

4051 вполне можно для кнопок, у меня оставалось 3 свободных ножки, вот и посадил туда кнопки. И программа одним циклом опроса АЦП всё решает, не приходится накручивать. 74HC165 из модуля DIN это от мидибоксеров, нормальное решение тоже, особенно для крупных контроллеров. Но я делал на минимуме корпусов (2 корпуса в схеме). Керамический кондер около мультиплексора забыл, правда. Остальные два есть (С1, С4).

Исходники будут наверное завтра и кондёр дорисую завтра.

В качестве пищи для ума: на атмеге8 в DIP корпусе шесть ножек-выходов АЦП, на смд-варианте атмеги8 выходов АЦП уже восемь.

Что-то хочется хорошее добавить в контроллер, может меню, что-то ещё, чтоб дисплей лучше задействовать. Есть у кого мысли, идеи?
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

Выкладываю исходники, о которых у меня постоянно спрашивали. Приклеил.

Так выглядит устройство: перекрасил корпус, нанёс надписи.
Изображение

Добавил резистор C1 по spongebob'y:
Изображение
Вложения
14102011-sources-djcjmidi3.zip
(13.97 КБ) 367 скачиваний
Последний раз редактировалось Avarges Вс окт 16, 2011 11:31:56, всего редактировалось 1 раз.
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

Рекомендую вот это переписать:

Код: Выделить всё

      char buffer[16];
      char *str;

                  // Формируется строка вида CC# X [VAL] X-номер контролла, VAL-значение
                  str = "CC# ";
                  LCDGotoXY(0,0);
                  LCDstring(str,4);
                             
                  lci = channel+mux_n+0x30;
                  if (lci > 0x39) lci += 7;
                  LCDGotoXY(4,0);
                  LCDsendChar(lci);
                     
                  str = " [";
                  LCDGotoXY(5,0);
                  LCDstring(str,2);
                 
                  LCDGotoXY(7,0);
                  myitoa(En, buffer);
                  LCDstring(buffer,3);
                     
                  lci = strlen(buffer);
                     
                  str = "]  ";
                  LCDGotoXY(lci+7,0);
                  LCDstring(str,4-lci);

Я не разобрался почему в си не работает вот так:
str[4]=lci;
и почему не работает вот так:
StrCat(str,buffer); или так:
str = str+buffer;
Поэтому написал тупо влоб.
spongebob
Грызет канифоль
Сообщения: 289
Зарегистрирован: Пт мар 20, 2009 12:25:47
Откуда: Ivanovo
Контактная информация:

Re: MIDI контроллер

Сообщение spongebob »

Avarges
Всё забываю спросить, а как в системе определяется данный девайс?
Какие драйвера для него нужны?
Просто виртуальный ком-порт + драйвер ямаха или роланд?
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

Определяется, как "DJ CJ MIDI" в категории "Звуковые, видео и игровые устройства" (Windows 7)
Драйвер не нужен, Windows сама ставит HID драйвер.
spongebob
Грызет канифоль
Сообщения: 289
Зарегистрирован: Пт мар 20, 2009 12:25:47
Откуда: Ivanovo
Контактная информация:

Re: MIDI контроллер

Сообщение spongebob »

как миди устройство его видно во всяких тракторах и виртуал диджеях?
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

Конечно видно, это стандартное миди-устройство в системе. Сам проверял в Virtual DJ, Cubase, FL Studio. Остальные программы не ставил.
Иначе зачем бы оно было надо, если с прогами не работало?
spongebob
Грызет канифоль
Сообщения: 289
Зарегистрирован: Пт мар 20, 2009 12:25:47
Откуда: Ivanovo
Контактная информация:

Re: MIDI контроллер

Сообщение spongebob »

А на дескриптор USB можно взглянуть? :)
У меня в планах есть проект один, который на уже готовом мидибоксе не реализовать, 12 канальный микшер - больше 100 переменников и немного кнопок. Вот хотел на МК с аппаратным USB реализовать.
кирилл555
Встал на лапы
Сообщения: 101
Зарегистрирован: Вс сен 18, 2011 17:31:19

Re: MIDI контроллер

Сообщение кирилл555 »

решил создать миди контроллер на 33 кнопки, 17 переменных резисторов, 2 джога - энкодера.выглядит примерно так:
12.png
помогите плиизз составить схему, прошивку потом сам найду сейчас схема оч нужна. буду очень и очень благодарен за ответы!!!
[url=http://infobar.hsdn.org/][img]http://static.hsdn.org/infobar/350x20.gif[/img][/url]
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

spongebob писал(а):А на дескриптор USB можно взглянуть? :)

Конечно можно, я выложил исходники несколькими сообщениями ранее.

кирилл555 в вашем случае возможно лучше всего собирать вот этот вариант: http://www.ucapps.de/midibox64.html (до 64 кнопок, до 64 переменников) но легко не будет :)
кирилл555
Встал на лапы
Сообщения: 101
Зарегистрирован: Вс сен 18, 2011 17:31:19

Re: MIDI контроллер

Сообщение кирилл555 »

а можно сделать, чтобы на дисплей выводилась информация из виртуала? допустим количество бпм и.т.д.
[url=http://infobar.hsdn.org/][img]http://static.hsdn.org/infobar/350x20.gif[/img][/url]
Аватара пользователя
Avarges
Вымогатель припоя
Сообщения: 512
Зарегистрирован: Вт дек 22, 2009 02:24:50
Контактная информация:

Re: MIDI контроллер

Сообщение Avarges »

Здесь вопрос в том, отдаёт ли Virtual DJ по МИДИ эту информацию или нет.
Ответить

Вернуться в «Интеграция с ПК»