Конвертер USB на COM и принтер

Alex Cannabis
Offline
Зарегистрирован: 07.11.2016

Приобрел кабель конвертер USB на COM-порт на базе CH340.
Пытаюсь через него осуществить печать на чековый термопринтер Datecs EP-50.
При отправке в очереди печати принтера возникает отправленный документ и исчезает, как будто был напечатан. Но по факту печати не происходит. 

Драйвера на CH340 и принтер установлены, цифровая печать драйверов имеется. При чем использовал разные драйвера под разные версии Windows 7 x32 и Windows 8.1 x64. В настройках принтера выбран нужный COM-порт. В настройках порта указаны параметры принтера 1200 бит в сек, 8 бит данных, нет четности, 1 (стоповые биты), аппаратное управление потоком.

Если этот принтер подключаю напрямую к COM-порту компьютера и выставляю нужные настройки, то он печатает. Подскажите, где копать?

Alex Cannabis
Offline
Зарегистрирован: 07.11.2016

 цифровая печать = цифровая подпись

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Ну, если с компьтера печатает, то проблем-то и нет.

Сделайте прстейший докуент.

Убедитесь, что с компютера он печатается, а с ардуины - нет

подключите вместо принтера другой компьютер и прочитайте что там в порт приходит.

Сделайте это для компьютера (с которого всё нормально) и для ардуины. 

То, что Вы прочитаете должно быть разным (чудес не бывает - было бы одинаковым. притер бы тоже вёл себя одинаково).

Вот тогда и разберётесь, что там за разница, откуда она берётся и как с нею бороться.

_kp
Offline
Зарегистрирован: 07.10.2016

Принтеры на COM портах не используют тупую передачу данных, а используют програмное притормаживание потока данных, через XOn/XOff, и реже аппаратное через CTS/RTS.
Проверьте настойки COM порта в свойствах принтера.

Я как то делал преобразователь COM->LPT для принтера, и помню что без XOn/XOff, данные утетали в никуда, но быстро.

Alex Cannabis
Offline
Зарегистрирован: 07.11.2016

Ни программное ни аппаратное управление потоком не дало результата, но через RS232 оба варианта настройки работают и принтер печатает. Протестил отправку пакетов с ПК на ПК через конвертер, все пакеты уходят и приходят, более того они идентичны отправляемым и принимаемым пакетам через RS232. Сгенерировал пакет данных на печать принтера согласно его даташиту, через RS232 печать идет, через конвертер нет. Настройки COM портов в обоих случаях соблюдены и идентичны. Думаю попробовать конвертер USB -> RS232 на плате другого производителя, но пока такой нет в наличии.

 

uno
Offline
Зарегистрирован: 16.06.2016

Скорость стоящая в настройках порта компьютера для юсб свистков невсегда соответствует фактической. лет 5 назат воевал с этим. Если память не изменяет то решилось изменением скорости порта в принтере. типа ставиш 9600 везде не летит позтавил 38400 в компе и принтере и завелось. пройдись по всем скоростям

arduinec
Offline
Зарегистрирован: 01.09.2015

Может преобразователь USB-COM не все сигналы выдаёт - у обычного COM-порта 9 проводов могут использоваться.

uno
Offline
Зарегистрирован: 16.06.2016

Не, принтер использует только 3 провода вот к качеству проводов могут быть вопросы если они длинные то только медь. Вот спрашивается, что было не взять принтер с сетевым интерфейсом или переходник ком сеть.

Alex Cannabis
Offline
Зарегистрирован: 07.11.2016

uno
Спасибо! Прошелся по скоростям, действительно на некоторых работает, на некоторых нет!

Паралельно протестил подобный переходник от Moxa, он работает на всех скоростях. Но и стоит он в 10 раз дороже.