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

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

А может в самом деле таких же мелких кнопочек наставить на саму плату, железячку правда сверлить без станка намучаешься.

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

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

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

Подключение ЖКИ:

Подключение энкодера:

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

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

Подключение ЖКИ:

Подключение энкодера:

Прошивка, с которой все эти кнопки и крутилки работают уже есть, но пока на LCD выводится всякая ерунда. И кнопки, подключенные как показано к мультиплексору работают наоборот. Также есть бутлоадер (не через сусекс, а через V-USB), так что дописывать и обновлять прошивку легко.
Попробовал в Virtual DJ энкодер как jog wheel использовать (для скрэтча), работает
Последний раз редактировалось Avarges Пт окт 14, 2011 22:48:03, всего редактировалось 1 раз.
- Avarges
- Вымогатель припоя
- Сообщения: 512
- Зарегистрирован: Вт дек 22, 2009 02:24:50
- Контактная информация:
Re: MIDI контроллер
Прошивка рабочая, без бутлоадера, но влезает не только в атмегу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.

Информация на дисплее:
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 скачиваний
Re: MIDI контроллер
Avarges
как понимаю, по данной схеме можно подключить 5 CD4051BCN и будет 25 переменников, 15 кнопaк? A есть разница между CD4051 и CD4051BCN?
как понимаю, по данной схеме можно подключить 5 CD4051BCN и будет 25 переменников, 15 кнопaк? A есть разница между CD4051 и CD4051BCN?
- Avarges
- Вымогатель припоя
- Сообщения: 512
- Зарегистрирован: Вт дек 22, 2009 02:24:50
- Контактная информация:
Re: MIDI контроллер
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 контроллер
Avarges писал(а):PS. В качестве пищи для ума: никто не пробовал ставить второй каскад мультиплексоров и этим расширять количество кнопок/крутилок до бесконечности, а по сути это можно. 4051 чуть-чуть шумит, но не сильно.
зачем 4051 для кнопок? это мультиплексор всё таки, его для аналога нада юзать. кондёры на питание не забыли? что бы не шумел.
74hc165 - по трём проводам каскадируем много-много штук (у меня 8 было - 64 кнопки)
- Avarges
- Вымогатель припоя
- Сообщения: 512
- Зарегистрирован: Вт дек 22, 2009 02:24:50
- Контактная информация:
Re: MIDI контроллер
4051 вполне можно для кнопок, у меня оставалось 3 свободных ножки, вот и посадил туда кнопки. И программа одним циклом опроса АЦП всё решает, не приходится накручивать. 74HC165 из модуля DIN это от мидибоксеров, нормальное решение тоже, особенно для крупных контроллеров. Но я делал на минимуме корпусов (2 корпуса в схеме). Керамический кондер около мультиплексора забыл, правда. Остальные два есть (С1, С4).
Исходники будут наверное завтра и кондёр дорисую завтра.
В качестве пищи для ума: на атмеге8 в DIP корпусе шесть ножек-выходов АЦП, на смд-варианте атмеги8 выходов АЦП уже восемь.
Что-то хочется хорошее добавить в контроллер, может меню, что-то ещё, чтоб дисплей лучше задействовать. Есть у кого мысли, идеи?
Исходники будут наверное завтра и кондёр дорисую завтра.
В качестве пищи для ума: на атмеге8 в DIP корпусе шесть ножек-выходов АЦП, на смд-варианте атмеги8 выходов АЦП уже восемь.
Что-то хочется хорошее добавить в контроллер, может меню, что-то ещё, чтоб дисплей лучше задействовать. Есть у кого мысли, идеи?
- Avarges
- Вымогатель припоя
- Сообщения: 512
- Зарегистрирован: Вт дек 22, 2009 02:24:50
- Контактная информация:
Re: MIDI контроллер
Выкладываю исходники, о которых у меня постоянно спрашивали. Приклеил.
Так выглядит устройство: перекрасил корпус, нанёс надписи.

Добавил резистор C1 по spongebob'y:

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

