Для того чтобы написать программу для микроконтроллера AVR, был выбран язык высокого уровня Си. Чтобы симулировать (проверять ее работу) схему с микроконтроллером, нужно подобрать подходящее для этого программное обеспечение.
Для этого понадобятся 2 программы: C Compiler (в этой программе будет писаться проект)Prog (программа позволяющая ускорить процесс записи программы на микроконтроллер через USB программатор Atmel AVR Prog (AVR910))- это кросс-компилятор Си, интегрированная среда разработки (IDE - Integrated Development Environment) и автоматический генератор программ (CodeWizardAVR), разработанные для семейства AVR-микроконтроллеров фирмы Atmel.
Программа является 32-битовым приложением, которое работает под операционными системами Windows 95, 98, NT 4, 2000 и ХР.
CodeVisionAVR обеспечивает выполнение почти всех элементов языка Си, которые разрешены архитектурой AVR, с некоторыми добавленными характеристиками, которые реализуют преимущество специфики архитектуры AVR. IDE имеет программное обеспечение встроенного внутрисхемного программатора чипов AVR, который позволяет автоматически передавать программы в микроконтроллерный чип после успешной компиляции. Программное обеспечение внутрисхемного программатора может работать совместно с Atmel STK500/AVRISP/AVRProg (прикладное описание AVR910 от Atmel), Kanda Systems STK200+/300, Dontronics DT006, \bgel <file:///bgel> Elektronik VTEC-ISP, Futurlec JRAVR и платой разработчика MicroTronics ATCPU/Mcga2000.
Для отладки разрабатываемых систем, которые применяют последовательную связь, IDE имеет встроенный терминал.
Кроме стандартных библиотек Си, компиляторен CodeVisionAVR имеет библиотеки для:
алфавитно-цифровых LCD-модулей;
шины 12С от Philips;
температурного датчика LM75 от National Semiconductor;
часов реального времени PCF8563, PCF8583 от Philips и DS1302, DS1307 от Dallas Semiconductor;
протокола 1 -Wire от Dallas Semiconductor;
температурного датчика DSI820/DS18S20 от Dallas Semiconductor;
термометра/термостата DS 1621 от Dallas Semiconductor;DS2430 и DS2433 от Dallas Semiconductor;
SPI;
управления питанием;
задержек;
преобразования кода Грея.программатор выполнен на основе драйвера от Objective Development и полностью совместим по командам с оригинальным программатором AVR910 от ATMEL.
Рисунок 17 - USB программатор (AVR 910) вид со стороны печатных дорожек
Рисунок 18 - USB программатор (AVR 910) вид со стороны навесных элементов
Программатор позволяет программировать все контроллеры AVR, поддерживающие ISP (In System Programming - Программирование В Системе), а так же МК серии 89S - 89S53 и 89S8252. На данный момент протестировано программирование контроллеров 89S53, 89S8252, 90S2313, 90S8515, ATtiny13, ATtiny26, ATtiny45, ATtiny2313, ATmega48, ATmega8, ATmega8515, ATmega8535, ATmega16, ATmega32, ATmega64, ATmega128, AT90CAN128.
Программирование микроконтроллера проходит в 4 основных этапа:
Выбор микроконтроллера в CodeWizardAVR
Написание программы
Компиляция программы
Запись программы на микроконтроллер
На рисунках 19 а, б, в, г представлен графический вид четырех этапов.
Рисунок 19 - (а) Выбор микроконтроллера в CodeWizardAVR, (б) написание программы, (в) компилирование, (г) запись программы на микроконтроллер
Алгоритм программы представлен на примере одного разряда в отличии от алгоритма принципа работы АЦП, описанного в главе 3.4 в программный алгоритм включено - отключение и включение светодиодной индикации, а также режим нажатия кнопки.
Самое читаемое:
Контроллер опорно-поворотного устройства антенны
Микроконтроллеры уверенно и, по-видимому, навсегда
завоевали место в нашей жизни. Найти хоть одно электронное изделие, не имеющее
микроконтроллеров, практически невозможно. Разнообразные элементы схем в
видеомагнитофонах, DVD -
плеерах, телевизорах и микроволновых печах, автоматических дверях, системах
управления лифтами, промышлен ...