-
- Спрошу здесь, чтобы темы не плодить. Как правильно организовать управление направлением передачи RS-485 от ЮСБ моста CH340G? Пробовал с помощью RTS и других сигналов, работает не так, как надо. Во всех примерах, которые я встречал, в том числе Yurasvs(467 знак., 29.07.2019 08:44)
- Просто взять CH340 с буковкой "E". Или CH341. В них присутствует сигнал управления... - Гудвин(29.07.2019 09:06)
- Хм, CH340E даже без кварца... Как оно работает, интересно? Отбой, кварц встроенный, оказывается. - Yurasvs(29.07.2019 12:15 - 12:29)
- Просто взять CH340 с буковкой "E". Или CH341. В них присутствует сигнал управления... - Гудвин(29.07.2019 09:06)
- Развитие темы -> - Evgeny_CD(25.07.2019 00:25, ссылка)
- Мы в итоге реализовали всё на PIC18F45J50. Сделали HID режим. Работает очень устойчиво! Можно на горячую подключать, отключать. Ничего не зависает. Как обычный COM-порт вобщем или Ethernet. - FDA(25.07.2019 11:48)
- Дык я давно настойчиво рекомендую использовать HID везде, где нет очень серьезных причин использовать что-то другое. Если не хватает скорости - то RNDIS. - LightElf(25.07.2019 12:30)
- Почему RNDIS а не CDC? - ASDFS(25.07.2019 12:41)
- У Винды в драйверах CDC есть несколько неизбывных багов. Иногда зависает так, что сбросить можно только физическим передергиванием кабеля. - =AK=(25.07.2019 13:55)
- Эта бага есть и у HID CC. Насчет RNDIS не знаю. - ASDFS(25.07.2019 13:56)
- В WinUSB этого бага нет. - =AK=(25.07.2019 15:58)
- Эта бага есть и у HID CC. Насчет RNDIS не знаю. - ASDFS(25.07.2019 13:56)
- Драйвера не нужны, можно сделать вебморду или произвольное количество независимых потоков данных любого сорта и роста. Отвал девайса не ставит раком систему. - LightElf(25.07.2019 12:53)
- А как к нему доступ - только через TCP стек или есть дырка напрямую с поиском своего устройства по имени/фамилии? Надо ли настраивать сетевые параметры? А можно обнаглеть и попросить сорцы, хотя бы порезанные? - ASDFS(25.07.2019 14:11)
- TCP/UDP/IP/Ethernet. Сетевые параметры настраивать надо, но можно настроить по DHCP. Сорцы брал на гитхабе - LightElf(25.07.2019 16:00, ссылка)
- Спасибо - ASDFS(25.07.2019 17:53)
- TCP/UDP/IP/Ethernet. Сетевые параметры настраивать надо, но можно настроить по DHCP. Сорцы брал на гитхабе - LightElf(25.07.2019 16:00, ссылка)
- А что в линухе с RNDIS? - Evgeny_CD(25.07.2019 13:20)
- Всегда :) - LightElf(25.07.2019 17:48, ссылка)
- Спасибо! Начало документа про недокументированность впечатлило. - Evgeny_CD(25.07.2019 18:15)
- Всегда :) - LightElf(25.07.2019 17:48, ссылка)
- Это проприетарный протокол, а значит актуален вопрос кому не нужны дрова, только Виндам? Независимые потоки, как я понимаю, возникнут только после TCP/IP, так его и к CDC привязать можно, модем же. - ASDFS(25.07.2019 12:57)
- И чего в нем проприетарного-то? Открытая спека, бесплатная патентная лицензия, бери да пользуй. Ну мелкософт, да. - LightElf(25.07.2019 17:54, ссылка)
- А как к нему доступ - только через TCP стек или есть дырка напрямую с поиском своего устройства по имени/фамилии? Надо ли настраивать сетевые параметры? А можно обнаглеть и попросить сорцы, хотя бы порезанные? - ASDFS(25.07.2019 14:11)
- Там, наверное, веб-морду поднять можно. Вставляешь свисток, пускаешь браузер - кульно... - SciFi(25.07.2019 12:45)
- Можно еще кульнее сделать. HID Keyboard + RNDIS. Втыкаешь свисток - а оно само тебе и браузер запущает, и ломиццо куда-то, и 100500 вирусов накачивает. - LightElf(25.07.2019 18:05)
- Как страшно жытЬ! - SciFi(25.07.2019 18:09)
- И через СОМ-порт вебморду поднять можно, указываешь его как модем и вперед. Я кстати так делал однажды. - ASDFS(25.07.2019 12:49)
- Можно еще кульнее сделать. HID Keyboard + RNDIS. Втыкаешь свисток - а оно само тебе и браузер запущает, и ломиццо куда-то, и 100500 вирусов накачивает. - LightElf(25.07.2019 18:05)
- У Винды в драйверах CDC есть несколько неизбывных багов. Иногда зависает так, что сбросить можно только физическим передергиванием кабеля. - =AK=(25.07.2019 13:55)
- Почему RNDIS а не CDC? - ASDFS(25.07.2019 12:41)
- Дык я давно настойчиво рекомендую использовать HID везде, где нет очень серьезных причин использовать что-то другое. Если не хватает скорости - то RNDIS. - LightElf(25.07.2019 12:30)
- Мы в итоге реализовали всё на PIC18F45J50. Сделали HID режим. Работает очень устойчиво! Можно на горячую подключать, отключать. Ничего не зависает. Как обычный COM-порт вобщем или Ethernet. - FDA(25.07.2019 11:48)
- Уже не раз писал.Нужен короткий (маленький физически) переходник в усб разъем.Что и как из него будет выходить не особо важно.Для тупых лучше с опторазвязкой.Для умеющих грамотно разводить землю неважно.Это лучшее что можно вытянуть из усб.Но PlainUser(313 знак., 15.01.2019 08:59 - 09:05)
- USB вполне надёжен. Реализацию VCP, что на FT232, что на PIC, я могу завесить за 10 сек имитатором помех. Тот же эмулятор HID клавиатуры на PIC только переподключается в винде при помехах, но намертво завесить его не получилось. - FDA(15.01.2019 09:17)
- Встречный вопрос. Как заставить Ком-порт на ПК работать быстрее 115 200? (ну прихоть у меня такая) - Крок(16.01.2019 09:04)
- Вероятно - только если драйвер и терминал позволят. Точка опоры(112 знак., 16.01.2019 11:14)
- У нас всё проще Крок(16.01.2019 13:36)
- Сам себе Пролифик? - Точка опоры(16.01.2019 21:38)
- Только вчера понял иронию этого вопроса. Крок(478 знак., 20.01.2019 15:28)
- Как "кипучий лентяй" - очень понимаю. - Точка опоры(20.01.2019 18:58)
- Практицки. Есть вещи, которые надо делать самому, даже при наличии здорового коллектива (с) - Крок(17.01.2019 14:03)
- Только вчера понял иронию этого вопроса. Крок(478 знак., 20.01.2019 15:28)
- сюда можно не смотреть, все это ересь - Aleksey_75(16.01.2019 15:17)
- Сам себе Пролифик? - Точка опоры(16.01.2019 21:38)
- У нас всё проще Крок(16.01.2019 13:36)
- физический ком-порт ?? если виртуальный то у меня на 921600 работает - Aleksey_75(16.01.2019 09:11)
- через FT232. - Крок(16.01.2019 10:11)
- хм, не должно быть проблем, у меня pl и cp норм работали на 256000 без проблем, выше проц не тянул. Замкни RX TX и посмотри на какой скорости сам на себя работать будет - Aleksey_75(16.01.2019 10:15)
- Я, когда выборку и цифровые фильтра отлаживала на dsPIC, обменивался на скорости до 1.5 мегабода. Приходилось использовать два разных USB-свистка с CP2012, один на приём, один на передачу, так как один, и то, и другое разом, - не тянул. Nikolay_Po(416 знак., 16.01.2019 11:45)
- Бог с ними с МАХ232. Есть PL2303, которые дают TTL-выход, подключаемый напрямую к ПИКу. Вот как от компа организовать поток быстрее 115к? - Крок(16.01.2019 11:49)
- PL2303 едва до мегабода дотягивали, проходилось использовать меньшие скорости, 480.500кбод, где-то. А вот с CP2102 вздохнул свободнее. От 1 до 1.5 мегабода получается, если контроль потока есть. Nikolay_Po(227 знак., 16.01.2019 11:58 - 12:03)
- Эх, Мариванна, нам бы Ваши проблемы (с). Тут бы выйти за предел 115К - Крок(16.01.2019 15:42)
- +1 CP2102 рулит - Aleksey_75(16.01.2019 12:34)
- PL2303 едва до мегабода дотягивали, проходилось использовать меньшие скорости, 480.500кбод, где-то. А вот с CP2102 вздохнул свободнее. От 1 до 1.5 мегабода получается, если контроль потока есть. Nikolay_Po(227 знак., 16.01.2019 11:58 - 12:03)
- Бог с ними с МАХ232. Есть PL2303, которые дают TTL-выход, подключаемый напрямую к ПИКу. Вот как от компа организовать поток быстрее 115к? - Крок(16.01.2019 11:49)
- Дельфи не допускает вольностей с установкой скорости - Крок(16.01.2019 10:25)
- Допускает. Серийное изделие с CP2102 на 500000 работает штатно с дельфи. Вот вам компонент. бомж(16.01.2019 17:54)
- Низкий поклон! - Крок(17.01.2019 11:23)
- Сфигали не допускает. Если без прокладок с виндой работать, еще как допускает. Я 250000 для DMX без проблем ставлю. - Andreas(16.01.2019 13:03)
- Найти, откуда Delphi берёт ограничения и добавить нужные скорости туда. Это или реестр, или драйвер порта. Может, где птичка есть "Использовать только стандартные скорости" и её нужно снять? - Nikolay_Po(16.01.2019 12:06)
- Лечить дельфи - LightElf(16.01.2019 10:50)
- Какими таблетками? - Крок(16.01.2019 11:37)
- Я по дельфям не спец. Но очевидно, что если драйвер умеет в высокие скорости, а дельфя - нет, то лечить дельфю - LightElf(16.01.2019 12:24)
- Логично - Крок(16.01.2019 13:27)
- Я по дельфям не спец. Но очевидно, что если драйвер умеет в высокие скорости, а дельфя - нет, то лечить дельфю - LightElf(16.01.2019 12:24)
- Какими таблетками? - Крок(16.01.2019 11:37)
- Допускает. Серийное изделие с CP2102 на 500000 работает штатно с дельфи. Вот вам компонент. бомж(16.01.2019 17:54)
- Я, когда выборку и цифровые фильтра отлаживала на dsPIC, обменивался на скорости до 1.5 мегабода. Приходилось использовать два разных USB-свистка с CP2012, один на приём, один на передачу, так как один, и то, и другое разом, - не тянул. Nikolay_Po(416 знак., 16.01.2019 11:45)
- хм, не должно быть проблем, у меня pl и cp норм работали на 256000 без проблем, выше проц не тянул. Замкни RX TX и посмотри на какой скорости сам на себя работать будет - Aleksey_75(16.01.2019 10:15)
- через FT232. - Крок(16.01.2019 10:11)
- Вероятно - только если драйвер и терминал позволят. Точка опоры(112 знак., 16.01.2019 11:14)
- а вот в чем все же проблема при VCP: это написанные драйвера, или же сам профиль, который не учитывает исключительные ситуации? На шарю в USB, но стало очень интересно - Constantin24(15.01.2019 13:15)
- Встречный вопрос. Как заставить Ком-порт на ПК работать быстрее 115 200? (ну прихоть у меня такая) - Крок(16.01.2019 09:04)
- USB вполне надёжен. Реализацию VCP, что на FT232, что на PIC, я могу завесить за 10 сек имитатором помех. Тот же эмулятор HID клавиатуры на PIC только переподключается в винде при помехах, но намертво завесить его не получилось. - FDA(15.01.2019 09:17)
- Юзаем силабсовские мосты, в корпусе типа "флешка" с гальванической развязкой. Т.е. как можно ближе к хосту, с минимальной проходной емкостью и правильной разводкой цепей. В цеховом оборудовании работает не то чтобы 24/7, а все 24/365 :) и без PKM(26 знак., 14.01.2019 19:07)
- CP2102 имеет мелкий корпус да еще и с экраном на заднице и соответственно при правильной разводке ловит меньше помех и наводок. - PlainUser(15.01.2019 13:32)
- Классика -> - Evgeny_CD(15.01.2019 13:40, ссылка)
- Классика это Барнс. PlainUser(99 знак., 16.01.2019 07:45 - 07:48)
- Много думал, что значит "адаптированный вариант" в данном контексте, но так и не понял. =AK=(134 знак., 22.01.2019 14:26)
- Это значит что в вашей статье есть самое нужное и ценное (применительно к актуальным в наше время темам) и преподнесено в форме простой для понимания , за что вам огромное спасибо. PlainUser(292 знак., 23.01.2019 08:18)
- Вау!!!Какие уважаемые люди посетили наш форум!!! - Evgeny_CD(22.01.2019 14:39)
- Аннегрет Карренбауэр? Министр обороны вермахта? - Крок(25.07.2019 22:24)
- +1 - VD(25.07.2019 20:34)
- Спасибо! - Evgeny_CD(16.01.2019 13:06)
- Много думал, что значит "адаптированный вариант" в данном контексте, но так и не понял. =AK=(134 знак., 22.01.2019 14:26)
- Классика это Барнс. PlainUser(99 знак., 16.01.2019 07:45 - 07:48)
- Классика -> - Evgeny_CD(15.01.2019 13:40, ссылка)
- +1. овеновский усб-485 с 2010го ебашит на местном белом дому рулит вентиляхой через овеновские же мддв и скаду. LordN(68 знак., 15.01.2019 10:17)
- DC-DC - MORNSUN F0505S-1W, развязка на ADuM1301. - FDA(15.01.2019 12:01)
- Спасибо! Среди современных компонентов можно подобрать DC-DC и изолятор с сильно меньшей проходной емкостью, но вот интересно - приведет ли оно к дальнейшему повышению устойчивости? Evgeny_CD(162 знак., 15.01.2019 12:24)
- Я делал преобразователь на базе FT232RL + ADuM1301 + AM1S-0505S. Зависал раз в неделю стабильно. Правда, линия связи была порядка 400 м. FDA(222 знак., 15.01.2019 14:07)
- рекомендую применить SN65HVD72/82 или LTC2862 Vit(44 знак., 15.01.2019 14:13)
- EFT - Fast Transient Burst? -> - Evgeny_CD(15.01.2019 14:22, ссылка)
- Electrical Fast Transient. Проверяется по IEC 61000-4-4 пачками коротких импульсов (electrical fast transient burst immunity). Рядом с частотниками и херовыми ИБП актуально. - Vit(15.01.2019 14:34)
- Спасибо! - Evgeny_CD(15.01.2019 14:35)
- Electrical Fast Transient. Проверяется по IEC 61000-4-4 пачками коротких импульсов (electrical fast transient burst immunity). Рядом с частотниками и херовыми ИБП актуально. - Vit(15.01.2019 14:34)
- EFT - Fast Transient Burst? -> - Evgeny_CD(15.01.2019 14:22, ссылка)
- рекомендую применить SN65HVD72/82 или LTC2862 Vit(44 знак., 15.01.2019 14:13)
- Я только что произвел "модификацию" китайской платки usb гальваноразвязки. В ней ADUM и Mornsun. Жидковат это Mornsun для моей осциллографической приставки + 4-х портовый HUB - выходное напряжение падало до 4.1В. На грани все было именно по Гудвин(152 знак., 15.01.2019 12:39)
- Я делал преобразователь на базе FT232RL + ADuM1301 + AM1S-0505S. Зависал раз в неделю стабильно. Правда, линия связи была порядка 400 м. FDA(222 знак., 15.01.2019 14:07)
- Преобразователи малой емкостью не блещут Isolation Capacitance Input/Output,100KHz/1V -- 30 -- pF -> - Evgeny_CD(15.01.2019 12:20, ссылка)
- Современные DC-DC имеют на порядок более низкую емкость - 2...3 пф -> - Evgeny_CD(15.01.2019 12:21, ссылка)
- ADuM1301 Capacitance (Input-to-Output)1 CI-O 1.7 pF --> ISO7721 из современных будет круче! -> - Evgeny_CD(15.01.2019 12:16, ссылка, ссылка)
- Спасибо! Среди современных компонентов можно подобрать DC-DC и изолятор с сильно меньшей проходной емкостью, но вот интересно - приведет ли оно к дальнейшему повышению устойчивости? Evgeny_CD(162 знак., 15.01.2019 12:24)
- Это вот этот? -> Интересно, как оно внутри сделано - какие DC-DC, какие у них проходные емкости.... - Evgeny_CD(15.01.2019 11:53, ссылка)
- да, оно самое. хз че тама во нутрях, но дрова силабовские. - LordN(15.01.2019 12:09)
- у меня такая есть на столе если хошь могу пофотать - LordN(15.01.2019 12:14)
- Буду благодарен! - Evgeny_CD(15.01.2019 12:17)
- держи LordN(45 знак., 15.01.2019 18:37 - 16.01.2019 05:32)
- Спасибо! - Evgeny_CD(16.01.2019 13:06)
- Те же ADUM и Mornsun... - Гудвин(16.01.2019 12:31)
- держи LordN(45 знак., 15.01.2019 18:37 - 16.01.2019 05:32)
- Буду благодарен! - Evgeny_CD(15.01.2019 12:17)
- у меня такая есть на столе если хошь могу пофотать - LordN(15.01.2019 12:14)
- да, оно самое. хз че тама во нутрях, но дрова силабовские. - LordN(15.01.2019 12:09)
- DC-DC - MORNSUN F0505S-1W, развязка на ADuM1301. - FDA(15.01.2019 12:01)
- CP2102 имеет мелкий корпус да еще и с экраном на заднице и соответственно при правильной разводке ловит меньше помех и наводок. - PlainUser(15.01.2019 13:32)
- USB неделю? Это оптимистичное утверждение :) - Codavr(14.01.2019 17:26)
- Я проконтролирую ;) Кстати, PicKit2 (HID) у меня с кануна НГ воткнут в HUB. Комп я не выключаю. Сейчас запустил оболочку - дышит, сцуко... - Гудвин(14.01.2019 18:45)
- Дрелью рядом пожужи ;) - Codavr(15.01.2019 11:01)
- Я проконтролирую ;) Кстати, PicKit2 (HID) у меня с кануна НГ воткнут в HUB. Комп я не выключаю. Сейчас запустил оболочку - дышит, сцуко... - Гудвин(14.01.2019 18:45)
- Погляди на изврат - чел заюзал I2C из VGA для своих дел:) - Vit(14.01.2019 12:57, ссылка)
- О! В тему: я тут после НГ возился PIC16F1454. Сначала заюзал VCP (типа, уже возился под линухом с COM портами, а "самая короткая дорога та, которую знаешь"). Отлаживал под Win. Задолбался - VCP виснет от любого чиха. После третьей перезагрузки Гудвин(537 знак., 14.01.2019 11:15, ссылка)
- Во-во, мне так и надо! Данных совсем мало передаётся. А ты прям на базе этого проекта с гитхаба сделал? - FDA(14.01.2019 16:19)
- Угу. Там и настройки по-умолчанию для HID: 64 байт in, 64 ,байт out, 1 мс период. В луниксе при этом никаких IOCtl() не надо юзать: Гудвин(627 знак., 14.01.2019 16:49)
- Сегодня запустил пример прям из микрочиповского фреймворка Microchip Libraries for Applications (MLA) для МК PIC18F45J50. FDA(132 знак., 15.01.2019 14:55)
- Компилятор XC8? Библиотеки микрочиповские надо обновлять? Там вроде файлам некоторым по 3 года. - FDA(14.01.2019 17:43)
- XC8 2.0 (скачал пару недель назад). MPLABX старый - 3.55. Новый тоже компилит, ругнувшись разок на древность проекта. - Гудвин(14.01.2019 18:02)
- "Макетка", PicKit2 со свежим конфигом. Отладки, естественно нет - PicKit2 некрочип забросил. Гудвин(14.01.2019 18:09)
- Загрузчик работает, но неудобен при вошкотне - надо тыкать кнопку. Посему надо в коде примера прописать вот такую хрень: Гудвин(2178 знак., 14.01.2019 18:15)
- Угу, спасибо!!! - FDA(14.01.2019 18:44)
- Загрузчик работает, но неудобен при вошкотне - надо тыкать кнопку. Посему надо в коде примера прописать вот такую хрень: Гудвин(2178 знак., 14.01.2019 18:15)
- "Макетка", PicKit2 со свежим конфигом. Отладки, естественно нет - PicKit2 некрочип забросил. Гудвин(14.01.2019 18:09)
- XC8 2.0 (скачал пару недель назад). MPLABX старый - 3.55. Новый тоже компилит, ругнувшись разок на древность проекта. - Гудвин(14.01.2019 18:02)
- Да и uart аппаратный в таракашке наличествует. - Гудвин(14.01.2019 16:55)
- Угу. Там и настройки по-умолчанию для HID: 64 байт in, 64 ,байт out, 1 мс период. В луниксе при этом никаких IOCtl() не надо юзать: Гудвин(627 знак., 14.01.2019 16:49)
- Ну вот хрен знает. Делал на STM32 композитный девайс с СОМ-портом и HID-ом одновременно. Никто не вис. - Звероящер(14.01.2019 11:28)
- CDC драйвер винды 100% виснет при выдергивании шнурка, если в это время идет обмен данными. - Гудвин(14.01.2019 11:33)
- А можно про "композитный девайс с СОМ-портом и HID-ом одновременно" подробнее? Как делать композитные девайсы с разными HID'ами, я знаю (все дескрипторы пихаю в одну кучу), но скрестить HID с CDC не могу (слишком уж они разные). Их, Ксения(93 знак., 14.01.2019 19:03 - 19:05)
- Точки разносятся естественно. PIDы тоже разные ставятся. Более того надо *.inf-файлик драйвера править под виндой, чтобы указать номер интерфейса. Вообще я черпал инфу Звероящер(274 знак., 15.01.2019 06:03)
- В дескрипторах я разбираюсь, а в разделении точек нет, т.к. все случаи в моей практике были одноточечными. USB - сложный интерфейс, а потому хотелось бы живого примера вместо чтения мануалов. - Ксения(15.01.2019 10:19)
- По ссылкам примеры - живее некуда и ссылка на гитхаб. - Звероящер(16.01.2019 08:56)
- В дескрипторах я разбираюсь, а в разделении точек нет, т.к. все случаи в моей практике были одноточечными. USB - сложный интерфейс, а потому хотелось бы живого примера вместо чтения мануалов. - Ксения(15.01.2019 10:19)
- Устройство содержит конфигурацию с двумя интерфейсами. Не? Dingo(41 знак., 15.01.2019 04:52, ссылка)
- Точки разносятся естественно. PIDы тоже разные ставятся. Более того надо *.inf-файлик драйвера править под виндой, чтобы указать номер интерфейса. Вообще я черпал инфу Звероящер(274 знак., 15.01.2019 06:03)
- HID consumer control так же виснет. Не виснут только клавиатурные-мышиные HID. Но как их заюзать в проге - ХЗ. - ASDFS(14.01.2019 13:43)
- Что подразумевается под "виснет"? Опыт с FT232 показывает, что при выдергивании-вдергивании порт пропадает, его програмно закрываешь, открываешь и все опять работает. Правда у него свой драйвер, возможно он CDC винды не использует. - AlexBi(14.01.2019 12:47)
- После помехи на любые команды ReadFile, WriteFile, CreateFile выдаёт ошибку. Единственный способ заставить работать - это выткнуть USB и снова воткнуть. - Ale3000(15.01.2019 04:23)
- Угу. Мы по этой причине забили на CDC и перешли на WinUSB. Он намного стабильнее работает. - =AK=(23.01.2019 01:52)
- С CDC какая-то бяка с реестром происходит. =AK=(182 знак., 23.01.2019 01:56 - 02:12)
- Кстати, читал как-то что у видны есть несколько способов определять наличие COM-порта. Так вот только один способ корректно определял наличие USB-COM порта - Звероящер(15.01.2019 09:38)
- Если используется МК, а не FTDI/etc, то можно с его стороны отслеживать повисание шины и эмулировать disconnect/reconnect. Ессно в софте надо корректно обрабатывать исчезновение устройства. - LightElf(15.01.2019 08:51)
- Угу. Мы по этой причине забили на CDC и перешли на WinUSB. Он намного стабильнее работает. - =AK=(23.01.2019 01:52)
- В софтине вызывается ReadFile/WriteFile и блокируется... Ведь способа узнать, для софтины, что порта больше нет -- не предусмотрено. - fk0(14.01.2019 13:00)
- А я по сообщению WM_DEVICECHANGE с параметром DBT_DEVNODES_CHANGED посылаю CDC-девайсу команду ClearCommBreak(). Если отвечает false, то закрываю порт, считая девайс выдернутым из гнезда. На этой команде открытый порт не виснет. А если там не Ксения(109 знак., 14.01.2019 17:19)
- В чем проблема таймаут поставить на write? Другое дело, что если до повторного втыкания порт не освободить, он может и другим номером встать. И часто проблема не в перевтыкании, а в тупом подвисе шины или драйвера, или хз чего. - Andreas(14.01.2019 13:24)
- После помехи на любые команды ReadFile, WriteFile, CreateFile выдаёт ошибку. Единственный способ заставить работать - это выткнуть USB и снова воткнуть. - Ale3000(15.01.2019 04:23)
- А можно про "композитный девайс с СОМ-портом и HID-ом одновременно" подробнее? Как делать композитные девайсы с разными HID'ами, я знаю (все дескрипторы пихаю в одну кучу), но скрестить HID с CDC не могу (слишком уж они разные). Их, Ксения(93 знак., 14.01.2019 19:03 - 19:05)
- CDC драйвер винды 100% виснет при выдергивании шнурка, если в это время идет обмен данными. - Гудвин(14.01.2019 11:33)
- Во-во, мне так и надо! Данных совсем мало передаётся. А ты прям на базе этого проекта с гитхаба сделал? - FDA(14.01.2019 16:19)
- Пусть более знающие товарищи меня поправят, но у меня всегда было впечатление, что УСБ - это ширпотреб. Зависло - да и хрен с ним. Ставить на ответственные применения - трэш и угар. - SciFi(14.01.2019 11:08)
- Единственная проблема, когда при помехах виснет хост. Этого довольно просто избежать установкой гальванической развязки поближе к разъему. - VLLV(14.01.2019 15:19)
- Не претендую за звание знающего товарища, но мой опыт использования HID весьма положительный. Как обычно, минимум половина нытья исходит от тех, кто просто не умеет его готовить. Сгенерируют код, прости господи, кубом, а потом жалуются, что USB йцукен(8 знак., 14.01.2019 12:25)
- Дело не в HID. Первый вопрос -- как разные HID между собой различать? Когда решишь, будет такая же проблема, как и с CDC. - fk0(14.01.2019 13:01)
- Различать по VID/PID. Если нужно подключать к одному компу несколько одинаковых устройств, нужен serial number, и различать по VID/PID/serial. - йцукен(14.01.2019 15:12)
- Дело не в HID. Первый вопрос -- как разные HID между собой различать? Когда решишь, будет такая же проблема, как и с CDC. - fk0(14.01.2019 13:01)
- +1. И виснет оно не потому, что там CDC или HID, а потому, что статикой, реже радиочастотная помеха, наводятся потенциалы разваливающие протокол. Дальше следует переподключение, а софт на это не особо расчитан. В случае компорта предыдущий номер fk0(293 знак., 14.01.2019 12:03)
- Не закрытый выткнутый СОМ не мешает после перевтыка сделать другой СОМ с таким же номером. В проге порт через хэндел адресуется, старый хэндел начинает указывать на невалидное устройство, к номеру порта привязки нет. - AlexBi(14.01.2019 15:35)
- В линуксе очень даже есть, minor number другой будет. Пока порт не закрыт, устройство, даже если отвалилось -- существует (ибо ему все запросы драйвера по прежнему обрабатывать). Не думаю, что в виндах иначе. Хендл вообще не при чём, это сущность fk0(60 знак., 14.01.2019 23:25)
- udev. Создавай символьный линк на файл устройства. Если вдумчиво задать правило, он будет постоянным. Скрипач(42 знак., 14.01.2019 23:47 - 23:50)
- В линуксе очень даже есть, minor number другой будет. Пока порт не закрыт, устройство, даже если отвалилось -- существует (ибо ему все запросы драйвера по прежнему обрабатывать). Не думаю, что в виндах иначе. Хендл вообще не при чём, это сущность fk0(60 знак., 14.01.2019 23:25)
- Не закрытый выткнутый СОМ не мешает после перевтыка сделать другой СОМ с таким же номером. В проге порт через хэндел адресуется, старый хэндел начинает указывать на невалидное устройство, к номеру порта привязки нет. - AlexBi(14.01.2019 15:35)
- У usb есть одна хорошая фишка - 5 В, 500 мА в доступной близости ;) Пользую вот такие Y шнурки для своих настольных ethernet девайсов. Гудвин(14.01.2019 11:30)
- Оно то так, но иногда "ответственное оборудование" ухмыляется и смотрит на тебя разъемом USB. Единственным. Скрипач(197 знак., 14.01.2019 11:16)
- Какие-то потуги перевключения питания были --> - Vit(14.01.2019 11:50, ссылка)
- Пока unbind/bind через devfs всему что на шине нашлось. Паять транзистор в кусок провода от Малинки до модема - рука не поднимается :) - Скрипач(14.01.2019 18:36 - 18:53)
- Делаю DICS_PROPCHANGE, когда стопорится FT232/245 aoreh(381 знак., 14.01.2019 11:27)
- Какие-то потуги перевключения питания были --> - Vit(14.01.2019 11:50, ссылка)
- Спрошу здесь, чтобы темы не плодить. Как правильно организовать управление направлением передачи RS-485 от ЮСБ моста CH340G? Пробовал с помощью RTS и других сигналов, работает не так, как надо. Во всех примерах, которые я встречал, в том числе Yurasvs(467 знак., 29.07.2019 08:44)