РадиоКот :: Делаем устройство "Бегущий огонек" на микроконтроллере
Например TDA7294

РадиоКот >Обучалка >Микроконтроллеры и ПЛИС >Микроконтроллеры AVR - пишем, компилируем, прошиваем... >

Теги статьи: Добавить тег

Делаем устройство "Бегущий огонек" на микроконтроллере

Автор:
Опубликовано 01.01.1970

Начинаем практические занятия по контроллерам.

Сегодня, мальчики и девочки, я расскажу вам о том, как сделать устройство "Бегущий огонек из 8 светодиодов" практически на коленках…

Делать мы его будем, конечно же на контроллере. Конечно же на AT90S2313, куда ж мы от него :) Поэтому очень не дурно будет, если вы скачаете даташит (описание) на этот контроллер:
https://www.atmel.com/dyn/resources/prod_documents/DOC0839.PDF.
Для его прочтения вам понадобится прога Adobe Acrobat Reader, которая торжественно качается вот отсюда:
https://ardownload.adobe.com/pub/adobe/acrobatreader/win/4.x/rs405eng.exe (версия 4.0.5; 6,4МБ);
или вот отсюда:
https://ardownload.adobe.com/pub/adobe/reader/win/7x/7.0/enu/AdbeRdr70_enu_full.exe (версия 7.0, 19МБ).

Описание, от начала до конца - на англицком. Так что, если в школе вы учили китайский или любой другой, но не английский - придется переучиваться. Остальные же - читают даташит, и помаленьку озаряются божественным светом знаний…

Однако, для прочтения всего нижеследующего, от вас требуется только знание русского, и поэтому читать смогут все, кто в школе изучал этот непростой язык. Думаю, их большинство…

Схема

Начнем мы, пожалуй, с того, что нарисуем схему этого монстра:

Схема устройства бегущий огонек на микроконтроллере

Большой прямоугольник с кучей выводов - это и есть контроллер. Слева от него - уже знакомая нам схема для подсоединения программатора. Сверху - куча светодиодов и резисторов. Ну для чего светодиоды - понятно - они светятся. А для чего резисторы? А резисторы греются! :) Не, серьезно - они нужны для того, чтобы ограничивать ток, идущий через светодиод. Иначе, светодиоду наступит каюк…

Обычные светодиоды (не повышенной яркости), потребляют где-то 10…20 мА. Возьмем число 15.
Напряжение на выходе контроллера - 5В,
Падение напряжения на любом светодиоде - около 1,5 В. (Вообще - в зависимости от цвета свечения, от 1,3 до 1,7).
Значит, на резистор остается 5 - 1,5 = 3,5 В.
Считаем по закону Ома сопротивление резистора:
3,5 / 0,015 = 233.
Но мы возьмем немножко с запасом - 300 Ом.

Каждый из светодиодов подключен к каналу ввода/вывода контроллера. Причем, все эти каналы относятся к порту B. Об этом нам говорят названия выводов: PB0, PB1, … ,PB7.
Заметьте, что почти все каналы порта имеют еще дополнительное название, которое написано через слеш. Эти названия относятся к альтернативным функциям данного канала. Например, PB5, PB6 и PB7 имеют альтернативную функцию выводов последовательного интерфейса SPI, через который мы подключаем программатор. Но данная функция активируется только в момент прошивки, а все остальное время эти каналы могут выполнять любую другую работу.

Порт D в нашей схеме остался не у дел. Но это - временно. Мы обязательно чего-нибудь на него повесим в дальнейшем.

К выводам XTAL1 и XTAL2 подключается кварцевый резонатор (кварц). Он отвечает за генерацию тактовой частоты контроллера. Ну, о том, что у любого процессора есть тактовая частота, знает каждый. У нашего процессора-контроллера максимальная тактовая частота = 10 МГц. С точки зрения Пентиума 4 - это ничто. С т.з. тех задач, которые будут выполняться данной схемой - это даже многовато. А вообще - все в этом мире относительно…

Между выводами кварца и общим проводом стоят конденсаторы по 22пФ. Они нужны. Просто нужны, поверьте мне. Объяснить это сложно :)

Напряжение питания схемы - 5В, оно подается на цепи Vcc и GND, соответственно "+" и "-".

Вот, собственно, все описание…

В дальнейшем, я не буду рисовать схему подключения программатора - она занимает много места. Все равно, мы уже знаем как она выглядит.

Паять это все дело лучше на макетке. Причем, обрезать макетку не впритык, а оставить сколько-нибудь места. Дело в том, что мы будем апгрейдить эту схему, и понадобится ставить новые детали.

Ну вот, теперь можно программировать…

<<--Вспомним пройденное----Поехали дальше-->>




Как вам эта статья?

Заработало ли это устройство у вас?

32 0 2
17 2 0