Почти все микроконтроллеры имеют на борту последовательный порт UART. Работает он по стандартному последовательному протоколу, а значит его можно без проблем подключить к компу на COM порт. Но есть тут одна проблема дело в том, что комповый RS232 он за логические уровни принимает +/- 12 вольт, а UART работает на пятивольтовых уровнях. Как их совместить? Для этого существует несоколько вариантов схем преобразователей уровня, но самая популярная это все же на специальном преобразователе RS232-TTL. Это микросхема MAX232 и ее аналоги.
Практически каждая фирма делает свой преобразователь, так что тут сгодится и ST232, и ADM232, и HIN232. Схемка простая как три копейки вход, выход, питание и обвязка из пяти конденсаторов. Конденсаторы обычно ставятся 1uF электролиты, но в некоторых модификациях ставится 0.1uF керамика. Я везде впаивал 0.1uF керамику и обычно этого хватало. 🙂 Работает как часы. Если же на высоких скоростях будет глючить, то надо будет повышать емкость.
Кстати, существует еще и MAX3232 это то же самое, но на выходе у него не 5вольт TTL, а 3.3 вольта TTL. Её используют для низковольтных контроллеров.
Я себе сделал один такой универсальный шнурочек, чтобы к контроллерам цепляться было удобно по UART. Для общей компактности всю схему запихал прям в разъем, благо у меня были ST232 в soic корпусе. Получилась платка не больше рублевой монеты. Так как под рукой не было мелких SMD конденсаторов, то пришлось напаять кондеры сверху, кто во что горазд. Главное работает, хоть и не очень красиво вышло.
Если сомневаешься, что у тебя получится столь мелкий монтаж, то я тебе развел плату на стандартный PDIP корпус. Размером она будет со спичечный коробок, зато мельчить не надо.
После сборки проверяется просто:
Втыкается в разъем COM порта. Подается 5 вольт питания на схему, а затем замыкаешь Rx на Tx (у меня это зеленый и желтый провода).
Дальше открваешь любую терминалку, хоть Hyper Terminal, цепляешься к порту и начинаешь посылать байты, они должны тотчас возвращаться обратно. Если этого не произошло проверяй схему, где то косяк.
Если работает, то дальше все просто. Тот провод который идет от ножки 9 микросхемы MAX232 это передающий вывод, его заводи на ногу RxD контроллера. А тот который с ножки 10 принимающий, его смело сажай на вывод TxD контроллера.
Плата сделана была методом ЛУТ, в одном месте по моему недосмотру толщина просвета оказалась 0.05мм, протравилась, но со спайками, пришлось процарапывать. А в целом с первого раза ать и никаких проблем. Аж сразу захотелось сделать что нибудь маленькое маленькое, нафаршированное нафаршированное 🙂
Все, аппаратная часть для связи микроконтроллера с компом готова. Ждите следующего поста в котором я расскажу как конфигурировать и использовать UART в микроконтроллерах AVR. В будущем я буду через UART осуществлять отладочную связь с компом. Может быть даже ради этого соберу отдельный модуль с LCD экранчиком. Для отладки в железе. Посмотрим как попрет.
Печатная плата в формате Sprint Layout. Два варианта маленький и большой
Та же бодяга, но для работы через USB
Оцените статью!