Midi USB конвертер

Статус: Offline
Реєстрація: 04.03.2009
Повідом.: 122
Midi USB конвертер

Выкладываю простейшую и дешевую реализацию конвертера Midi USB.

Для этого нам понадобится USB-UART конвертер с поддержкой нестандартных скоростей. А именно 31250 бод/сек.

Лично я выбрал для этих целей чип CP2102:

1182256308.jpg


врезультате получается эдакое (у меня чуточку по-другому):

0J358.80.jpg


Пол дела мы сделали.

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

pc_midi.gif


Так как нам нужен только сигнал с миди клавиатуры или контроллера, вывод номер 25 на CP2102 мы замыкаем на pin15 разъема gameport, gnd(землю) на pin5 и Vcc(+) на pin8 для питания переходника на gameport от USB.

Если у кого завалялся такой переходник - просто припаивайте нужные провода исходя из вышеописанного.

Адаптер готов.

Тільки зареєстровані користувачі бачать весь контент у цьому розділі
- здесь скачиваем драйверы VCP(Virtual Com Port) и устанавливаем их.

Далее подключаем собранное устройство(в Диспетчере устройств должен появится раздел Com порты и там номер Вашего виртуального серийного порта - у меня, например COM3) и запускаем утилиту конфигурации BAUDRATE:
Тільки зареєстровані користувачі бачать весь контент у цьому розділі


siconfig1.png


Двойной щечлек на строку со скоростью 38400. В открывшемся окне вписываем число 31250 и ОК. Далее - кнопочку Set Configuration.

Вот теперь можно работать с написанной мною программой-конвертором.
Программа требует .Net Framework 2.0 и Visual C++ Redistributable 2005 (
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
) и если в Висте или Семерке выскочит ошибка - установить это
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
.


Также нужно установить Midi Yoke(бесплатные виртуальные миди порты) -
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
.

Скачиваем мою программу:
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
или
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
или
Тільки зареєстровані користувачі бачать весь контент у цьому розділі
.

В ней нажимаем Refresh, далее выбираем СОМ и миди порт. Если у вас преобразователь предназначен для клавиши YAMAHA с выходом для СОМ порта, можно брать обычный серийный порт и в программе ставить галочку Baud Rate 38400.

Нажимаем Start, видим как мигает индикатор Running и наслаждаемся. При сворачивании сворачивается в трэй. Вызывается оттуда контекстным меню или двойным щелчком.

vopros-otvet1990@****** мой е-мэйл.

Исходный код для Visual C++ могу выслать на почту кому нужно.
 
Останнє редагування:
хм, интерестно, но зачем??? такие переходники уже давно продаються и цена не дорогая))) понимаю, для себя можно сделать, чисто для общего развития, но те, которые продаються, у них и скорость побыстрее.
 
Скорость у них одна - 31250 бод в сек. А вот цена таких переходников в Харькове - 300 грн! Я сам узнавал. Да, раньше 150 грн было.

В то время как чип СР2102 стоит на радиорынке 25 грн. В сумме всё обойдется около 50 грн.))
 
Я в какомто Украинском инет магазине видел за 70 гривен)))
 
Дело в том, что в интернет магазинах цена не актуальная. Просто мне такой адаптер был жизненно необходим и я искал все возможные ДЕШЕВЫЕ варианты.
 
А в нашей деревне вообще ничего нет... CP2102 тоже нет. Есть у меня кабель com-usb на PL2303 - может из него чего-нить выйдет...Только пока не нашел, можно ли битрейт 31250 для него выставить
 
Ну, вот ссылочка - попробуй разобраться
Тільки зареєстровані користувачі бачать весь контент у цьому розділі

тут нужно стандартную скорость поменять на 31250 бод. Если получится - проверь виндовым терминалом для работы с ком портом - замкни на переходнике TxD и RxD и в терминале напиши чего-нить - должно возвратится то, что ты написал.
 
Обязательно. Надо только сообразить, как потом с этого ком-порта потом данные в миди перебросить. Где-то я что-то пропустил...
Кстати, как вариант: midi keyboard -> midi-rs232 converter -> rs232-usb converter . Наверняка многие задумывались над таким вариантом, ибо не всегда найдется CP2102 или FT232. Последним звеном может служить кабель ком-юсб (в комповых магазинах найти можно, только вопрос с битрейтом решить надо будет). Насчет midi-rs232 - в поисковиках есть, а можно просто преобразователь ttl->rs232, если у нас миди-клава, цепляющаяся к game-порту. Сам еще не успел попробовать.
 
Останнє редагування:
Обязательно. Надо только сообразить, как потом с этого ком-порта потом данные в миди перебросить. Где-то я что-то пропустил...
Кстати, как вариант: midi keyboard -> midi-rs232 converter -> rs232-usb converter . Наверняка многие задумывались над таким вариантом, ибо не всегда найдется CP2102 или FT232. Последним звеном может служить кабель ком-юсб (в комповых магазинах найти можно, только вопрос с битрейтом решить надо будет). Насчет midi-rs232 - в поисковиках есть, а можно просто преобразователь ttl->rs232, если у нас миди-клава, цепляющаяся к game-порту. Сам еще не успел попробовать.

RS232 не возможно подключить к миди, т.к. его скорость 38400 бод, а миди 31250. для этого нужно собирать контроллер и прошивать его, написав специально для него прогу. Мороки больше.
Мой способ - самый простой и эффективный. А перебросить данные из порта в миди порт можног с помощью моей программы. я о ней в этой теме и написал.
заказать СР2102 можно без проблем и в инэте.
 
RS232 не возможно подключить к миди, т.к. его скорость 38400 бод, а миди 31250. для этого нужно собирать контроллер и прошивать его, написав специально для него прогу. Мороки больше.
Мой способ - самый простой и эффективный. А перебросить данные из порта в миди порт можног с помощью моей программы. я о ней в этой теме и написал.
заказать СР2102 можно без проблем и в инэте.
Насчет скорости - это да. Я имею в виду - подцепить миди к кабелю rs232-usb (естественно придется согласовать уровни миди и rs232). Главное, чтобы можно было сменить потом скорость. Кабель на CP2102 это позволит, насчет кабеля на PL2303 - буду пробовать. А Ваша программа будет с PL2303 работать? А то я нашел один драйверок от Корга, вроде как раз под это заточен.
 
программа будет работать с любым преобразователем, способным на скорость 31250 бод. А корговский драйвер - другое. это если на клавишах есть выход на ком порт - похож на гнездо для компьютерной мышти или клавиатуры. с него выходит сигнал на скорости 38400 бод - стандартная скорость.
Для PL2303 нужно в реестре править параметр. я это в каком-то сообщении выше писал... создайте тему на форуме в разделе программирование и вставьте текст из вот этого документа
Тільки зареєстровані користувачі бачать весь контент у цьому розділі

они вам помогут.
 
Насчет PL2303 - документ, Вами указанный, у меня уже есть. Почитал, вроде ничего непонятного нет. Времени пока не было проверить. А насчет драйверов - таки да, у корга для этого спец. порт... Правда есть еще роландовские. У них в ридмишках я ничего про наличие отдельного выхода на ком порт не нашел. Типа подключил и юзай. Правда, я не уверен, что они нормально съедят скорость в 31250. Конечно, есть Ваша прога. Единственно - "Программа требует Framework 2.0 и Visual C++ Redistributable 2005". Просто не люблю лишний софт ставить. Но, похоже, придется...

То есть цепь такая: миди-устройство <-> преобразователь (миди)ком-юсб <-> драйвер преобразователя(тут мы подправим скорость) <-> прога, которая с ком-порта перебросит данные на миди. Вот именно последнее звено меня сейчас интересует. Какие проги тут можно использовать? Есть у кого результаты экспериментов?
 
Останнє редагування:
Выкладываю прогу новой версии (предыдущая у вас не запустится, я это знаю )) ). В архиве исходник, пакет C++ Redistr, вообщем все, что нужно для работы с ней))

Также добавил новую функцию.

Тільки зареєстровані користувачі бачать весь контент у цьому розділі


Насчет PL2303 - документ, Вами указанный, у меня уже есть. Почитал, вроде ничего непонятного нет. Времени пока не было проверить. А насчет драйверов - таки да, у корга для этого спец. порт... Правда есть еще роландовские. У них в ридмишках я ничего про наличие отдельного выхода на ком порт не нашел. Типа подключил и юзай. Правда, я не уверен, что они нормально съедят скорость в 31250. Конечно, есть Ваша прога. Единственно - "Программа требует Framework 2.0 и Visual C++ Redistributable 2005". Просто не люблю лишний софт ставить. Но, похоже, придется...

То есть цепь такая: миди-устройство <-> преобразователь (миди)ком-юсб <-> драйвер преобразователя(тут мы подправим скорость) <-> прога, которая с ком-порта перебросит данные на миди. Вот именно последнее звено меня сейчас интересует. Какие проги тут можно использовать? Есть у кого результаты экспериментов?

Цепь такая: миди устройство -> адаптер миди-геймпорт -> преобразователь юсб-миди -> драйвер виртуального ком порта -> программа для переброски данных (ЭТО НАПИСАННАЯ МНОЮ ПРОГРАММА, именно она это все и делает!!!!!).

Я о ней и писал, это и есть последнее звено. выше в моем посте ссылка на новую версию проги.
 
Выкладываю прогу новой версии (предыдущая у вас не запустится, я это знаю )) ). В архиве исходник, пакет C++ Redistr, вообщем все, что нужно для работы с ней))...

... программа для переброски данных (ЭТО НАПИСАННАЯ МНОЮ ПРОГРАММА, именно она это все и делает!!!!!).

Я о ней и писал, это и есть последнее звено. выше в моем посте ссылка на новую версию проги.

Естественно, я попробую Вашу программу. А, например, ямаховский CBX драйвер у Вас не пошел? Вон автор мидибокса, например, его пользовал...
 
Он расчитан на выход с ямахи под стандартную скорость ком порта 38400 бод. Другую скорость драйвер не понимает. Он настроит порт на частоту 38400 бод и все.
 
ни чего ни могу понять! зачем Gameport если это вроде как конвертер Midi USB.
или это конвертер Gameport в USB а затем в Midi и все это на разных скоростях передачи данных!

роблема в том что Gameport уже давно не размещают на мат. платах. что конечно странно вот к примеру разработчики с фанатизмом тыкают на плату всё что только можно представить кроме того что нужно!
 
RS232 не возможно подключить к миди, т.к. его скорость 38400 бод,
В старые, добрые времена начала 90х, когда шина ISA была популярна, а USB еще не было даже в проекте, MIDI подключался через плату RS232 с поменянным кварцем :)
 
Снял с полки свой алесис, всплакнул, вспомнив молодость, проклятые пиндосы еще хз когда поставили
переключатель: 38,4/31,25/Mac/MIDI. Ну и драйверов в комплекте к мозгам дали.
 
Конвертер Midi-Gameport - просто преобразует изменения тока в изменение напряжения, т.е. логические 0 (0...2В) и 1 (3...5В). Можно просто примудрить туда микруху MAX232. Эта микросхема в шнурах для мобилок используется. В инэте схем море.
 
Назад
Зверху Знизу