USB переключатель
USB переключатель
Рассматривается потребность в переключателе с не менее чем шестью позициями. В текущей реализации используется плата расширения с интерфейсом ввода/вывода, где каждый вывод соответствует определенному режиму. Данное решение представляется избыточным для данной функциональности.
В качестве альтернативы рассматривается использование микроконтроллера STM32 с портом COM (USB), что представляется более оптимальным вариантом.
Существуют ли другие, более простые варианты реализации данной задачи?
https://img.radiokot.ru/files/161321/me ... 0aohp6.jpg
В качестве альтернативы рассматривается использование микроконтроллера STM32 с портом COM (USB), что представляется более оптимальным вариантом.
Существуют ли другие, более простые варианты реализации данной задачи?
https://img.radiokot.ru/files/161321/me ... 0aohp6.jpg
- Реклама
- Николай_С
- Друг Кота
- Сообщения: 6351
- Зарегистрирован: Вт сен 25, 2012 23:13:41
- Откуда: г.Дзержинск Нижегородской обл.
- Контактная информация:
Re: USB переключатель
[uquote="VIK_SAI",url="/forum/viewtopic.php?p=4749454#p4749454"]Существуют ли другие, более простые варианты реализации данной задачи?[/uquote]кАнЭшнА! USB-хаб называется.
Портов столько, сколько нужно и все полнофункциональные.
Спасение утопающих дело рук самих утопающих.
Re: USB переключатель
4051, 4052
Re: USB переключатель
[uquote="Николай_С",url="/forum/viewtopic.php?p=4749457#p4749457"][uquote="VIK_SAI",url="/forum/viewtopic.php?p=4749454#p4749454"]Существуют ли другие, более простые варианты реализации данной задачи?[/uquote]кАнЭшнА! USB-хаб называется.
Портов столько, сколько нужно и все полнофункциональные.[/uquote]
usb hub ? у меня есть 6 сигналов и мне нужно обрабатывать работу программы в зависимости от поступающего сигнала.
Добавлено after 2 minutes 21 second:
[uquote="u37",url="/forum/viewtopic.php?p=4749459#p4749459"]4051, 4052[/uquote]
мультиплексор, отлично, но как потом отправить все в ком. порт? если это дело связывать с МК то тогда и мультплексор будет лишним. ( в моем случае, если это будет отдельное устройство.
usb hub ? у меня есть 6 сигналов и мне нужно обрабатывать работу программы в зависимости от поступающего сигнала.
Добавлено after 2 minutes 21 second:
[uquote="u37",url="/forum/viewtopic.php?p=4749459#p4749459"]4051, 4052[/uquote]
мультиплексор, отлично, но как потом отправить все в ком. порт? если это дело связывать с МК то тогда и мультплексор будет лишним. ( в моем случае, если это будет отдельное устройство.
Re: USB переключатель
это экстремально растяжимое понятие.VIK_SAI писал(а):более простые варианты
Для одного специалиста просто - сунуть плату расширения в ПК, для другого - применить например, контроллер, способный эмулировать HID устройство, для третьего - применить преобразователь USB-UART и соединить его с ЛЮБЫМ знакомым микроконтроллером.
Точнее сказать невозможно по причине отсутствия инфы о характеристиках обрабатываемых сигналов, о вашей квалификации в харде и софте и т.д.
- Реклама
- vlasovzloy
- Друг Кота
- Сообщения: 20070
- Зарегистрирован: Чт янв 26, 2012 16:44:29
- Откуда: Таксимо
Re: USB переключатель
Fst3125 для скоростей юсбишных.
Мои поставщики запчастей с отличной репутацией
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
texnomag.ru
radioremont.com
pl-1.org
4ip.info
elitan.ru
- Николай_С
- Друг Кота
- Сообщения: 6351
- Зарегистрирован: Вт сен 25, 2012 23:13:41
- Откуда: г.Дзержинск Нижегородской обл.
- Контактная информация:
Re: USB переключатель
[uquote="VIK_SAI",url="/forum/viewtopic.php?p=4749470#p4749470"]у меня есть 6 сигналов и мне нужно обрабатывать работу программы в зависимости от поступающего сигнала.[/uquote]Вот и начните с написания технического задания (ТЗ). Опишите свои сигналы и что нужно получить в результате. Пока пишите ТЗ, сами поймёте как его реализовать.
Спасение утопающих дело рук самих утопающих.
- linux_rulezz
- Вымогатель припоя
- Сообщения: 611
- Зарегистрирован: Пн сен 15, 2025 08:43:23
- Откуда: Маленький СССР посреди шариатской республики
Re: USB переключатель
Вот посмотрел я на картинку, и вообще ничего не понял!
Зачем вообще что-то переключать, если можно взять STM32 с достаточным количеством USART'ов. Или что нужно?
У STM32 8 конечных точек. Одна - нулевая - используется в служебных целях. Следовательно, на оставшихся (двунаправленных) можно реализовать 7 CDC устройств. При помощи udev-скрипта по полю iInterface они отлично различаются - по симлинкам в /dev/
На моем гитхабе можно посмотреть, как 7 CDC реализовать. В планах у меня "мультиинтерфейсную" плату сделать (232, 422 или SSI, 485, I2C, SPI и CAN), с гальваноразвязкой на все интерфейсы. Печатные платы получил достаточно давно, все некогда ею заняться.
P.S. А еще более странным является цеплять к STM32 преобразователь UART-USB, когда на борту есть готовый USB!
Зачем вообще что-то переключать, если можно взять STM32 с достаточным количеством USART'ов. Или что нужно?
У STM32 8 конечных точек. Одна - нулевая - используется в служебных целях. Следовательно, на оставшихся (двунаправленных) можно реализовать 7 CDC устройств. При помощи udev-скрипта по полю iInterface они отлично различаются - по симлинкам в /dev/
На моем гитхабе можно посмотреть, как 7 CDC реализовать. В планах у меня "мультиинтерфейсную" плату сделать (232, 422 или SSI, 485, I2C, SPI и CAN), с гальваноразвязкой на все интерфейсы. Печатные платы получил достаточно давно, все некогда ею заняться.
P.S. А еще более странным является цеплять к STM32 преобразователь UART-USB, когда на борту есть готовый USB!
Windows must die!
Re: USB переключатель
[uquote="linux_rulezz",url="/forum/viewtopic.php?p=4749577#p4749577"]Вот посмотрел я на картинку, и вообще ничего не понял![/uquote]Видимо вы маловато выпили просветляющего отвара из мухоморов. Вон - другие товарищи уже угадывают. Значит - приняли просветляющий отвар.
Некоторые даже некие тайные заклинания уже произносят:
[uquote="u37",url="/forum/viewtopic.php?p=4749459#p4749459"]4051, 4052[/uquote]
[uquote="linux_rulezz",url="/forum/viewtopic.php?p=4749577#p4749577"]Зачем вообще что-то переключать, если можно взять STM32 с достаточным количеством USART'ов. Или что нужно?[/uquote]Господа, спокойствие! не волнуемся!
Скоро вернутся из отпусков прорицатели и гадалки. Они заколят жертвенного баранчика, его кровью умилостивят духов форума, достанут из него печень и по её виду предскажут: чего именно хочет ТС? и что за чудный зверь нацарапан на его наскальном рисунке?

Некоторые даже некие тайные заклинания уже произносят:
[uquote="u37",url="/forum/viewtopic.php?p=4749459#p4749459"]4051, 4052[/uquote]
[uquote="linux_rulezz",url="/forum/viewtopic.php?p=4749577#p4749577"]Зачем вообще что-то переключать, если можно взять STM32 с достаточным количеством USART'ов. Или что нужно?[/uquote]Господа, спокойствие! не волнуемся!
Скоро вернутся из отпусков прорицатели и гадалки. Они заколят жертвенного баранчика, его кровью умилостивят духов форума, достанут из него печень и по её виду предскажут: чего именно хочет ТС? и что за чудный зверь нацарапан на его наскальном рисунке?
Re: USB переключатель
VIK_SAI
FT245 имеет 8 входов/выходов DATA и еще несколько вспомогательных
FT245 имеет 8 входов/выходов DATA и еще несколько вспомогательных
>(*.*)<
Котище огромно, ушасто, пушисто, глазасто, зубасто, колючелапо и мявай. (c)
Котище огромно, ушасто, пушисто, глазасто, зубасто, колючелапо и мявай. (c)
- ПростоНуб
- Собутыльник Кота
- Сообщения: 2723
- Зарегистрирован: Пт сен 07, 2018 20:20:02
- Откуда: деревня в Тульской губернии
Re: USB переключатель
[uquote="VIK_SAI",url="/forum/viewtopic.php?p=4749454#p4749454"]В качестве альтернативы рассматривается использование микроконтроллера STM32 с портом COM (USB), что представляется более оптимальным вариантом.[/uquote]
Тогда уже скорее CH32V003F4P6. Там USB, конечно, специфичный, но вполне работоспособный.
Тогда уже скорее CH32V003F4P6. Там USB, конечно, специфичный, но вполне работоспособный.
Re: USB переключатель
[uquote="u37",url="/forum/viewtopic.php?p=4749459#p4749459"]4051, 4052[/uquote]
в чем суть применения мультиплексора в данной схеме?
Добавлено after 23 minutes 37 seconds:
[uquote="VIK_SAI",url="/forum/viewtopic.php?p=4750055#p4750055"][uquote="u37",url="/forum/viewtopic.php?p=4749459#p4749459"]4051, 4052[/uquote]
в чем суть применения мультиплексора в данной схеме?[/uquote]
на данный момент без управления мк не вижу логики или есть то о чем я не подумал ?

url=https://img.radiokot.ru/files/161321/medium/3um95ckix7.jpg]
[/url]
на первой картинке я так вижу применение 4051, но мне тогда еще нужен будет порт usb.
На данный момент самый логичный вариант ft245, но может есть еще актуальные варианты ?
в чем суть применения мультиплексора в данной схеме?
Добавлено after 23 minutes 37 seconds:
[uquote="VIK_SAI",url="/forum/viewtopic.php?p=4750055#p4750055"][uquote="u37",url="/forum/viewtopic.php?p=4749459#p4749459"]4051, 4052[/uquote]
в чем суть применения мультиплексора в данной схеме?[/uquote]
на данный момент без управления мк не вижу логики или есть то о чем я не подумал ?
url=https://img.radiokot.ru/files/161321/medium/3um95ckix7.jpg]
на первой картинке я так вижу применение 4051, но мне тогда еще нужен будет порт usb.
На данный момент самый логичный вариант ft245, но может есть еще актуальные варианты ?
Re: USB переключатель
.....
Если вам так хочется именно UART, то:
4052 выборка AB подключается к контактам RTS и DTR, выходы переключателей COM на RI, DSR или DCD.
Входы 4052 на ваши 8 источников сигнала.
Чтобы вычитать два источника, вначале выставляется 0-1-2-3 на сигналы RTS+DTR, потом считывается регистр RI-DSR-DCD и оттуда берутся 2 бита. Естественно, из самого device UART должны выходить TTL уровни, а не RS232.
Если вам так хочется именно UART, то:
4052 выборка AB подключается к контактам RTS и DTR, выходы переключателей COM на RI, DSR или DCD.
Входы 4052 на ваши 8 источников сигнала.
Чтобы вычитать два источника, вначале выставляется 0-1-2-3 на сигналы RTS+DTR, потом считывается регистр RI-DSR-DCD и оттуда берутся 2 бита. Естественно, из самого device UART должны выходить TTL уровни, а не RS232.
Re: USB переключатель
[uquote="u37",url="/forum/viewtopic.php?p=4750092#p4750092"].....
Если вам так хочется именно UART, то:
4052 выборка AB подключается к контактам RTS и DTR, выходы переключателей COM на RI, DSR или DCD.
Входы 4052 на ваши 8 источников сигнала.
Чтобы вычитать два источника, вначале выставляется 0-1-2-3 на сигналы RTS+DTR, потом считывается регистр RI-DSR-DCD и оттуда берутся 2 бита. Естественно, из самого device UART должны выходить TTL уровни, а не RS232.[/uquote]
мне на выходе нужен usb
виртуальный компорт который будет только лишь получать информацию о состоянии.
Если вам так хочется именно UART, то:
4052 выборка AB подключается к контактам RTS и DTR, выходы переключателей COM на RI, DSR или DCD.
Входы 4052 на ваши 8 источников сигнала.
Чтобы вычитать два источника, вначале выставляется 0-1-2-3 на сигналы RTS+DTR, потом считывается регистр RI-DSR-DCD и оттуда берутся 2 бита. Естественно, из самого device UART должны выходить TTL уровни, а не RS232.[/uquote]
мне на выходе нужен usb
Re: USB переключатель
1. Вам уже написали, сделайте нормальное ТЗ. Я тоже не с первого раза понял что вам надо.
2. Без микроконтроллера здесь не обойтись. Он позволит снимать аналоговую инфу с любого из источников. В нужном для вас порядке и передавать в нужном для вас виде. Главное чтобы хватило скорости. Должно получиться что-то типа многоканального USB осциллографа.
2. Без микроконтроллера здесь не обойтись. Он позволит снимать аналоговую инфу с любого из источников. В нужном для вас порядке и передавать в нужном для вас виде. Главное чтобы хватило скорости. Должно получиться что-то типа многоканального USB осциллографа.
Учиться, учиться, ...
Re: USB переключатель
я кажется придумал, к555ир9, осталось придумать как эту имс привязать к например ft232.
- linux_rulezz
- Вымогатель припоя
- Сообщения: 611
- Зарегистрирован: Пн сен 15, 2025 08:43:23
- Откуда: Маленький СССР посреди шариатской республики
Re: USB переключатель
У 40-рублевого STM32F103C6T6 (с этим и C4 справится — "голый" CDC на семь устройств чуть больше пяти килобайт; но почему-то они дороже) достаточно аналоговых входов, чтобы не ставить внешний мультиплексор. Между прочим, мультиплексор тоже далеко не нулевой импеданс имеет… Так, для точного чтения температур с платиновых терморезисторов, мне пришлось использовать внешний АЦП с двумя прецизионными источниками тока и три компаратора; хитрый алгоритм измерений (нашел в статье одного китайца) позволил почти до нуля свести влияние мультиплексоров.
Ну, а пока ТЗ не озвучено, вообще непонятно, что нужно. Может, там вообще двухбитного АЦП хватит?
А протокол - какой удобно. И, опять же, если нет нужды в одном приложении иметь все источники, можно по интерфейсу USB на каждый сделать. Открыл, скажем, /dev/analog5 - и читаешь шестой вход…
Ну, а пока ТЗ не озвучено, вообще непонятно, что нужно. Может, там вообще двухбитного АЦП хватит?
А протокол - какой удобно. И, опять же, если нет нужды в одном приложении иметь все источники, можно по интерфейсу USB на каждый сделать. Открыл, скажем, /dev/analog5 - и читаешь шестой вход…
Windows must die!
- ПростоНуб
- Собутыльник Кота
- Сообщения: 2723
- Зарегистрирован: Пт сен 07, 2018 20:20:02
- Откуда: деревня в Тульской губернии
Re: USB переключатель
[uquote="VIK_SAI",url="/forum/viewtopic.php?p=4750240#p4750240"]я кажется придумал, к555ир9, осталось придумать как эту имс привязать к например ft232.[/uquote]
CH32V003F4P6 обойдется на порядок дешевле и уже имеет достаточно выводов для этой задачи.
Ну да, несколько больше приключений с USB, но всё решаемо https://habr.com/ru/articles/852908/
Строго говоря с этой задачей справится даже PFS154-S14, но затраты на его программатор для DIY великоваты.
CH32V003F4P6 обойдется на порядок дешевле и уже имеет достаточно выводов для этой задачи.
CH32V003F4P6 для этой задачи использовать разумней и дешевле.linux_rulezz писал(а):У 40-рублевого STM32F103C6T6
Ну да, несколько больше приключений с USB, но всё решаемо https://habr.com/ru/articles/852908/
Строго говоря с этой задачей справится даже PFS154-S14, но затраты на его программатор для DIY великоваты.
- linux_rulezz
- Вымогатель припоя
- Сообщения: 611
- Зарегистрирован: Пн сен 15, 2025 08:43:23
- Откуда: Маленький СССР посреди шариатской республики
Re: USB переключатель
ПростоНуб, там RISC-V. А ее еще освоить надо. Я вот "нахрапом" не смог сишный стартап написать и забросил эти МК. Да и по производительности они как-то не очень…
И да, у V003 нет USB! Оно в более старших семействах (05 и далее). // блин, что тут за дебильный движок? На скриншот 2025.10.01_22:23:22.png ругается, что "недопустимое имя", приходится переименовывать...
И да, у V003 нет USB! Оно в более старших семействах (05 и далее). // блин, что тут за дебильный движок? На скриншот 2025.10.01_22:23:22.png ругается, что "недопустимое имя", приходится переименовывать...
Windows must die!
- ПростоНуб
- Собутыльник Кота
- Сообщения: 2723
- Зарегистрирован: Пт сен 07, 2018 20:20:02
- Откуда: деревня в Тульской губернии
Re: USB переключатель
[uquote="linux_rulezz",url="/forum/viewtopic.php?p=4750279#p4750279"]ПростоНуб, там RISC-V. А ее еще освоить надо. Я вот "нахрапом" не смог сишный стартап написать и забросил эти МК.[/uquote]
Странно. Мне они поддались сразу. И что такого в RISC-V страшного? ESP32-С3 тоже RISC-V, а их уже давно массово самодельщики используют.
[uquote="linux_rulezz",url="/forum/viewtopic.php?p=4750279#p4750279"]Да и по производительности они как-то не очень…[/uquote]
А тут она нужна?
[uquote="linux_rulezz",url="/forum/viewtopic.php?p=4750279#p4750279"]И да, у V003 нет USB![/uquote]
Он есть, но своеобразный, полностью программный. Я же дал ссылку. Могу повторить https://habr.com/ru/articles/852908/
Вот еще исходник https://github.com/cnlohr/rv003usb
Понятно, что программно можно получить только Low Speed USB, Но для большинства задач этого вполне достаточно )
Странно. Мне они поддались сразу. И что такого в RISC-V страшного? ESP32-С3 тоже RISC-V, а их уже давно массово самодельщики используют.
[uquote="linux_rulezz",url="/forum/viewtopic.php?p=4750279#p4750279"]Да и по производительности они как-то не очень…[/uquote]
А тут она нужна?
[uquote="linux_rulezz",url="/forum/viewtopic.php?p=4750279#p4750279"]И да, у V003 нет USB![/uquote]
Он есть, но своеобразный, полностью программный. Я же дал ссылку. Могу повторить https://habr.com/ru/articles/852908/
Вот еще исходник https://github.com/cnlohr/rv003usb
Понятно, что программно можно получить только Low Speed USB, Но для большинства задач этого вполне достаточно )


