На днях мы с вами обсуждали интерфейс RS485 и, кроме того, рассмотрели микросхему, при помощи которой можно реализовать подключение микроконтроллера в сеть RS485 (вот эта статья). Так вот, давайте сегодня нарисуем в Altium Designer'е простенькую схемку для такого переходника, ну и заодно спроектируем печатную плату.
Переходник с UART'а на RS485 мы будем реализовывать при помощи специально для этого созданной микросхемы SP3485. Естественно, она отсутствует в библиотеках Altium'а, поэтому нам придется добавить свой собственный компонент и посадочное место для него. Об этом уже был разговор на нашем сайте - добавление компонента в Altium Designer.
Вот как выглядит SP3485:
Таким образом, нам нужно в Altium Designer создать компонент и добавить к нему 8 выводов. Вот, что из этого получилось:
Названия выводов, их расположение и нумерация соответствуют приведенным в даташите, так что двигаемся дальше. Теперь нам нужно добавить для созданного нами компонента новое посадочное место. Все нужные размеры контактных площадок можно найти все в том же даташите (обычно эта информация приведена ближе к концу документа). Что ж, идем снова в Altium Designer и создаем посадочное место для SP3485:
Готово! Тут на самом деле даже нечего комментировать, все описано в предыдущей статье про добавление компонентов в Altium'е. Остается только перейти к созданию принципиальной схемы нашего мини-устройства. И снова напоминаю, что про это тоже были статьи на сайте, поэтому второй раз подробно не будем на этом останавливаться. Статьи вот - раз и два )
Давайте разбираться... Собственно, вся эта мини-схема основана на применении микросхемы SP3485, ее мы и видим в самом центре. Выводы питания (Vcc и GND) подключаем соответственно к питанию и земле. Тут нет никаких неожиданностей. Ножки A и B предназначены для двух линий интерфейса RS485. Их мы присоединили к Header. Что это за Header? А это просто разъем на три контакта и ничего больше. То есть выход нашего девайса.
Вывод RO микросхемы мы должны закинуть на UART микроконтроллера, а точнее на Rx этого UART'а. Аналогично, DI поключается к Tx того же модуля UART. Осталось совсем немного - подключить сигнал Ready To Send (RTS) - то есть оставшиеся ножки RE и DE. Закорачиваем их между собой и выводим на любой незанятый вывод микроконтроллера. Туда мы будем подавать ноль или единицу в зависимости от направления передачи данных (прием/передача).
Для наглядности работы устройства добавим светодиод, который будет загораться в том случае, если на линии RTS логическая единица (то есть когда микроконтроллер передает данные во внешний мир). Ну и еще два разъема - на два контакта и на три контакта - для подключения питания и для подключения нужных выводов контроллера.
Мы добавили наш новый компонент на принципиальную схему, но не назначили для него посадочное место. Жмем на SP3485 два раза и в появившемся окне ищем кнопку Add. В открывающемся окне выбираем Footprint, появляется еще одно новое окно, в котором мы должны указать программе путь к футпринту:
Со схемой закончили, теперь займемся печатной платой. Но тут есть одни небольшие грабли. Компоненты на схеме у нас не пронумерованы, то есть им не присвоены уникальные имена. К счастью, Altium сам может решить эту проблему - идем в меню Tools->Annotate Schematics. Там жмем на кнопку Update Changes List и видим, что все компоненты принципиальной схемы получили свои обозначения:
Нажимаем кнопку Accept Changes, открывается новое окно - там сразу жмем на кнопку Validate Changes и затем на Execute Changes. Вот теперь все готово к проектированию печатной платы.
Добавляем в проект файл печатной платы и перемещаем на нее все наши компоненты (для этого идем в Design->Update PCB...). Вот что мы получаем:
Ну что ж.. Нам осталось лишь разместить компоненты как-нибудь покомпактней и соединить их дорожками. Пусть будет, например, так:
Вот мы и получили то, что хотели ) На этом, пожалуй, на сегодня все, до встречи в новых статьях!
зазвичай ще резистор на виту пару ставлять 120 ом, хоча якось він не дуже впливає...
А как выровнять уровни, если у контроллера 5V, а у этой схемки 3v3? UART может и сжует 3-вольтовые пороги, а вот выдержит ли преобразователь 5V с ножки TX?
Я STM32 в основном использую - там 3.3 В ) А вообще, насколько я помню, микросхема совместима с 5 В уровнями.