Форум программистов, компьютерный форум, киберфорум
Электроника и радиотехника
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/18: Рейтинг темы: голосов - 18, средняя оценка - 4.50
 Аватар для Serega_96
24 / 24 / 3
Регистрация: 22.11.2011
Сообщений: 290

Некорректные сообщения с конвертора USB/UART-TTL/MIDI

02.09.2015, 22:42. Показов 4028. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, хочу собрать свой миди контроллер который будет работать посредством MIDI кабеля НЕ USB. Есть преобразователь USB-TTL на схеме PL2303HX из него я посылаю команды в аудио карту по MIDI. Карта видит что приходят MIDI сообщения, но они передаются не корректно, почти всегда приходят другие или искаженные сообщения.

На фото видно что при отправке 0x90 0x3C 0x7F передается команда "Key Aftertouch", но на самом деле это команда нажатия определенной ноты "Note On". Зато всегда правильно срабатывает команда 0xFF которая вызывает системный сброс "System reset".

Настройки COM порта 31250 и 8-N-1

Собственно подскажите в чем проблема, почему передаются не корректные данные? в USB-TTL конвертере? не возможность поддерживать скорость 31250? наводки? маленький буфер? я не правильно формирую и передаю команды?
Миниатюры
Некорректные сообщения с конвертора USB/UART-TTL/MIDI  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.09.2015, 22:42
Ответы с готовыми решениями:

Драйверы конвертора интерфейсов USB/UART на FT232BM
сварганил я переходник usb-com на ft232bl с инверторами 74ас00.А как запустить не знаю пока у меня не получается.Где взять и загрузить...

Универсальный USB UART TTL FTDI
Понадобился UART адаптер. Нашел кабель от старого телефона, нашел распайку...

драйвер для USB TO I2C IIC UART TTL Adapter
купил я вот такую хреньку http://www.ebay.som/itm/160914896490?ss ... 1439.l2649 хренька пришла, вроде даже включилась. пытаюсь скачать...

15
 Аватар для raxper
10236 / 6614 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
03.09.2015, 07:41
USB-TTL на схеме PL2303HX из него я посылаю команды в аудио карту по MIDI
у вас аудиокарта с MIDI входом TTL? Мне просто интересно как это UART TTL на выходе преобразователя USB/UART TTL воспринимается аудиокартой, либо вы забыли упомянуть о чем то промежуточном.

свой миди контроллер
на базе чего, одного лишь конвертора USB/UART?

Настройки COM порта 31250 и 8-N-1
это нестандартная скорость ни для ОС Windows (для драйвера PL-xx уж точно), ни для конвертора. 38400 ближайшая.

На фото видно что при отправке 0x90 0x3C 0x7F передается команда "Key Aftertouch"
на скриншоте видно, что вы их набрали в HEX в неком мониторе порта, но не видно, что реально уходит.

Запустите PortMon и дамп обмена в HEX отображении с момента инициализации в экспорте в TXT-файл на форум. Так мы реально увидим, что кому-куда-откуда и с какими параметрами. 31250 - первый баг.

p.s.: у меня еще есть утилита MIDI ридера на WinAPI, по крайней мере когда был в наличии midi-контроллер, его ловило.
1
 Аватар для Serega_96
24 / 24 / 3
Регистрация: 22.11.2011
Сообщений: 290
03.09.2015, 08:55  [ТС]
raxp, в аудиокарте есть обычный midi вход на din-5 коннекторе.

Прошу прощения забыл уточнить что на усб ттл конвертере это просто тесты, вообще хочу сделать потом на ave.

Спецификация миди говорит что миди порт это тот же uart только на скорости 31250 и с настройкой 8-N-1
0
 Аватар для raxper
10236 / 6614 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
03.09.2015, 11:12
Лучший ответ Сообщение было отмечено raxp как решение

Решение

...говорит, не возражаю в части последовательного интерфейса. Только до последнего предполагал, что все же у вас после конвертора есть отдельный МК и токовый драйвер, которым вы рулите и о котором умолчали. Вы ведь внимательно спецификацию прочитали и должны быть в курсе, что MIDI физически - токовый интерфейс, по сути токовая петля ИРПС. А если вы туда гоните чистый TTL напрямую с конвертора USB/UART TTL, то уровни подсаживаются. UART TTL <> ИРПС. Поэтому:
миди порт это тот же uart
утверждение неверно.

Схемотехника для понимания реализации MIDI выхода и входа:


