Современные аппаратные средства связи микроконтроллера с компьютером по интерфейсу RS-232. Часть 3
Все статьи цикла:
- Современные аппаратные средства связи микроконтроллера с компьютером по интерфейсу RS232. Часть 1
- Современные аппаратные средства связи микроконтроллера с компьютером по интерфейсу RS-232. Часть 2
- Современные аппаратные средства связи микроконтроллера с компьютером по интерфейсу RS-232. Часть 3
1.4.1. Простой гальванически изолированный интерфейс RS-232 на базе микросхем развязки ADUM1201, преобразователя SN75155 и оптронов
На рис. 18 показана схема сопряжения компьютера с микроконтроллером (например, из семейства MSC12XX) с помощью гальванически изолированного интерфейса RS-232. Сам микроконтроллер показан условно в правой нижней части схемы.
В схеме в качестве гальванических развязок помимо двунаправленной развязки ADUM1201 (DD2) используются широко известные, доступные и дешевые оптроны H11L1 (DD3) и TLP521 (DD4). В схеме также применена известная высокоскоростная микросхема одноканального приемопередатчика SN75155 (DD1) от Texas Instruments, которая редко используется из-за повышенного энергопотребления. Ток потребления части схемы со стороны компьютера составляет около 12 мА; из них 11 мА потребляет SN75155. Для питания части схемы со стороны компьютера используется DC/DC-конвертор RQD-0512 (DD5) компании Recom мощностью 1 Вт, преобразующий входное напряжение +5 В в два напряжения +12 В и –12 В. Он выдает ток по 42 мА на каждое напряжение питания (с лихвой перекрывающий энергию, требующуюся для питания развязки). Микроконтроллер показан схематично; к нему подходят сигналы данных RS-232 — TxDM и RxDM и сигналы управления — RST и PSEN.
В прямоугольнике, очерченном пунктирной линией, показана схема кабеля связи с компьютером. Линия RxD соединена с линией DSR непосредственно в разъеме DB9M, который подключается к COM-порту компьютера. Таким образом, драйвер SN75155 (2-й и 7-й вывод) работает сразу на два входа (на два приемника RS-232). Для получения напряжения питания +5 В (питание ADUM1201) используется малопотребляющий и достаточно прецизионный стабилизатор LP2950CZ5.0 (DD6). Схема идеально работает на скорости обмена 115 200 бод на расстоянии между компьютером и микроконтроллером до 15 м.
Микросхема ADUM1201 выпускается в корпусе SOIC8, который неудобен для ручного макетирования. Для удобства работы с этой микросхемой при ручном макетировании автор рекомендует изготовить платупереходник SOIC8→DIP8, вариант разводки которой приведен на рис. 19.
В плате-переходнике в качестве «ножек» используются штырьки, которые легко «отламываются» от линейки из 40 двусторонних штырьков круглого сечения диаметром около 0,5–0,7 мм. Верхняя часть штырька (меньшего диаметра) впаивается в плату-переходник (лишняя его часть откусывается), а нижняя служит ножкой. Штырек, связанный с 1 выводом микросхемы, можно не откусывать; по нему удобно ориентировать плату-переходник при установке ее в панельку.
Необходимо отметить, что расстояние между центрами ножек (штырьков), находящихся на одной линии, но с противоположных сторон платы-переходника (например, между центрами 1-й и 8-й ножек), составляет по стандарту корпуса DIP 0,3 дюйма или 7,62 мм. Учитывая толщину штырька, а также погрешность монтажа, расстояние между штырьками может составить чуть менее 6 мм. Максимальное же расстояние между концами ножек, находящихся на одной линии, но с противоположных сторон микросхемы в корпусе SOIC8 (например, между концами 1-й и 8-й ножек), составляет 6,2 мм. Поэтому микросхема в корпусе SOIC8 «не влезет» на плату-переходник с топологией, показанной на рис. 19 (в левой нижней части рисунка).
Если же «подогнуть» ножки микросхемы под ее «дно», как показано на рис. 20, то она свободно умещается на плату-переходник, и еще даже остается свободное пространство, что намного упрощает пайку. Для того чтобы более прояснить ситуацию, напомним, что, как известно, аналогичное расположение выводов имеют все конденсаторы, резисторы и диоды, предназначенные для поверхностного монтажа, а также микросхемы в корпусах QFN. Следует также отметить, что процедуру «подгибания» можно производить только один раз, иначе ножки могут сломаться.
Фотография платы-переходника SOIC8→DIP8 для развязки ADUM1201 показана на рис. 21. Как можно убедиться, микросхема ADUM1201 (с подогнутыми ножками) очень удачно «вписывается» в топологию платы. На фотографии можно заметить, что штырек, связанный с 1 выводом микросхемы, не откусан и служит для удобства ориентации (как уже говорилось ранее).
1.4.2. Гальванически изолированный интерфейс RS-232 на базе микросхем развязок ADUM1201, ADUM1200 и преобразователей ADM3202 и MAX3181
На рис. 22 приведена схема гальванически изолированного интерфейса RS-232 на базе двух микросхем развязок ADUM1201(DD2), ADUM1200(DD3) и преобразователей ADM3202(DD1), MAX3181(DD5). Схема, как и предыдущая (рис. 18), формирует четыре сигнала — TxDM, RxDM, RST и PSEN для сопряжения компьютера с микроконтроллерами семейства MSC12XX, поэтому условное изображение микроконтроллера не нужно.
В связи с тем, что преобразователь ADM3202 имеет два передатчика (10–7 и 11–14 выводы DD1), линии RxD и DSR разнесены. Это значительно повышает надежность передатчиков, так как каждый из них работает на один вход. Схема кабеля сопряжения с компьютером показана в прямоугольнике, очерченном пунктиром. Как можно увидеть, для каждой из линий RxD и DSR предусмотрен отдельный провод, хотя эти два сигнала формируются преобразователем ADM3202 из одного и того же сигнала (RxDa), для генерации которого используется единственный канал развязки ADUM1201 (2–7 выводы DD2). Часть схемы, непосредственно контактирующая с интерфейсом компьютера (слева от пунктирной линии, условно показывающей изоляционный барьер), питается от единственного источника питания напряжением +5 В (сигнал «+5A»), формируемым DC/DC-преобразователем RQS-0505 мощностью всего 0,25 Вт. Размер корпуса RQS-0505 (и соответственно стоимость) меньше, чем у RQD-0512, использованном в предыдущей схеме (рис. 18). Кроме того, отпадает необходимость в дополнительном стабилизаторе +5 В (DD6 на рис. 18).
Для более удобного макетирования устройств, использующих обе развязки ADUM1201 и ADUM1200, автор рекомендует изготовить плату-переходник 2×SOIC8→DIP12, схема и вариант разводки которой приведен на рис. 23. Для того чтобы микросхемы «вписались» в топологию платы-переходника, их ножки следует подогнуть так же, как и для переходника SOIC8→DIP8 (см. рис. 20, 21).
Микросхема приемника RS-232 MAX3181 (DD5 на рис. 22) выпускается в планарном корпусе SOT23-5, который, как и корпус SOIC8 неудобен для макетирования, поэтому автор рекомендует изготовить переходник SOT23-6→DIP6 аналогично переходнику SOIC8→DIP8, показанному на рис. 19 (схема и вариант разводки не приводятся ввиду их простоты). Благодаря малым размерам микросхемы MAX3181 она свободно умещается на плате-переходнике без процедуры «подгибания» ножек.
На рис. 24 приведены фотографии вышеуказанных двух плат переходников: 2×SOIC8→DIP12 и SOT-23-6→DIP6.
Кроме того, следует отметить, что микросхема приемника MAX3181 труднодоступна (в малых количествах), поэтому вместо нее можно применить КМОП-транзистор 2N7000. Схема замены микросхемы MAX3181 на транзистор 2N7000 приведена в прямоугольнике, очерченном пунктиром, в левой нижней части рис. 22.
Несколько слов о достоинствах схемы рис. 22. Схема достаточно проста, в ней применены относительно доступные (и дешевые) компоненты, и она не содержит ни одного резистора (если использовать приемник MAX3181). Кроме того, схема идеально работает на скорости 115 200 бод, так как максимальные скорости работы ADM3202 и MAX3181 значительно выше и составляют 460 кбод и 1,5 Мбод соответственно. Длина кабеля связи с компьютером может достигать 20 м. Автор рекомендует эту схему гальванических развязок для большинства применений (не только для микроконтроллеров семейств MSC12XX).
1.4.3. Гальванически изолированный интерфейс RS-232 на базе микросхем развязок ADUM1201, ADUM1200 и преобразователя MAX1406
На рис. 25 приведена еще одна схема гальванически изолированного интерфейса RS-232 на базе развязок ADUM1201 и ADUM1200. Схема несколько проще, чем предыдущая (рис. 22), так как в ней применена единственная микросхема преобразователя интерфейса MAX1406 (DD1), включающая три приемника и три передатчика. В связи с этим отпадает необходимость в дополнительном приемнике (MAX3181, как в схеме на рис. 22). Правда, возникает необходимость в дополнительном стабилизаторе +5 В (DD5 — LP2950Z5.0) и, кроме того, требуется DC/DC-преобразователь с двумя (+12 В и –12 В) выходными напряжениями питания (DD4 — RQD-0512). Схема достаточно скрупулезно тестировалась автором и отлично работала на скорости 115 200 бод (как было упомянуто ранее, максимальная скорость работы MAX1406 составляет 230 кбод). Размах сигнала драйвера повышен и составляет около ±11,5 В на нагрузке в 5 кОм, что является несомненным преимуществом микросхемы MAX1406 перед упоминавшейся ранее ADM3202 (размах сигнала составляет ±10 В при питании +5 В). Длина кабеля связи (на такой скорости работы схемы) может достигать 20 м. Еще одно достоинство схемы в том, что она более удобна для макетирования, чем предыдущая (рис. 22), если использовать микросхему MAX1406 в корпусе DIP16 (MAX1406CPE). Правда, стоимость такой микросхемы (при малом количестве) довольно высока — почти $5.
И последнее, что необходимо отметить по поводу MAX1406. Эта микросхема была выпущена компанией MAXIM для прямой замены более старых микросхем MC145406 производства Motorola и SN75C1406 от Texas Instruments в устройствах, где требуется высокая скорость обмена в 115 200 бод, поскольку ни MC145406, ни SN75C1406 такую скорость обмена не поддерживают. Автор настоятельно рекомендует ни в коем случае не применять две последние микросхемы в качестве преобразователей интерфейса RS-232 (в схеме рис. 25). Эксперименты, проведенные автором с этими микросхемами, показали, что скорость обмена свыше 38 400 бод от них получить невозможно; кроме того, даже на такой скорости обмена они работают нестабильно, что приводит к частым «зависаниям» компьютера.
1.4.4. Гальванически изолированный интерфейс RS-232 на базе микросхем развязок ADUM1201, ADUM1200 и преобразователей MAX3190 и MAX3181
Малый размер микросхем гальванических развязок ADUM1201 и ADUM1200 и крошечный размер преобразователей MAX3190, MAX3181 и MAX3183 позволяют конструировать очень компактные устройства гальванически развязанного интерфейса RS-232, которые могут свободно умещаться на плате размером с обычную микросхему в DIP-корпусе. Такая плата, оснащенная «ножками», подобными ножкам микросхем в DIP-корпусах, может представлять собой что-то типа гибридной микросхемы в DIP-корпусе, которую, с одной стороны, можно легко сконфигурировать под ту или иную задачу, и с другой — очень удобно использовать для макетирования. Впоследствии такая «микросхема» после тестирования может быть установлена уже в готовое изделие. Ниже приводится два варианта подобных «гибридных микросхем» гальванически изолированного интерфейса, предназначенного для программирования и штатного режима работы микроконтроллеров семейства MSC12XX (1-й вариант) и семейств P89LPC9XX (2-й вариант).
1.4.4.1. Плата гальванически изолированного интерфейса на базе развязок ADUM1201, ADUM1200, MAX3181 иMAX3190 для микроконтроллеров семейства MSC12XX
На рис. 26 приведена схема гальванически изолированного преобразователя интерфейса на базе ADUM1201, ADUM1200, MAX3181 и MAX3190. Как видно из рисунка, схема состоит из трех инвертирующих приемников RS-232 — MAX3181 (DD4, DD5 и DD6), одного инвертирующего передатчика RS-232—MAX3190 (DD3), одной двухканальной двунаправленной развязки ADUM1201 (DD1) и одной двухканальной однонаправленной развязки ADUM1200 (DD2). Назовем условно такое устройство ADUMAX.
На рис. 27 приведен вариант разводки платы с размещением компонентов с двух сторон. На одной стороне платы (верхняя часть) находится двунаправленная развязка ADUM1201 (DD1) совместно с инвертирующим передатчиком MAX3190 (DD3) и инвертирующим приемником MAX3181 (DD4), на другой (нижняя часть) — двухканальная однонаправленная развязка ADUM1200 (DD2) и два инвертирующих приемника MAX3181 (DD5 и DD6).
На рис. 28 показаны фотографии платы «микросхемы» ADUMAX.
Здесь можно увидеть, что такая топология разводки компонентов позволила расположить 6 микросхем, 5 конденсаторов и 14 штырьков, которые являются «ножками» «микросхемы», на довольно ограниченном пространстве, соответствующем площади стандартной микросхемы в корпусе DIP16. На фотографии (рис. 28а) можно заметить явно выступающий (не откусанный) штырек, соответствующий 1 выводу «микросхемы» ADUMAX, по которому легко ориентировать плату при установке в панельку.
На рис. 29 приведена схема гальванической развязки на базе ADUMAX для микроконтроллеров семейства MSC12XX.
Как видно из рис. 29, схема формирует сигналы для микроконтроллера RxDM, RST и PSEN из сигналов интерфейса RS-232 соответственно TxD, DTR и RTS, а сигнал интерфейса RxD формируется сигналом микроконтроллера TxDM. Пунктиром показан изоляционный барьер. Схема тестировалась на скорости обмена 115 200 бод и показала отличные результаты. Длина кабеля связи с компьютером может достигать 20 м. В прямоугольнике, очерченном пунктиром, показана схема кабеля связи с компьютером.
Схема развязки достаточно проста и занимает мало места на плате.
1.4.4.2. Плата гальванически изолированного интерфейса на базе развязок ADUM1201, ADUM1200, MAX3181, MAX3183 и MAX3190 для микроконтроллеров семейства P89LPC9XX
На рис. 30 приведена схема платы гальванически изолированного интерфейса на базе развязок ADUM1201, ADUM1200, MAX3181, MAX3183 и MAX3190. Назовем такую плату «микросхемой» ADUMAX1. Из рис. 30 можно заметить, что ADUMAX1 отличается от ADUMAX (рис. 26) только тем, что два инвертирующих приемника ADUMAX — MAX3181(DD5 и DD6)—заменены на два неинвертирующих приемника MAX3183 (тe же DD5 и DD6). В остальном схемы и разводка плат идентичны.
На рис. 31 приведена схема гальванической развязки на базе ADUMAX1 для микроконтроллеров семейства P89LPC9XX. Как видно из рисунка, схема формирует сигналы для микроконтроллера RxDM, RST и Vcc из сигналов интерфейса RS-232 соответственно TxD, DTR и RTS, а сигнал интерфейса RxD формируется сигналом микроконтроллера TxDM. Сигнал Vcc формируется на стоке КМОП-транзистора BS250 (T1), исток которого соединен с источником питания +3,3 В, а на затвор подается сигнал ТТЛ-уровня с выхода приемника ADUMAX1 (выводы 10 и 16). На вход этого же приемника подается сигнал RTS с интерфейса RS-232. Пунктиром показан изоляционный барьер. Схема тестировалась на скорости обмена в 115 200 бод и показала отличные результаты. Длина кабеля связи с компьютером может достигать 20 м. В прямоугольнике, очерченном пунктиром, показана схема кабеля связи с компьютером. Схема достаточно проста и занимает мало места на плате.
1.4.5. Новейшие микросхемы гальванических развязок
В марте 2006 года компания Silicon Laboratories анонсировала выпуск новых гальванических развязок Si8440/1/2, работающих по тому же принципу, что и развязки iCoupler от Analog Devices (например, ADUM1200/1), о которых рассказывалось в предыдущей главе. Внутренняя структура развязок приведена на рис. 32, а принцип работы и цоколевка корпуса SOIC16 — на рис. 33.
Развязки Si8440/1/2 имеют три градации скоростей: A — 0–1 Мбод, B — 0–10 Мбод и C— 0–150 Мбод. Так, например, микросхема Si8441-A-IS работает на скоростях 0–1 Мбод. Потребление тока этой развязки составляет чуть менее 5 мА на канал. Для сравнения укажем, что потребление тока развязки ADUM1200/1AR (0÷1 Мбод) составляет около 1 мА, то есть примерно в 5 раз меньше. Однако максимальная скорость работы развязок ADUM1200/1 составляет только 25 Мбод (ADUM1200/1CR). Поскольку интерфейс RS-232 работает на скоростях до 0,1 Мбод (115 200 бод), максимальная скорость развязок Si8440/1/2-C (150 Мбод) не представляет особого интереса. Кроме того, корпус у Si8440/1/2 — «широкий» SOIC (16-Pin Wide Body SOIC) шириной 7,5 мм, тогда как корпус у ADUM1200/1 — «узкий» SOIC (ширина — 4 мм). Тем не менее, развязки Si8440/1/2, по мнению автора, заслуживают внимания, особенно если их стоимость (на канал передачи) будет ниже, чем у ADUM1200/1.
В том же марте 2006 года Analog Devices анонсировала еще одно семейство своих гальванических развязок ADUM5240/1/2, которое в буквальном смысле перевернуло общее представление (в том числе и автора) о применении DC/DC-конверторов в таких развязках. Развязки ADUM5240/1/2 имеют встроенный DC/DC-конвертор! Это уникальное свойство позволяет вообще отказаться от использования DC/DC-конверторов в гальванических развязках и таким образом сэкономить, с одной стороны, $6–12, с другой — дополнительное место на плате.
На рис. 34 приведены структурные схемы развязок ADUM5240/1/2, а на рис. 35 — цоколевка корпусов SOIC8 (узких).
Развязки ADUM5240/1/2 имеют максимальную скорость работы 10 Мбод (ADUM5240BR), а на скорости до 1 Мбод потребляют около 5 мА (на оба канала). Встроенный DC/DC-конвертор имеет КПД около 10%, то есть при выходном токе в 10 мА (5 В) входной ток составляет около 100 мА. Это, однако, не является таким уж большим недостатком, поскольку блоки питания современных компьютеров способны выдавать ток до 20 А, и лишние 100 мА совершенно не являются проблемой.
Остается только ждать, когда такие развязки появятся в продаже и у нас.
1.5. Что делать, если длина линии связи интерфейса RS-232 превышает 20 м?
Иногда возникает задача «удлинить» линию связи для интерфейса RS-232; при этом задача поставлена так, что нельзя изменять ни схему устройства на базе микроконтроллера, ни его программное обеспечение, ни программное обеспечение компьютера, с которым этот микроконтроллер связан по интерфейсу RS-232. С подобными задачами автор сталкивался достаточно часто.
Ниже приведен пример подобной ситуации и, на взгляд автора, достаточно простое решение возникшей проблемы, которая некоторых разработчиков может поставить в тупик.
Задача была поставлена следующим образом.
Имеется прибор (на базе микроконтроллера), который сопрягается с компьютером всего двумя линиями интерфейса RS-232— TxD и RxD и, естественно, «землей» — сигналом SG. Причем, связь между компьютером и прибором по интерфейсу RS-232 должна быть дуплексной (как это обычно делается в интерфейсе RS-232), то есть передатчик и приемник должны работать независимо друг от друга (так было написано программное обеспечение для компьютера и микроконтроллера в приборе).
Прибор располагался непосредственно на месте снятия показаний, а компьютер был расположен на расстоянии около одного километра от прибора (≈900м). Программное обеспечение, имеющееся на компьютере, по снятию показаний прибора было давно куплено и оплачено, поэтому его изменить уже было невозможно; кроме того, отсутствовала возможность как-то изменить программное обеспечение и в приборе, так как прибор был разработан достаточно давно. Попытки заказчика применить стандартный преобразователь интерфейса RS-232 в интерфейсе RS-485 ни к чему не привели ввиду того, что в преобразователе интерфейса RS-485 была предусмотрена только полудуплексная связь, которая обычно осуществляется в этом интерфейсе.
Для решения задачи автор использовал достаточно известные преобразователи RS-485/RS-422↔TTL (ADM488), работающие в дуплексном режиме, и уже упоминавшийся преобразователь интерфейса RS-232 ADM3202. Схема устройства приведена на рис. 36. Как видно из рис. 36, все сигналы интерфейсов и питание схемы выведены на клеммы (K01–K08). Для индикации включения питания используется светодиод VD1. Для питания устройства применяется достаточно дешевый стабилизированный источник питания +5 В, 200 мА.
На рис. 37 приведены расположение элементов (а) и вариант разводки платы (б, в) устройства преобразователя интерфейсов. Использование микросхем в корпусах DIP существенно облегчает производство устройства. Для распайки компонентов не требуется высокой квалификации монтажника (вся работа по монтажу плат была довольно ловко проделана школьником 9-го класса).
На рис. 38 показана фотография устройства. Как видно из рисунка, размеры платы выбраны таким образом, что она легко умещается в обыкновенную телефонную розетку и прикручивается к ней 8 саморезами, служащими одновременно крепежом клемм к плате. В крышке розетки просверлено отверстие, через которое наружу выведена верхняя часть светодиода.
На рис. 39 приведена фотография общего вида двух устройств — преобразователей RS-232↔RS-485/RS-422. Слева показано устройство в собранном виде, предназначенное для сопряжения с компьютером (на фотографии можно увидеть кабель с разъемом DB9M, который подключается к COM-порту компьютера), справа — устройство со снятой крышкой.
На рис. 40 приведена схема сопряжения прибора с компьютером с помощью двух устройств — преобразователей RS-232↔RS-485/RS-422.
Для сопряжения устройств с компьютером и прибором используется обыкновенный (неэкранированный) 4-жильный телефонный провод длиной 1–1,5 м. Линия связи между двумя устройствами представляет собой достаточно дешевый провод, состоящий из двух неэкранированных витых пар в одной общей оплетке.
Тестирование устройств показало отличную их работу в дуплексном режиме на скорости в 115 200 бод на линии связи длиной в 1 км.
Литература
- Кузьминов А. Ю. Интерфейс RS-232. Связь между компьютером и микроконтроллером. М.: Радио и связь. 2004.
- Кузьминов А.Ю. Интерфейс RS-232. Связь между компьютером и микроконтроллером. От DOS к Windows98/XP. М.: ДМК-ПРЕСС. 2006 (в печати).
- Кузьминов А. Ю. Универсальная система сбора и обработки данных АСИР-3. // Мир ПК. 1996. № 6.
- Кузьминов А. Ю.Удаленные системы сбора информации с датчиков на базе однокристальных микро-ЭВМ // Автоматизация и производство. 1996. № 3.
- Кузьминов А. Ю. Однокристальные микроЭВМ—основа удаленных систем сбора и обработки сигналов, поступающих с датчиков // Электроника и компоненты. 1998. № 2.
- Кузьминов А. Ю. Новые MCS51-совместимые микроконтроллеры и их применение в системах сбора информации с датчиков // Контрольно-измерительные приборы и системы. 1997. № 6. 1998. № 7.
- www.analog.com
- www.atmel.com
- www.maxim-ic.com
- www.semiconductor-philips.com
- www.silabs.com
- www.ti.com
- www.msdn.microsoft.com/library
- www.gapdev.com