Схема. Как связать несколько устройств по интерфейсу RS-232
Последовательный интерфейс, организованный согласно рекомендациям стандарта RS-232 (англ.— Recommended Standard 232), обеспечивает обмен информацией между двумя устройствами на расстоянии до 15м. Первоначально этот стандарт имел ограниченное применение, поскольку он регламентирует лишь соединение аппаратуры передачи данных по каналам дальней связи (АПД, ОСЕ) с оконечным оборудованием данных (ООД, DTE). Подразумевалось, что функции АПД выполняет модем, а ООД — электромеханический или электронный телетайпный аппарат, а позднее, компьютер. Позже он получил широкое распространение для соединения компьютеров между собой и с самыми разнообразными периферийными устройствами.
Для передачи логических сигналов в интерфейсе RS-232 принята «негативная» логика: логической единице, согласно стандарту, соответствует напряжение от -15 до -5 В на выходе передатчика, а логическому нулю — от +5 до +15 В. Приёмник воспринимает сигналы от -25 до -3 В как логические единицы, а от +3 до +25 В — как логические нули. Нужно сказать, что во многих распространённых сегодня микросхемах (в том числе в известной МАХ232) приёмники сигналов этого интерфейса имеют порог переключения логического состояния около +1,5 В, обеспечивая за счёт этого и правильный приём сигналов с логическими уровнями, свойственными микросхемам структур ТТЛ и КМОП.
Благодаря своей простоте и надежности интерфейс RS-232 и сегодня активно применяют в электронной аппаратуре. Его самый существенный недостаток состоит в том, что он регламентирует соединение только двух устройств. Если, однако, входы нескольких приёмников, удовлетворяющих этому стандарту, соединить параллельно, все они будут успешно принимать сигналы единственного передатчика. Параллельная же работа нескольких передатчиков недопустима. Хотя, согласно стандарту, их выходы и должны без повреждений выдерживать такое соединение, неизбежны взаимные помехи и искажение передаваемой информации.
Для обмена информацией между несколькими устройствами предназначены во многом подобные RS-232 интерфейсы RS-485, RS-422, CAN и некоторые другие. В них предусматривается строгое регламентирование перехода каждого устройства на передачу и обязательный перевод выходов бездействующих в данный момент передатчиков в пассивное состояние.
Но существуют и не предусмотренные стандартами способы соединения нескольких устройств, оснащённых интерфейсом RS-232. Одна из возможных схем такого соединения показана на рисунке.
Одно устройство назначается ведущим, остальные — ведомыми, имеющие право начинать и вести передачу только с разрешения ведущего. Пока такого разрешения нет, ведомые находятся в режиме молчания и на их выходах TxD установлено, как и принято в интерфейсе RS-232, отрицательное напряжение логической единицы.
Предусмотренные у всех N ведомых диоды VD1—VDN обеспечивают защиту выходов их передатчиков от положительного напряжения, появляющегося на выходе TxD ведомого, находящегося в режиме передачи. Через резисторы R1—RN от ведомых на вход RxD ведущего поступает отрицательное напряжение логической единицы.
По приведённой схеме организуют сеть из одного ведущего и нескольких ведомых устройств. Число ведомых ограничено лишь нагрузочной способностью передатчиков. Обмен информацией в такой сети можно осуществить, например, придерживаясь стандартного протокола ModBus или любого другого, предполагающего наличие ведущего и ведомых устройств.
Кроме того, по этой схеме удобно присоединять к единственному разъёму СОМ-порта компьютера-ведущего несколько периферийных устройств, одновременная работа которых не предполагается. Это избавляет от необходимости часто перестыковывать разъёмы.
О. ВАЛЬПА, г. Миасс Челябинской обл.
«Радио» №4 2012г.