И повторюсь, не факт: что ваш конвертор и драйвер выдерживают 31250±1%. Не вижу логов с портмонитора или хотя бы осциллографа временных диаграмм. Нет данных для проведения анализа ваших посылок.
1
 Аватар для Serega_96
24 / 24 / 3
Регистрация: 22.11.2011
Сообщений: 290
03.09.2015, 15:26  [ТС]
raxp, Да действительно у меня нет ни какого конвертера, напрямую TTL в MIDI, собрал по этой схеме Спецификацию к сожалению не внимательно изучил.

Цитата Сообщение от raxp Посмотреть сообщение
p.s.: у меня еще есть утилита MIDI ридера на WinAPI, по крайней мере когда был в наличии midi-контроллер, его ловило.
Пользуюсь MIDI-OX и вам советую очень мощный инструмент

С PortMon не разобрался скачал Serial Port Monitor результат на фото.
Миниатюры
Некорректные сообщения с конвертора USB/UART-TTL/MIDI  
0
 Аватар для Serega_96
24 / 24 / 3
Регистрация: 22.11.2011
Сообщений: 290
03.09.2015, 15:33  [ТС]
raxp, И еще подскажите пожалуйста
1.Если мой конвертер не тянет эту скорость, что очень вероятно(в даташите нету 31250) то сможет ли например atmega8 выдавать именно 31250 а не близкие к этому значению скорости?
2.Какую функцию выполняет обвязка в блоке MIDI Sender на вашем изображении, не испорчу ли я миди вход на аудиокарте?
0
 Аватар для raxper
10236 / 6614 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
03.09.2015, 15:38
собрал по этой схеме
по ходу темы выясняются все более интересные подробности. Т.е. контроллер все таки есть. Для таких партизан показан терморектальный анализ

Оки, принимается с оговоркой необходимости контроля уровней нуля и единицы тестером на нагрузочном сопротивлении.

Пользуюсь MIDI-OX и вам советую очень мощный инструмент
не вижу необходимости забивать гвозди микроскопом.

С PortMon не разобрался скачал Serial Port Monitor результат на фото.
придется разобраться. Фото - качество никакое. Да и лог с SMP не показывает ни настроек порта, ни скорости. Жду подробного дампа с порта с момента инициализации.

1.Если мой конвертер не тянет эту скорость, что очень вероятно(в даташите нету 31250) то сможет ли например atmega8 выдавать именно 31250 а не близкие к этому значению скорости?
вполне. Софтовой эмуляцией последовательного протокола на МК. Т.е. с верхнего уровня вы шлете команды для МК на нормальной скорости, он их интерпретирует и формирует пакет данных MIDI ножкодрыгательством на заданной скорости.

2.Какую функцию выполняет обвязка в блоке MIDI Sender на вашем изображении, не испорчу ли я миди вход на аудиокарте?
повторитель сигнала и усилитель на нагрузку. На приемном конце стоит опторазвязка (оптрон), т.е. устройства гальванически не будут связаны. Это собственно и есть защита.
1
 Аватар для Serega_96
24 / 24 / 3
Регистрация: 22.11.2011
Сообщений: 290
03.09.2015, 16:02  [ТС]
Цитата Сообщение от raxp Посмотреть сообщение
опторазвязка, т.е. устройства гальванически не будут связаны. Это собственно и есть защита.
Так опторазвязка выполняется на входе устройства то есть в аудиокарте это уже установлено, а на выходе применяются пара транзисторов и горстка резисторов зачем именно они?

Добавлено через 10 минут
raxp, Точно такая же проблема и Win7x64. Скажите какие данные вам нужны, и если можно как их получить, я постараюсь их достать.
0
 Аватар для raxper
10236 / 6614 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
03.09.2015, 16:10

Не по теме:

Пост был скорректирован до вашего ответа, вы прочитали старый вариант.



Точно такая же проблема и Win7x64
это не проблема, проблема в неуказании вами вашей ОС. А поддерживаемые ОС портмонитором указаны на офсайте. Под 64 бит он не пойдет, но ведь есть WMWare как выход.
1
 Аватар для Serega_96
24 / 24 / 3
Регистрация: 22.11.2011
Сообщений: 290
03.09.2015, 16:52  [ТС]
raxp, В общем запустил PortMon из под WIN XP, походу вы были правы автоматически меняется на ближайшую доступную скорость, с 322-ой строчки лога, все что перед этим это автоматическое открытие порта при запуске Realterm'а на скорости 57600

Log: http://www.ex.ua/570708976135
1
 Аватар для raxper
10236 / 6614 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
03.09.2015, 17:02
Лучший ответ Сообщение было отмечено Serega_96 как решение

Решение

Значит придется эмулировать пакеты отдельным контроллером, причем софт-UART.

p.s.: вложение можно загрузить на форум в расширенном редакторе поста кнопкой скрепочки. Недоступно.
1
 Аватар для Serega_96
24 / 24 / 3
Регистрация: 22.11.2011
Сообщений: 290
03.09.2015, 17:09  [ТС]
raxp, скажите пожалуйста что вы имеете ввиду под "софт-UART". Мне будет не достаточно настроить UART в МК и начать слать команды, или он опять таки не будет поддерживать эти настройки и скорость?
0
 Аватар для raxper
10236 / 6614 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
03.09.2015, 17:34
...ножкодрыгательство.

Мне будет не достаточно настроить UART в МК
достаточно. Но вот вопрос - а чем слать команды с ПК будете через ваш конвертор USB/UART? UART-а нужно будет два: один для пересылки команд на стандартной скорости с ПК через конвертор, второй - для выдачи нестандарта на токовый драйвер MIDI.
1
 Аватар для Serega_96
24 / 24 / 3
Регистрация: 22.11.2011
Сообщений: 290
03.09.2015, 17:43  [ТС]
raxp, вы меня наверно не правильно поняли, в конечном устройстве я хочу просто с мк передавать команды в MIDI, тоесть не будет задействован ни ПК ни USB TTL конвертер. Конвертер я хотел использовать для того что бы понять какие команды за что отвечают и как они формируются, а дальше уже зашить все в МК.

Большое спасибо за помощь в определении причины не корректной работы!
0
 Аватар для raxper
10236 / 6614 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
03.09.2015, 18:29
с мк передавать команды в MIDI, тоесть не будет задействован ни ПК ни USB TTL конвертер
тогда вопросов не имею.
1
 Аватар для Serega_96
24 / 24 / 3
Регистрация: 22.11.2011
Сообщений: 290
08.09.2015, 19:37  [ТС]
Если кому интересно рассказываю про подводные камни на которые наткнулся. Проблема была в USB-TTL конвертере точнее в не возможности поддерживать 31250 скорость. Зашил atmega8 с теми же midi командами как в 1 сообщении сначала получал на midi входе мусор. Позже выявил что с завода atmega8 на внутреннем тактовом генераторе 1Mhz перешил на 8Mhz и все начало работать как надо. На фото результат полученных правильных сообщений.

C
1
2
3
4
5
6
7
8
9
10
11
      uart_putc(0x90); //вкл ноту
      uart_putc(0x3C); //номер ноты
      uart_putc(0x7F); //интенсивность нажатия
      
      delay_ms(1000);
      
      uart_putc(0x80); //выкл ноту
      uart_putc(0x3C); //номер выключаемой ноты
      uart_putc(0x7F); //интенсивность (при выключении по сути можно отправлять и 0 разницы нет)
      
      delay_ms(1000);
P.S. опять таки большое спасибо raxp, за то что показал где искать проблему.
Миниатюры
Некорректные сообщения с конвертора USB/UART-TTL/MIDI  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.09.2015, 19:37
Помогаю со студенческими работами здесь

UART ttl в качестве диагностической POST карты
Всем привет! Наткнулся на видео - V65sMzGmnf0 где с помощью usb-ttl переходничка с мульта (KB9012) с ног 30/31 (сигналы E51TXD/E51RXD)...

Сообщения для 2 UART выводятся в 1 UART, STM32F103C8T6
Почему может неправильно работать uart? Подключил 1 uart к пк через usb/uart переходник, а второй к gsm модему. В первый уарт вывожу инфу...

D-Sun USB to TTL
Здравствуйте! Как заставить работать переходник D-Sun USB to TTL с платой Nucleo-f411re ? Драйвер от Prolific на ноутбук я установил и...

Подключение GPS к USB-TTL
Подключаю GPS (Gms-g6a) к USB-TTL модулю типа такого На выходе TX GPS данные идут (осцилла нету, но вольтметр прыгает от 1в до 2.7в), в...

USB-TTL и RS232 + K-Line
Собрал я адаптер по такой вот схемке http://picsee.net/uptood/2016-03-24/a6c0a631b5c2.png и у меня возник вопрос: у меня...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru