Аннотация
В статье рассмотрен вариант модификации серийно выпускаемых многопортовых адаптеров расширения ввода-вывода, построенных на микросхемах NetMOS / MosChip MSC98XX-CV и SystemBase SB16C1052PCI, для реализации последовательного физического интерфейса RS-422 со скоростями обмена данными до 1 Мбод.
Текст
Со времен компьютеров IBM PC последовательные порты персональных ЭВМ, рабочих станций и серверов, функционирующие по протоколу UART, в большинстве случаев используют физический сигнальный интерфейс RS-232. Раньше последовательные порты, или COM-порты в терминологии системного программного обеспечения, применялись главным образом для подключения манипуляторов типа мышь и модемов для коммутируемых телефонных линий и прочих низкоскоростных каналов связи. В современной вычислительной технике эти периферийные устройства подключаются по шине USB. Тем не менее, последовательные порты RS-232 продолжают использоваться для сопряжения с различным технологическим оборудованием, например, со сканером штрих-кода, а также для различных отладочных и диагностических нужд для работы в режиме терминала со встроенным программным обеспечением таких устройств, как сетевые коммутаторы третьего уровня, контроллеры, источники бесперебойного питания и т.п.
Последовательный сигнальный интерфейс RS-232 использует двухполярные сигналы с амплитудой от 5 до 15 вольт, при этом отрицательное напряжение соответствует логической единице, а положительное напряжение – логическому нулю. Сигналами с такой амплитудой невозможно передавать данные на высоких скоростях, в силу чего максимальная скорость для стандартного последовательного порта ограничена 115,2 кбод. При синхронизации UART класса 16С550 от сигнала с частотой 1,8432МГц скорости 115,2 кбод соответствует установка регистра DLL в ноль, а регистра DLM в 00000001.
Помимо сигнального интерфейса RS-232 последовательные порты могут использовать стандарты RS-422 и RS-485, позволяющие передавать данные в виде электрических сигналов по кабелю со скоростью до 10 Мбод на расстояниях 10-20м, и обеспечивающие дальность связи до 1500 м на низких скоростях. Применение сигнальных стандартов RS-422 и RS-485 с интерфейсами UART распространено в промышленной и специальной аппаратуре, рассчитанной на тяжёлые условия эксплуатации.
Для сопряжения персональных компьютеров и промышленных ЭВМ с последовательным интерфейсом RS-422 выпускаются специализированные адаптеры ввода-вывода, реализующие до 16 каналов UART. В качестве примера можно рассмотреть адаптер PCL-743 фирмы Advantech для системной шины ISA, показанный на рис. 1. Данный адаптер содержит два контроллера UART 16C550, управляющую ПЛИС Xilinx XC9572 и микросхемы приёмников и передатчиков RS-422 / RS485. Путём установки переключателей задаются адресные диапазоны, которые адаптер использует для контроллеров 16С550. При верной установке переключателей возможно сконфигурировать адаптер для работы в качестве стандартных COM-портов, определяемых средствами BIOS и операционной системой. Для этого нужно установить базовые адреса контроллеров 16С550 в значения из списка: 02E8h, 02F8h, 03E8h, 03F8h, таким образом, чтобы не было совпадений с адресными диапазонами COM-портов материнской платы.
Кроме того, адаптер позволяет настроить режим работы физического интерфейса для каждого из двух портов в отдельности либо по стандарту RS-422, либо по стандарту RS-485.
Для достижения высоких скоростей в адаптере PCL-743 установлен кварцевый генератор, формирующий частоту 14,7456МГц, которая в 8 раз выше стандартной частоты 1,8432МГц. Положением крайнего правого переключателя задаётся частота синхронизации контроллеров 16C550: либо стандартная, либо увеличенная в 8 раз. Работа на высокой частоте позволяет работать со скоростями до 921,6 кбод, для чего в программном обеспечении выбирается настройка скорости 115,2 кбод.
Джамперы в левой части платы адаптеры позволяют вручную настроить линии прерывания для каждого канала UART.
Рассмотренный адаптер является достаточно дорогим и устаревшим решением в виду отсутствия шины ISA в современных вычислительных системах.
Рис. 1. Интерфейсный адаптер PCL-743 фирмы Advantech
Предлагается рассмотреть реализацию адаптеров последовательных портов, работающих по стандарту RS-422 со скоростями до 1 Мбод, путём модификации недорогих контроллеров традиционных периферийных интерфейсов для системной шины PCI, широко представленных на рынке.
За основу для описанных в статье адаптеров взяты многопортовые контроллеры производителя Espada, основанные на микросхемах MCS9820, MCS9835, MCS9845 фирмы MosChip. Семейство микросхем MCS9805, MCS9815, MCS9820, MCS9835, MCS9845 разработано фирмой NetMOS 10-12 лет назад с высокой степенью унификации разводки выводов и внутренней логической организации. Эта унификация позволила разработать ряд контроллеров периферийных интерфейсов, использующих общий дизайн печатной платы.
Следующие контроллеры Espada построены на одной печатной плате, и отличаются исключительно конфигурацией установленных разъёмов и электронных компонентов:
• FG-PIO9820-1S-01-CT01 – один порт RS232, микросхема MCS9820;
• FG-PIO9835-2S-01-CT01 – два порта RS232, микросхема MCS9835;
• FG-PIO9835-2S1P-01-CT01– один порт LPT, два порта RS232, микросхема MCS9835;
• FG-PIO9805-1P-01-CT01– один порт LPT, микросхема MCS9805;
• FG-PIO9815-2P-01-CT01– два порта LPT, микросхема MCS9815.
Также унифицированную печатную плату используют контроллеры Espada, основанные на микросхеме MCS9845, имеющей внешнюю асинхронную шину, посредствам которой подключаются дополнительные контроллеры UART типов 16C550, 16C552, 16C554:
• FG-PIO9845-4S-01-CT01 – четыре порта RS232, микросхемы MCS9845 + 2шт. 16С550;
• FG-PIO9845-6S-01-CT01 – шесть портов RS232, микросхемы MCS9845 + 16С554.
Внешний вид контроллера максимальной конфигурации с шестью последовательными портами RS232 показан на рис. 2.
Рис. 2. Интерфейсный адаптер RS232 производства Espada
В оригинальной конфигурации все перечисленные адаптеры Espada имеют преобразователи уровня для работы с интерфейсом RS-232 и настроены на работу с максимальной скоростью 115,2 кбод. Тем не менее, в ранних версиях документации на микросхемы MCS98xx-CV указана максимальная скорость работы контроллеров последовательных портов равная 1Мбод [1, 2]. В более поздней документации максимальную скорость сократили до 115,2 кбод [3, 4], что, вероятнее всего, было сделано из коммерческих соображений в силу выхода на рынок более развитых интерфейсных микросхем MosChip MCS9865-IV, поддерживающих функцию инициатора (мастера) шины PCI.
Микросхемы MCS9820, MCS9835, MCS9845 имеют до двух интегрированных контроллеров UART класса 16C550, использующих отдельно настраиваемые через конфигурационные регистры PCI диапазоны адресов ввода-вывода ёмкостью восемь байт. Адаптеры, реализующие более двух последовательных портов, используют связку микросхем MCS9845 и 16C550 (16C552, 16C554), соединённых асинхронной 8-разрядной локальной шиной, на которую транслируются транзакции чтения и записи шины PCI по адресам ввода-вывода, принадлежащим диапазонам дополнительных контроллеров UART в составе микросхем 16C550 (16C552, 16C554). Диапазоны адресов ввода-вывода дополнительных контроллеров UART настраиваются также через регистры базовых адресов — BAR в конфигурационном пространстве PCI. Регистры конфигурационного пространства PCI реализованы согласно стандарту [5] в микросхемах MCS98xx и доступны для чтения и/или записи средствами системного контроллера в составе чипсета.
Для синхронизации контроллеров UART в составе микросхем MCS9820, MCS9835, MCS9845 предусмотрены два входа подачи несущей частоты:
• сигнал ACLK (вывод 59) задаёт несущую частоту для UART-A,
• сигнал BCLK (вывод 57) задаёт несущую частоту для UART-B.
Несущая частота контроллера UART класса 16C550 должна быть в 16 раз выше бодовой скорости. Таким образом, для скорости 115,2 кбод требуется несущая 1,8432 МГц, а для скорости 1 Мбод несущая частота должна быть равна 16 МГц.
На входы ACLK и BCLK согласно фирменной документации MosChip [1-4] предлагается подавать сигналы с тактового генератора, входящего в состав микросхем MCS98xx. Тем не менее, на эти входы можно подавать сигнал от внешнего источника синхронизации с уровнями КМОП или ТТЛ.
Встроенный тактовый генератор требует внешнего кварцевого кристалла, подключённого между входом XTAL1 (вывод 62) и выходом XTAL2 (вывод 61) и формирует три выходные частоты:
• сигнал 3XCLK (вывод 55) с частотой, полученной делением частоты кварцевого резонатора на 3,
• сигнал 6XCLK (вывод 56) с частотой, полученной делением частоты кварцевого резонатора на 6,
• сигнал 12XCLK (вывод 58) с частотой, полученной делением частоты кварцевого резонатора на 12.
В оригинальной конфигурации адаптеров интерфейса RS-232 на основе микросхем MCS9820, MCS9835, MCS9845 используется кварцевый резонатор с частотой 22,1184 МГц, а на входы ACLK и BCLK подаётся сигнал с выхода 12XCLK, частота которого, соответственно, составляет 1,8432 МГц.
На большинстве адаптеров, основанных на микросхемах MCS9820, MCS9835, MCS9845, имеются резисторные перемычки габарита 0603, позволяющие путём монтажа в различные позиции на плате подавать на входы ACLK и BCLK сигналы с выходов 3XCLK, 6XCLK и 12XCLK. Таким образом, заменив кварцевый резонатор на аналог с частотой 48 МГц, и перепаяв перемычки в положение, соответствующее коммутации входов ACLK и BCLK на выход 3XCLK, получится несущая частота интегрированных контроллеров UART равная 16 МГц. После такой доработки системная скорость последовательного порта 115,2 кбод (в настройках программного обеспечения) будет соответствовать реальной скорости 1 Мбод.
Результат такой доработки, выполненной на адаптерах Espada FG-PIO9820 или FG-PIO9835, показан на рис. 3.
Рис. 3. Доработка адаптера Espada для поддержки скорости 1 Мбод
Подавляющее большинство представленных на рынке интерфейсных адаптеров последовательных портов реализуют интерфейсы RS-232, выведенные на разъёмы DB-9M. Интерфейс RS-232 изначально был ориентирован на подключение телекоммуникационной аппаратуры, вследствие чего имеет ряд специальных сигналов, реализованных также в контроллерах UART класса 16С450 и 16С550.
Классическая схема соединения устройств по интерфейсу RS-232 включает терминальное оборудование DTE (Data Terminal Equipment) и связное оборудование передачи данных DCE (Data Communication Equipment), связанные между собой прямым кабелем. Под понятием «прямой кабель» подразумевается кабель с разъёмами типа розетка и вилка, в которых соединены контакты под одним номером (котакт-1 вилки соединён с контактом-1 розетки, котакт-2 вилки соединён с контактом-2 розетки, и т.д.)
Для терминального оборудования DTE традиционно используют разъём типа DB-9M (вилка), разводка которого показана рис. 4, а. В роли терминального оборудования выступает персональный компьютер, рабочая станция, сервер, коммутатор ЛВС, контроллер, либо иная аппаратура, содержащая микропроцессор, выступающий в роли генератора информационных посылок.
Для оборудования передачи данных DCE традиционно используют разъём типа DB-9F (розетка), разводка которого показана рис. 4, б. Оборудование передачи данных традиционно представлено модемами для различных каналов связи, формирующих специальные управляющие сигналы nRI – сигнал вызова от АТС и nDCD – признак обнаружения несущей частоты в канале связи. Также в роли DCE могут выступать любые иные устройства, выполняющие функции приёмника информационных посылок, или пассивного источника посылок, например исполнительные блоки и датчики.
а
б
Рис. 4. Разводка разъёмов RS-232:
a — вилки DB-9M для DTE, б – розетки DB-9F для DCE
Схема прямого соединения устройств DTE и DCE по интерфейсу RS-232 показана на рис. 5. Прямой интерфейсный кабель имеет розетку DB-9F для подключения к DTE (компьютеру) и вилку DB-9M для подключения к телекоммуникационному оборудованию DCE (модему). В кабеле выполнены 9 изолированных соединений в общем экране, соединённом с металлическими корпусами вилки и розетки на концах.
В соединениях, не использующих специальные сигналы детектора несущей nDCD и вызова nRI, деление устройств на типы DTE и DCE достаточно условное и определяется главным образом типом разъёма: вилка у DTE и розетка у DCE.
Рис. 5. Схема прямого соединения по интерфейсу RS-232
В современном оборудовании, исходя из соображений унификации, предпочитают использовать разъёмы типа DTE. Для соединения двух устройств DTE используют ноль-модемный кабель, также нередко называемый кросс-кабелем. Такой кабель коммутирует попарно передатчики и приёмники различных устройств в следующем порядке: TxD-RxD, nRTS-nCTS, nDTR-nDSR. В полной реализации кросс-кабеля RS-232 могут быть выполнены соединения nDTR-nDCD и nDTR-nRI.
В общем случае, для передачи данных достаточно коммутации TxD-RxD, ибо все остальные сигналы являются внеполосными (sideband) и могут участвовать в процессе обмена данными только на программном уровне (исключение составляет режим Auto-CTS в старших версиях UART класса 16С550, активируемый битом MCR[5]).
Схема соединения ноль-модемным кабелем двух устройств DTE по интерфейсу RS-232 показана на рис. 6.
Рис. 6. Схема соединения ноль-модемным кабелем по интерфейсу RS-232
В большинстве современных интерфейсных адаптеров RS-232 в качестве внешних разъёмов используются угловые вилки DRB-9MA, предназначенные для монтажа на печатную плату и фиксации в планке крепления к корпусу. В многопортовых адаптерах используются дополнительные планки с закреплёнными на них разъёмами DB-9M, к которым припаяны плоские шлейфы с шагом 1,27мм с запрессованными розетками IDC-10 на концах, рис. 7.
Рис. 7. Дополнительная планка с разъёмами DB-9M
Гнёзда IDC-10 имеют одно глухое отверстие на месте десятого контакта, выполняющее роль ключа. Ответная часть на печатной плате контроллера представляет собой штыревой соединитель PLD-10 с удалённым десятым контактом. Разъёмы для подключения двух дополнительных планок видны на задней стороне платы адаптера FG-PIO9845-6S-01-CT01, показанной на рис. 2.
Следует отметить, что разводка штыревых соединителей PLD-10 на большинстве адаптеров RS-232 унифицирована таким образом, что первый контакт гнезда IDC-10 на кабеле дополнительной планки соединяется с первым контактом внешнего разъёма DB-9M, второй контакт гнезда IDC-10 соединяется со вторым контактом разъёма DB-9M, и т.д. Таким образом, разводка штыревых соединителей по номерам контактов повторяет разводку внешних разъёмов DB-9M (рис. 8). Соответствующая распайка разъёма DB-9M показана на рис. 10 (первый контакт – красный провод шлейфа).
img src=«habrastorage.org/files/658/f59/b3c/658f59b3c3614cf68e2b2358a506fe0c.jpg»/>
Рис. 8. Разводка сигналов RS-232 на штыревом соединителе PLD-10
Рис. 9. Распайка разъёма DB-9M
Физический интерфейс RS-232 как на интерфейсных адаптерах, так и на материнских платах, традиционно реализует микросхема преобразователя уровней GD75232, или её полный аналог SN75185 [6, 7]. Эти микросхемы содержат 3 драйвера двухполярных сигналов RS-232 для цепей TxD, nDTR, nRTS и пять приёмников-преобразователей уровня RS-232 в сигнал ТТЛ. Каждая микросхема GD75232 / SN75185 использует три потенциала питания: VSS – минус 12В, VCC – 5В и VDD – 12В. Все напряжения измеряются относительно общего нуля – GND.
Существует традиционная схема подключения контроллера UART к порту RS-232 посредствам микросхемы GD75232 / SN75185; она представлена на рис. 10. Именно эта схема реализована в большинстве интерфейсных адаптеров RS-232, в том числе на платах Espada.
Рис. 10. Схема подключения контроллера UART к порту RS-232
Физический интерфейс RS-422 регламентирован стандартом TIA/EIA-422 определяющим уровни и форму сигналов дифференциальных сигналов, позволяющие передавать данные по витым парам проводов со скоростями до 10 Мбод (пропускная способность зависит от разрядности интерфейса и способа кодирования данных).
Примером использования сигналов RS-422 в параллельных интерфейсах является «высоковольтный» дифференциальный SCSI-интерфейс (HVD – High-Voltage Differential).
Последовательные асинхронные интерфейсы UART в промышленном оборудовании также часто используют физический интерфейс RS-422. В отличие от распространённого в промышленной и специальной технике дифференциального интерфейса RS-485 физический интерфейс RS-422 ориентирован на топологию соединений типа точка-точка.
Использование физического интерфейса RS-422 вместо RS-232 в последовательных портах позволяет увеличить скорость передачи данных на коротких соединениях, либо значительно увеличить дальность связи одного соединения.
Реализации интерфейса UART с физическим уровнем RS-422 в большинстве случаев используют четыре пары проводов: две пары для передачи данных в прямом и обратном направлении и две пары для вспомогательных сигналов RTS-CTS. Схема соединения двух устройств по последовательному интерфейсу RS-422, работающему по протоколу UART, приведена на рис. 11.
Рис. 11. Схема соединения по последовательному интерфейсу RS-422
Единой унифицированной разводки дифференциальных сигналов RS-422 в разъёмах DB-9 применительно к последовательным портам не существует. Предлагается рассмотреть разводку, реализованную фирмой Advantech в адаптере PCL-743 (рис. 1), показанную на рис. 12.
Рис. 12. Разводка разъёма DB-9M для интерфейса RS-422
Переоборудование адаптеров последовательных портов для реализации интерфейса RS-422 предлагается выполнить следующим способом:
1. демонтировать микросхемы преобразователей уровня RS-232,
2. соединить следующие сигналы контроллера UART со штыревыми соединителями PLD-10: TxD, RxD, nRTS, nCTS.
3. на входы nDCD и nDSR контроллера UART подать низкий уровень (GND), а на вход nRI – высокий уровень (+5В), либо выполнить соединение сигналов контроллера UART: nDTR-nDSR-nDCD-nRI,
4. на контакты 1 и 9 штыревого соединителя PLD-10 подать потенциал +5В для питания приёмо-передатчиков RS-422,
5. на штыревые соединители PLD-10 адаптера установить модуль приёмо-передатчиков RS-422, к которому подключаются гнёзда IDC-10 на шлейфах от разъёмов DB-9M, установленных на планке,
6. контакты 4 и 6 соединителя PLD-10 соединить с цепью GND.
Схематично принцип описанной модернизации адаптера отражает рис. 13.
Рис. 13. Переоборудование адаптера RS-232 для интерфейса RS-422
В результате описанных действий разводка сигналов в штыревых соединителях PLD-10 изменится согласно рис. 14.
Рис. 14. Разводка сигналов UART на штыревом соединителе PLD-10
Доработку предлагается выполнить на печатной плате адаптера монтажным проводом МГТФ или аналогичным, используя контактные площадки в объёме посадочного места микросхемы GD75232 / SN75185. Топология соединений для двух вариантов коммутации незадействованных сигналов nDTR, nDSR, nDCD, nRI контроллера UART показана на рис. 15. Расположение штыревых соединителей показано на примере адаптеров Espada FG-PIO9820 и FG-PIO9835.
а
б
Рис. 15. Топология связей после переоборудования адаптера
Учитывая унифицированную схему включения микросхем GD75232 / SN75185 (рис. 10), можно сделать вывод, что для выполнения доработки достаточно демонтировать эти микросхемы и выполнить монтаж перемычками из провода по аналогии с рис. 15. Вид печатной платы адаптера FG-PIO9835-2S1P-01-CT01 после демонтажа микросхем GD75232 / SN75185 показан на рис. 16. Окончательный вид выполненных соединений по рис. 15, а и по рис.15, б на одной плате иллюстрирует рис. 17.
Рис. 16. Печатная плата адаптера FG-PIO9835-2S1P-01-CT01 после демонтажа микросхем GD75232 / SN75185
Рис. 17. Печатная плата адаптера FG-PIO9835-2S1P-01-CT01 с двумя вариантами доработки
Модуль приёмо-передатчиков RS-422 предлагается выполнить на отдельной плате с использованием микросхем передатчика AM26LS31C и приёмника AM26LS33AC [9, 10]. Принципиальная электрическая схема модуля приёмо-передатчиков RS-422 приведена на рис. 18. Модуль имеет четыре посадочных места под штыревые разъёмы PLD-10, два из которых предназначены для распайки на разъёмы адаптера, а два других – для установки разъёмов PLD-10R для подключения шлейфов от планки.
Рис. 18. Принципиальная схема модуля приёмо-передатчиков RS-422
Топология печатной платы, реализующей модуль приёмо-передатчиков RS-422 согласно электрической схеме, представленной на рис. 18, изображена на рис. 19. Печатная плата выполнена без внутренних слоёв и предназначена для установки микросхем AM26LS в корпусе SOIC-16, а также чип-компонентов, габариты которых указаны на электрической схеме. Электролитический алюминиевый конденсатор имеет диаметр 5 или 6 мм и высоту не более 8 мм. Светодиод может быть в исполнении 1206 или монтироваться в отверстия проволочными выводами.
Разъёмы, расположенные в левой части схемы, не устанавливаются на плату. В их отверстия распаиваются свободные концы штыревых разъёмов PLD-10, установленных на плате адаптера.
Резисторы номинала 120 Ом габарита 1206 выполняют функцию согласования волнового сопротивления, необходимую в кабельных соединениях большой длины. Резисторы номиналом 10 кОм установлены для обеспечения смещения уровня напряжения в сторону пассивного состояния при отсутствии источника сигнала в линии.
Последовательные резисторы номиналом 100 Ом предназначены для ограничения тока при сопряжении с контроллерами UART, не допускающими входные уровни сигнала с напряжением 5 вольт.
Последовательные резисторы с номиналом 22 Ома устанавливаются для защиты передатчиков от перегрузок по току. Если такая защита не нужна, вместо данных резисторов следует устанавливать перемычки габарита 0603.
Топология платы ориентирована на применение с адаптерами Espada.
Рис. 19. Топология печатной платы модуля приёмо-передатчиков RS-422
Модуль приёмо-передатчика RS-422 можно собрать, используя макетную плату с шагом отверстий 2,5 мм или 2,54 мм, установив микросхемы AM26LS31 и AM26LS33 в корпусе DIP-16. Этот вариант исполнения позволит избежать затрат на изготовление заказной печатной платы, наподобие показанной на рис. 19, но увеличит сложность и объём монтажных работ. Соединения на макетной плате придётся выполнять монтажным проводом.
Внешний вид собранных модулей приёмо-передатчиков интерфейса RS-422 показан на рис.20 (одноканальный вариант) и рис. 21 (двухканальное исполнение).
Одноканальный модуль не имеет токоограничительных резисторов номиналом 22 Ом, согласующих резисторов 120 Ом габарита 1206 и одного разъёма. Перечисленные компоненты используются во втором канале UART. Одноканальный вариант исполнения предназначен для доработки адаптеров с одним последовательным портом, построенных на микросхеме MCS9820. Изображение адаптера Espada FG-PIO9820-1S-01-CT01 с выполненной доработкой приведено на рис. 22.
Рис. 20. Одноканальный модуль приёмо-передатчиков RS-422
Рис. 21. Двухканальный модуль приёмо-передатчиков RS-422
Модули устанавливаются на адаптеры таким образом, что микросхемы AM26LS31 и AM26LS33 располагаются сверху. Это упрощает их замену в случае выхода из строя.
Рис. 22. Одноканальный адаптер последовательного интерфейса RS422
Двухканальный модуль приёмо-передатчика RS-422 предназначен для установки на адаптеры с двумя последовательными портами, построенными на микросхеме MCS9835. Расстояние между разъёмами на модуле соответствует печатной плате адаптеров Espada FG-PIO9835-2S-01-CT01 и FG-PIO9835-2S1P-01-CT01. Изображение адаптера Espada FG-PIO9835-2S1P -01-CT01 с выполненной доработкой приведено на рис. 23.
Рис. 23. Двухканальный адаптер последовательного интерфейса RS422
Доработанные адаптеры Espada были протестированы диагностическим программным обеспечением для работы с последовательными портами в ОС Microsoft Windows в составе рабочей станции (рис. 24). Тестирование выполнялось с использованием сетевого четырёхпарного кабеля UTP для межмашинного прямого соединения (ноль-модем), а также на заглушке, замыкающей тракт данных TxD на RxD и тракт управления RTS на CTS. В кабеле UTP каждая витая пара используется для передачи одного из дифференциальных сигналов. Две пары реализуют перекрёстное соединение TxD-RxD и RxD-TxD, а две оставшиеся пары – перекрёстное соединение RTS-CTS и CTS-RTS. В случае соединения по последовательному интерфейсу RS-422 устройств с некачественным заземлением корпусов, либо с изолированными корпусами, необходимо реализовать в кабеле дополнительную цепь, соединяющую корпуса. Это необходимо для выравнивания потенциалов между устройствами. В противном случае разность потенциалов может вывести из строя приёмо-передатчики интерфейса. Микросхема AM26LS33AC допускает отклонение входного напряжения от нуля не более чем на 15 вольт.
Рис. 24. Тестирование двухпортового адаптера RS-422
Тестовая заглушка представляет собой розетку DB-9F, заключённую в пластиковый разборный корпус для разъёмов D-Sub (рис. 25). Внутри корпуса выполнены следующие соединения: 1-4, 2-3, 6-9, 7-8.
Тестирование прошло без сбоев на системной скорости 115,2 кбод, соответствующей реальной скорости 1 Мбод (вследствие замены кварцевого резонатора и изменения делителя частоты).
Рис. 25. Тестовая заглушка
Одним из недостатков микросхем фирмы MosChip является ограничение частоты шины PCI 33МГц. Для работы на сегментах шины с тактовой частотой 66МГц (66,667МГц, период 15нс) можно использовать контроллеры других производителей. В качестве доступного решения с таким контроллером можно рекомендовать адаптер Espada FG-PMIO-B1T-0001S-1-CT01. Данный адаптер построен на микросхеме SB16C1052PCI фирмы SystemBase [8].
Контроллер SystemBase SB16C1052PCI поддерживает интерфейс исполнителя (Target) 32-разрядной шины PCI с частотой до 66МГц и реализует один или два последовательных порта с буферами FIFO большой ёмкости: 256 байт против 16 байт в традиционном контроллере класса 16C550.
Ради эксперимента для поддержки интерфейса RS-422 был доработан одноканальный адаптер FG-PMIO-B1T-0001S-1-CT01. При этом штатный порт RS-232 не подвергся изменениям. Путём перепайки резисторной перемычки RJ6 в положение 2-3 был активирован второй интерфейс UART контроллера SB16C1052PCI, выходящий на посадочное место микросхемы U3. Установка нулевого резистора R19 подключает 9 контакт второго порта (цепь nRI) к 9 контактной площадке посадочного места U3 (рис. 26). Разводка преобразователя уровня RS-232 и штыревого соединителя J2 аналогична схеме на рис. 10. Таким образом, путём выполнения доработки, показанной на рис. 15 и установки штыревого соединителя в посадочное место J2, получен интерфейс UART с разводкой на штыревой разъём, показанной на рис. 14.
Вид доработанного адаптера FG-PMIO-B1T-0001S-1-CT01 с установленным одноканальным модулем приёмо-передатчика RS-422 показан на рис. 27. Внешний разъём второго порта выполняется в виде вилки DB-9M с плоским шлейфом, на конце которого запрессовывается гнездо IDC-10 (рис. 9). Вилка DB-9M может быть установлена на планку или непосредственно в стенку корпуса при наличии соответствующей прорези.
В результате получился комбинированный двухпортовый адаптер RS-232 и RS-422. При этом оба последовательных порта работают на стандартном наборе скоростей.
Рис. 26. Топология преобразователей уровня RS-232 адаптера FG-PMIO-B1T-0001S-1-CT01
Рис. 27. Доработанный адаптер FG-PMIO-B1T-0001S-1-CT01
Выводы
• Интерфейс RS-422 позволяет строить интерфейсы последовательных портов, работающие со скоростями до 1 Мбод, а также даёт возможность значительно увеличить длину кабеля по сравнению с интерфейсом RS-232.
• Микросхемы серии MSC98xx фирмы MosChip допускают работу последовательных портов на скорости 1 Мбод, для чего требуется несложная доработка адаптера.
• Физический интерфейс RS-422 возможно реализовать на двух микросхемах и небольшом количестве пассивных компонентов, что является весьма недорогим техническим решением. Модуль приёмо-передатчика RS-422 может быть построен на небольшой печатной плате размерами 3х4 см.
• Для построения кабельной инфраструктуры RS-422 подходит стандартный сетевой кабель UTP или FTP с волновым сопротивлением 100 Ом.
Цитированная литература
1. MCS9820 PCI Single UART. Datasheet Rev. 2.0. MosChip Semiconductor, 22 May 2006.
2. MCS9835 PCI Dual UART with Printer Port. Datasheet Rev. 2.0. MosChip Semiconductor, 22 May 2006.
3. MCS9820 PCI Single UART. Datasheet Rev. 2.4. MosChip Semiconductor, 29 July 2007.
4. MCS9835 PCI Dual UART with Printer Port. Datasheet Rev. 2.4. MosChip Semiconductor, 31 July 2007.
5. PCI Local Bus Specification. Revision 3.0. – PCI Special Interest Group, 2002. – 344с.
6. GD65232, GD75232 Multiple RS-232 drivers and receivers. Texas Instruments SLLS206J. MAY 1995, REVISED NOVEMBER 2004.
7. SN75185 Multiple RS-232 drivers and receivers. Texas Instruments SLLS181D. DECEMBER 1994, REVISED JANUARY 2006.
8. SB16C1052PCI PCI Target Interface Controller with Dual UART. Datasheet Revision 1.00. SystemBase Co., Ltd. July 2009.
9. AM26LS31C, AM26LS31M Quadruple differential line driver. Texas Instruments SLLS114I. JANUARY 1979, REVISED FEBRUARY 2006.
10. AM26LS32AC, AM26LS32AI, AM26LS32AM, AM26LS33AC, AM26LS33AM Quadruple differential line receivers. Texas Instruments SLLS115D. OCTOBER 1980, REVISED MARCH 2002.
Автор: FPGA-Mechanic