Добавил резистор 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 контроллер
Рекомендую вот это переписать:
Я не разобрался почему в си не работает вот так:
str[4]=lci;
и почему не работает вот так:
StrCat(str,buffer); или так:
str = str+buffer;
Поэтому написал тупо влоб.
Код: Выделить всё
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 контроллер
Avarges
Всё забываю спросить, а как в системе определяется данный девайс?
Какие драйвера для него нужны?
Просто виртуальный ком-порт + драйвер ямаха или роланд?
Всё забываю спросить, а как в системе определяется данный девайс?
Какие драйвера для него нужны?
Просто виртуальный ком-порт + драйвер ямаха или роланд?
- Avarges
- Вымогатель припоя
- Сообщения: 512
- Зарегистрирован: Вт дек 22, 2009 02:24:50
- Контактная информация:
Re: MIDI контроллер
Определяется, как "DJ CJ MIDI" в категории "Звуковые, видео и игровые устройства" (Windows 7)
Драйвер не нужен, Windows сама ставит HID драйвер.
Драйвер не нужен, Windows сама ставит HID драйвер.
-
spongebob
- Грызет канифоль
- Сообщения: 289
- Зарегистрирован: Пт мар 20, 2009 12:25:47
- Откуда: Ivanovo
- Контактная информация:
Re: MIDI контроллер
как миди устройство его видно во всяких тракторах и виртуал диджеях?
- Avarges
- Вымогатель припоя
- Сообщения: 512
- Зарегистрирован: Вт дек 22, 2009 02:24:50
- Контактная информация:
Re: MIDI контроллер
Конечно видно, это стандартное миди-устройство в системе. Сам проверял в Virtual DJ, Cubase, FL Studio. Остальные программы не ставил.
Иначе зачем бы оно было надо, если с прогами не работало?
Иначе зачем бы оно было надо, если с прогами не работало?
-
spongebob
- Грызет канифоль
- Сообщения: 289
- Зарегистрирован: Пт мар 20, 2009 12:25:47
- Откуда: Ivanovo
- Контактная информация:
Re: MIDI контроллер
А на дескриптор USB можно взглянуть? 
У меня в планах есть проект один, который на уже готовом мидибоксе не реализовать, 12 канальный микшер - больше 100 переменников и немного кнопок. Вот хотел на МК с аппаратным USB реализовать.
У меня в планах есть проект один, который на уже готовом мидибоксе не реализовать, 12 канальный микшер - больше 100 переменников и немного кнопок. Вот хотел на МК с аппаратным USB реализовать.
Re: MIDI контроллер
решил создать миди контроллер на 33 кнопки, 17 переменных резисторов, 2 джога - энкодера.выглядит примерно так: помогите плиизз составить схему, прошивку потом сам найду сейчас схема оч нужна. буду очень и очень благодарен за ответы!!!
[url=http://infobar.hsdn.org/][img]http://static.hsdn.org/infobar/350x20.gif[/img][/url]
- Avarges
- Вымогатель припоя
- Сообщения: 512
- Зарегистрирован: Вт дек 22, 2009 02:24:50
- Контактная информация:
Re: MIDI контроллер
spongebob писал(а):А на дескриптор USB можно взглянуть?
Конечно можно, я выложил исходники несколькими сообщениями ранее.
кирилл555 в вашем случае возможно лучше всего собирать вот этот вариант: http://www.ucapps.de/midibox64.html (до 64 кнопок, до 64 переменников) но легко не будет
Re: MIDI контроллер
а можно сделать, чтобы на дисплей выводилась информация из виртуала? допустим количество бпм и.т.д.
[url=http://infobar.hsdn.org/][img]http://static.hsdn.org/infobar/350x20.gif[/img][/url]
- Avarges
- Вымогатель припоя
- Сообщения: 512
- Зарегистрирован: Вт дек 22, 2009 02:24:50
- Контактная информация:
Re: MIDI контроллер
Здесь вопрос в том, отдаёт ли Virtual DJ по МИДИ эту информацию или нет.