Это может быть легче понять, если мы быстро рассмотрим, как изначально использовался стандарт RS-232.
Примечание. Все номера контактов ниже относятся к оригинальному 25-контактному разъему D; нумерация изменилась на 9-контактном разъеме, используемом на более поздних ПК.
Фон
DTE = оборудование терминала данных - в старые времена это обычно был терминал или принтер, или оборудование, имитирующее их.
DCE = оборудование для передачи данных - в старые времена это обычно был модем или другой интерфейс WAN.
Контакт 2 на исходном 25-контактном разъеме D (описанный в стандарте как «Переданные данные», «Цепь BA», «V24. Номер 103») должен быть данными от DTE к DCE.
Контакт 3 на исходном 25-контактном разъеме D (описываемый в стандарте как «Полученные данные», «Цепь BB», «V24. Номер 104») должен быть данными от DCE к DTE.
Это означало, что кабель, соединяющий терминал и модем, был «прямым» - контакт 2 на терминале (DTE) на одном конце кабеля, откуда исходили данные, был подключен к контакту 2 на модеме (или подобном) на другом конец кабеля (DCE), где были получены эти данные. Затем модем отправил эти данные по каналу связи на любое оборудование, которое находилось на другом конце этого канала.
Контакт 3 «Полученные данные» был сигналом данных в противоположном направлении - передавался модемом (DCE) на контакте 3 и принимался терминалом (DTE) на контакте 3.
Следовательно, вы можете видеть, что маркировка того, что было передано и что было получено, была с точки зрения DTE (то есть терминала). Все это имело смысл, когда типичные связи были между DCE и DTE.
Однако элементы оборудования, которые мы используем в эти дни (даже если они не используют RS-232 и вместо этого используют интерфейс протокола TTL или другого напряжения UART), обычно все являются DTE (за одним исключением, являющимся модемами). Соединение контакта 2 (который является выходом) на одной части DTE, с выводом 2 (другой выход) на другой части оборудования, настроенного как DTE, не имеет смысла (и при использовании сигналов логического уровня может даже привести к повреждению оборудования). Это где использование "скрещенных" или "нуль-модемных" (то есть без модема) кабелей.
Ваш вопрос
Я работал с устройством, которое использует связь RS232 с ПК. Был некоторый беспорядок, поскольку они определили свои контакты TX и RX относительно устройства. В своих определениях они используют для обозначения TX, являющегося контактом, который отправляет данные с устройства. На мой взгляд, это должно быть помечено как RX, потому что это пин-код, который получает компьютер.
Как должны быть определены штифты? Они относятся к каждому устройству или к «контроллеру»?
Из приведенной выше справочной информации вы можете видеть, что их маркировка верна, если их устройство работает как DTE (что большинство, если это не модем или другой интерфейс WAN). На части DTE контакт, помеченный как «Переданные данные» (контакт 2 на 25-контактном разъеме) , отправляет данные. (И, как объяснено выше, на части DCE (например, модем) вывод, известный как «Переданные данные» (вывод 2 на 25-контактном разъеме), фактически является входом, который получает сигнал от ООД.)
Последовательный порт ПК также будет настроен как DTE (если у него нет очень необычного последовательного порта - это не будет применяться здесь, как вы могли бы знать, применимо ли это).
Поэтому вы подключаете устройство DTE (это устройство, которое вы упомянули) к устройству DTE (ПК), т. Е. В терминологии RS-232 нет DCE, т.е. нет модема, и «нуль-модем» или «скрещенный» RS-232 для этого устройства DTE, которое будет являться выходом , потребуется подключить к RS-232 " какой бы ни был вывод RS-232" Передаваемые данные "(вероятно, тот, который вы упомянули как" TX "). Данные "закрепляют на вашем компьютере (также на устройстве DTE), который является входом (и, очевидно, наоборот, для передачи данных в другом направлении).
Хотя это, кажется, не относится к вам, я просто добавлю: чтобы усложнить жизнь, некоторые производители пытаются «помочь», эффективно маркируя свое оборудование DTE, как если бы оно было частью DCE. Они помечают свой вывод ввода данных как Tx, так что пользователь просто подключает «Tx» от внешнего устройства (которое, если это DTE, будет вывод данных оттуда) к выводу, помеченному «Tx» на их оборудовании (которое, как он знает, вход ). Таким образом, они могут сказать «просто подключите Tx на вашем устройстве к Tx на нашем оборудовании». Они думают, что пытаются помочь, но такая маркировка часто только добавляет путаницы.
Как отметил в комментарии Дэн Миллс , многие из нас, кто вырос с RS-232, провели счастливые часы, подключая различное оборудование к слегка отличающимся реализациям RS-232, используя описанные им «коммутационные блоки». Эти коммутационные блоки имеют светодиоды, которые показывают, какие сигналы активируются (это позволяет быстро увидеть, настроено ли оборудование как DTE или DCE: подключен ли контакт 2 на этом оборудовании? Да = это DTE), и есть места, где перемычка установлена Кабели могут быть использованы для соединения различных контактов разъема.