Выбор среды для разработки и отладки приложений на базе микроконтроллера
Сейчас для проектирования и отладки устройств на микроконтроллерах применяют готовый модуль Arduino, разработанный на базе процессора Mega AVR.
Arduino — это аппаратная платформа, которая содержит простой интерфейс ввода-вывода и поддерживает среду разработки, реализующую открытый язык программирования Processing, основанный на Java.
Arduino может служить основой для разработки автономных интерактивных устройств или может работать под управлением ПО, которое установлено на соединенном с ним компьютере. В последнем случае в качестве ПО помимо языка Processing могут использоваться Flash, VVVV и Max/MSP. Arduino можно собрать самостоятельно вручную, можно приобрести уже в готовом виде. Интегрированную среду разработки с открытым кодом (IDE, Integrated Development Environment) можно загрузить бесплатно с веб-сайта.
От иных подобных устройств, предлагающихся на рынке, Arduino отличаются следующим свойствами:
• Мультиплатформная среда; она может работать под управлением операционных систем Windows, Macintosh и Linux.
• Она базируется на языке Processing; эта простая и удобная в применении среда разработки используется художниками и дизайн-рами.
• Программирование устройства осуществляется посредством
USB-интерфейса, а не через последовательный порт. Это создает дополнительное удобство, поскольку последовательный порт отсутствуют в большинстве современных компьютеров.
• Элементы, из которых состоит Arduino, недорогие. USB-плата стоит около 20 ЕВРО, а замена сгоревшего чипа обойдется где-то в 5 ЕВРО. Так что можно позволить себе сколько угодно ошибаться.
• Существует много литературы по применению данного модуля
ТЕОРЕТИЧЕСКАЯ ЧАСТЬ
Микроконтроллеры AVR семейства Mega
Большинство микроконтроллеров фирмы «Аtmel» изготовляются по технологии КМОП, которая в сочетании архитектурой RISC дает возможно получить хорошие результаты в соотношении быстродействие и энергопотребления. Все микроконтроллеры AVRсемейства Mega являются 8-разрядными микроконтроллерами, которые предназначены для встраиваемых приложений. Стоит отметить, что описываемое семейство микроконтроллеров является самым развитым.
Особенности микроконтроллеров AVRсемейства Mega:
· FLASH память программ. Объемом от 8 до 128 Кбайт;
· ОЗУ объемом от 1 до 4 Кбайт;
· EEPROM объемом от 512 байт до 4 Кбайт (число циклов стирания/записи не менее 100000);
· Защита от чтения и модификации памяти программ и данных;
· программирование непосредственно в системе, через последовательные интерфейсы SPI и JTAG'
· возможность внутрисхемной отладки в соответствии со стандартом IEEE 1149.1 (JTAO);
· Способы синхронизации: встроенный RC- генератор с внутренней или внешней времязадающей RС - цепочкой или с внешним резонатором;
· Возможность подключения внешнего сигнала синхронизации;
· Режимы пониженного энергопотребления;
· наличие детектора снижения напряжения питания (brown-out detector, BOD);
· возможность программного снижения частоты тактового генератора.
Характеристики процессора
Подавляющее большинство основных характеристик процессора микроконтроллеров линейки Mega такие же, что и микроконтроллеров других линеек Classic и Tiny:
v полностью статическая архитектура; минимальная тактовая частота- равна нулю;
v АЛУ подключено непосредственно к регистрам обшего назначения;
v большинство команд выполняются за один машинный цикл;
v многоуровневая система прерываний; поддержка очереди прерываний.
Процессор микроконтроллеров семейства Mega имеет ряд свойств, присущих именно этому семейcтву:
ü наибольшее число источников прерываний (до 27 источников, из них до 8 внешних);
ü наличие программного стека во всех моделях семейства;
ü имеется аппаратный умножитель.
ОПИСАНИЕ ОТЛАДОЧНОГО МОДУЛЯ
Общие сведения
Arduino — аппаратная вычислительная платформа, состоящая из двух основных компонентов: плата ввода-вывода и среда разработки на языке Processing/Wiring. Arduino удобна для разработки электронных устройств как для новичков, так и для профессионалов. Эта платформа пользуется огромной популярностью во всем мире из-за простого языка программирования, открытой архитектуры и программного кода. Особенность данной платформы является то что она программируется без использования программаторов через USB. С помощью Arduino компьютер может выйти за рамки виртуального мира в физический, благодаря множеству датчиков которые можно подключить к плате. Датчики могут получать информацию об окружающей среде, а также управлять различными исполнительными устройствами.
Может взаимодействовать и с программным обеспечением на компьютере (например, Flash, Processing, MaxMSP).
Плата Arduino состоит из микроконтроллера и элементов обвязки для программирования и интеграции с другими схемами. На многих платах так же имеется линейный стабилизатор напряжения. Тактирование осуществляется на частоте 16 или 8 МГц кварцевым резонатором (прибор, в котором пьезокристаллический эффект и явление механического резонанса используется для построения высокодобротного (свойство колебательной системы, определяющее полосу резонанса и показывающее, во сколько раз запасы энергии в системе больше, чем потери энергии за один период колебаний) резонансного элемента электронной схемы). В микроконтроллер предварительно прошивается загрузчик (программа, отвечающая за загрузку исполнительных файлов и запуск новых процессов) BootLoader, поэтому внешний программатор не нужен. Плата Arduino содержит инвертирующую схему для конвертирования уровней сигналов RS-232 (Recommended Standart 232, физический уровень для асинхронного интерфейса) в уровни ТТЛ (Транзисторно-транзисторная логика-разновидность цифровых логических микросхем, построенных на основе биполярных транзисторов (трёхэлектродный полупроводниковый прибор) и резисторов.), и наоборот.
Изображения используются с разрешения разработчика. ArduinoTM является зарегистрированной торговой маркой (WEB: arduino.cc)