Мне было предложено создать соединение, которое будет отправлять данные с устройства на компьютер через разъем DB9. Там это будет обработано нашим приложением. Эти же данные также следует отправлять на принтер с использованием LPT (DB25). Я искал с помощью Google, чтобы найти подходящий кабель или программу (мультиплексор), которые могли бы разделить потоки, но пока не повезло.

Я подумал, что, может быть, сшитый по индивидуальному заказу кабель мог бы справиться со следующим подключением (не могу опубликовать изображения, чтобы сделать его проще из-за репутации):

DEVICE-DB9(F)-------PC-DB9(F)

               |
               |---PRINTER-DB25(M)

Как вы думаете, эта связь будет работать?

У кого-нибудь здесь есть опыт решения следующей проблемы / решения?

2 ответа2

2

DB9 (фактически DE-9) обычно используется для последовательных соединений. DB25 (DE25) может использоваться для последовательной или параллельной передачи данных. Я не думаю, что когда-либо видел девятиконтактный разъем, используемый для восьмибитной параллельной передачи данных; просто не хватает штифтов, чтобы он работал надежно!

Вы не можете просто "разделить" последовательный сигнал на параллельную линию.

Поэтому простой ответ - нет, это не сработает. Я полагаю, что это можно было бы сделать , используя что-то, что буферизует последовательные данные и проталкивает их по параллельному пути, но я никогда не видел ничего такого доступного.

Чтобы было ясно: как указано в заголовке (разделить DB9 на DB9 и DB25, которые получают одинаковые данные) выполнимо; Модемные кабели сделали именно это в свое время, потому что оба варианта последовательных портов были найдены в дикой природе (и я мог бы даже иметь такой кабель, который собирает пыль на чердаке), хотя они обычно оставляли дополнительные контакты на контактный разъем не подключен или, возможно, заземлен. Разделение сериала на сериал и параллель - это совсем другая проблема, и ее гораздо сложнее решить.

1

На всех ПК любой разъем "DB9" будет подключен к UART, который говорит по RS-232.

Любой DB25, который является портом LPT/ принтера, не будет подключен к UART - контакты напрямую меняют биты в портах ввода / вывода - устройства с обеих сторон отвечают за реализацию любого протокола.

Так зачем вам отправлять последовательные данные RS-232 на принтер, ожидающий LPT? Поэтому такого кабеля нет.

Теперь вы найдете несколько кабелей с DB25 на одном конце и DB9 на другом. Это связано с тем, что существует такая вещь, как последовательные порты DB25, но они подключены так, чтобы соответствовать правым контактам на стороне DB9. Некоторые модемы 56k имеют порты DB25 на своем конце, и вы можете использовать такой кабель для подключения к последовательному порту DB9 ПК (или использовать последовательный кабель DB25-DB25 и подключить его к последовательному порту DB25 ПК, это не t неслыханно на старых компьютерах).

Кроме того, я думаю, что пол изменился относительно портов LPT (порты DB25 принтера - "мама", последовательные порты DB25 - "папа"), и напряжения могут не совпадать (RS-232 - 12 вольт, не уверен, что порт LPT)

(Кроме того, здесь есть техническая поправка: старые разъемы EGA и CGA на древних ПК также были DB9, но это были розетки, а не розетки, как у последовательного порта.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .