Подключение семисегментного индикатора по UART на ATtiny13

В последнее время я начал замечать в себе тягу к универсальным самодельным модулям различных устройств работающих по UART интерфейсу. Это очень удобно при разработке и отладки самоделок, для подключения нужно всего лишь несколько проводов и пару строк кода в программе, для посылки и приёма нужных данных. В этой статье я приведу описание простого модуля одноразрядного семисегментного индикатора работающего по UART интерфейсу. Логика работы модуля очень проста, он выводит число на семисегментный индикатор, которое получил по UART. Приёмом, обработкой и отправкой данных занимается 8-битный AVR микроконтроллер Attiny13, который, пожалуй, является самым дешёвым и маленьким.  Он имеет всего 8 ножек, 5 из которых – пины ввода/вывода (не считая reset). Очевидно, что пинов очень мало и их не хватит для подключения индикатора. Потому, чтобы подключить семисегментник я применил сдвиговый регистр 74HC595.

Принципиальная схема:

Общение модуля по UART нужно осуществлять на скорости 9600 бод. Логический уровень сигнала не должен превышать порог в 5 вольт. После ввода команд по UART, не забывайте про перенос строки (HEX байты A и D, DEC байты 10 и 13). Общее напряжение питания устройства составляет от 3 до 5 вольт. Семисегментный индикатор нужно использовать с общим анодом, я использовал индикатор с маркировкой FYS-5611AS-11. Микроконтроллер Attiny13 можно использовать с любыми буквенными индексами. Рекомендую использовать микросхемные панельки DIP-8 и DIP-16 для микроконтроллера и сдвигового регистра.

Я собрал данный модуль на макетной плате с механическими контактами и подключал его к компьютеру с помощью USB-UART переходника. Позже, я использовал модуль для отладки самодельного реле времени, которое собрано на той же Attiny13 и не имело дисплея.

Модуль на макетной плате с USB-UART переходником:

Модуль в работе:

После прошивки микроконтроллера выставите следующие фьюз-биты (если вы используете новый микроконтроллер с «заводскими» фьюз-битами, то их можно не выставлять):

Печатную плату не изготавливал, потому что у меня не было текстолита и реактивов. В файлах к статье вы можете найти готовую прошивку для МК, исходный код программы (BASCOM-AVR) и проект в Proteus.


Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот

U1
МК AVR 8-битATtiny131
U2
Сдвиговый ригистр74HC5951

Одноразрядный семисегментый индикатор с общим анодомFYS-5611AS-111
С1
Электролитический конденсатор100 мкФ1
С2
Керамический конденсатор100 нФ1
R1
Резистор1 кОм1
R3-R9
Резистор100 Ом7
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Добавить комментарий

Ваш адрес email не будет опубликован.