Реклама ⓘ
Главная » Микроконтроллеры
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Похожие статьи:


Реклама ⓘ

Контроллер 8 нагрузок на ATtiny13 с управлением по UART

Данный контроллер имеет 8 каналов для подключения любых нагрузок. Подключённые нагрузки можно включать и выключать по определённой команде. Управление устройством осуществляется посредством UART связи, то есть его можно подключать например к микроконтроллеру или к компьютеру, пользуясь при этом USB-UART или COM-UART переходником. Ядром устройства является микроконтроллер ATtiny13, но по скольку у этого микроконтроллера мало портов ввода/вывода, то ещё в схеме стоит сдвиговый регистр 74HC595, к которому и подключаются нагрузки. Задача микроконтроллера состоит в том чтобы получить и обработать данные приходящие по UART и отправить соответствующие биты в сдвиговый регистр.

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

Схема контроллера

Если вам нужно управлять мощными нагрузками, например с напряжением питания 220В и большим током, то вместо светодиодов на схеме устанавливайте транзисторные ключи и электромагнитные реле, рассчитанные на нужный вам ток и напряжение. Общее напряжение питания устройства: 5 вольт, для общения по UART используйте скорость 9600 бод. Управлять устройством посредством UART очень просто: когда придёт буква "P" введите номер порта к которому подключена нагрузка (Например: 1, 2, 3...  По схеме туда подключены светодиоды HL1, HL2, HL3...), после ввода придёт буква "B" - введите состояние порта 1 или 0 (1 - включено, 0 - выключено). Вот собственно и все команды, но если вы планируете управлять устройством посредством своего микроконтроллера, после ввода команд не забывайте про перенос строки (HEX байты A и D, DEC байты 10 и 13).

Прошивку для микроконтроллера устройства я написал в среде программирования BASCOM-AVR, она занимает практически всю Flash память Attiny13. Исходник прошивки прилагается.

Данный контроллер я собрал на своей макетной плате с механическими контактами и управлял им через персональный компьютер, использовав при этом USB-UART переходник и свою программу, которую я написал в Delphi 7. Вот её главное окно: 

Принцип работы программы очень прост: она устанавливает соединение с COM портом куда подключено устройство, считывает состояния соответсвующих чекбоксов (галочек, расположенных в рамке "каналы") и посылает данные. Для работы с COM портом компьютера из программы, использовалась библиотека BComPort. Исходник программы прилагается в файлах к статье.

Фьюз-биты для микроконтроллера:

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
IC1 Микросхема74HC5951 Поиск в магазине ОтронВ блокнот
IC2 МК AVR 8-бит
ATtiny13
1 Поиск в магазине ОтронВ блокнот
HL1-HL8 СветодиодЛюбой 3В8 Поиск в магазине ОтронВ блокнот
R1-R8 Резистор
150 Ом
8 Поиск в магазине ОтронВ блокнот
R10, R11 Резистор
1 кОм
2 Поиск в магазине ОтронВ блокнот
R9 Резистор
10 кОм
1 Поиск в магазине ОтронВ блокнот
Добавить все

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

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

Теги:

Опубликована: Изменена: 03.11.2013 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (7) | Я собрал (0) | Подписаться

0
raxp #
...в данном контексте задачу управления сдвиговым регистром можно было поручить верхнему уровню и обойтись без МК, а сигналами TX/DTR/RTS с конвертора USB/RS-232(UART). А сие классика.
Ответить
0
сергей #
Можно использовать другой микроконтроллер с большим количеством портов и необходимость в регистре отпадет.
Ответить
0
raxp #
А смысл для такой простой задачи микроконтроллер ставить? Его еще и запрограммировать надо. С тем же успехом и ПЛИСину из дешевых можно втиснуть, пинов-то поболее будет.
А регистры, их тоже наращивать можно.
Ответить
0
Александр #
1. Точность работы МК задаётся встроенным RC-генератором. Его стабильность невысока: при изменении температуры с комнатной даже на 5-8 градусов связь с ПК может прерваться с вероятностью в 50%! Если используете интерфейс связи - обязательно ставьте кварцевый\керамический задающий генератор! Но данный МК не имеет такой возможности...
2. Больная тема: неверно посчитаны токоограничительные резисторы в цепях светодиодов! Точнее, они на пределе микросхемы сдвигового регистра!
Ответить
0
raxp #
Не увидел в материале чему равно Vcc (возможно задано в проетусе)
Для тиньки от 2.7 до 5.5 вольт, для регистра HC от 2 до 6-ти. При питании 5-тью действительно на пределе для регистра в 20 мА на пин, при трех еще не все так страшно.
Ответить
0
raxp #
"напряжение питания устройства: 5 вольт, для общени"
- есть, есть :)
Ответить
0
HWman #
Нагревал и охлаждал тиню, вроде как работает всё. Изменял напряжение питания с 5 В на 3.3 тоже работает.
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется напряжение?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Программатор Pickit3
Программатор Pickit3
Raspberry Pi 2 Конструктор регулируемого преобразователя напряжения LM317
вверх