Компания Atmel – производитель популярных семейств микроконтроллеров, каждое из которых имеет свои направления. Интересен этот производитель тем, что микроконтроллеры Atmel семейства AVR очень популярны в среде радиолюбителей. Кроме AVR контроллеров компания выпускает устройства с архитектурой ARM и i8051.
Популярность устройств обусловлена огромным количеством литературы по микроконтроллерам AVR. Каждый может освоить с нуля и писать простые коды с минимальным набором знаний.
Какие бывают микроконтроллеры Atmel
Начнем с самого популярного, для освоения микроконтроллеров в целом, – Atmel AVR. Его можно разделить на два направления:
- 8-битные микроконтроллеры.
- 32-битные микроконтроллеры.
Среди простых проектов для любителей электроники особую популярность снискала именно 8-битная часть семейства. Есть хорошая справочная литература «Микроконтроллеры AVR семейства classic фирмы Atmel», в которой описана вся архитектура, назначение отдельных узлов, регистров и прочего. Не стоит беспокоиться, что она посвящена уже устаревшему семейству AVR Classic – в наши дни оно вытеснено контроллерами Attiny и Atmega, хотя самая маленькая и быстрая модель – AT90S2313 выпускается и по сей день, слегка в модернизированном виде – Attiny 2313.
Современные семейства программно и функционально совместимы с более старыми, а переход с Classic на Mega и Tiny требует минимальных трудозатрат и изменений программного кода. Среди семейства особенную популярность заслужил микроконтроллер с маркировкой Atmega 328p, применяемый во многих популярных платах Arduino. Почти все они имеют небольшое количество энергонезависимой памяти с ограниченным числом циклов записи (до 100 000) – EEPROM.
Семейство Atmel Smart базируется на архитектуре ARM. Компания правообладатель ARM свободно продает лицензии на разработку контроллеров со своей архитектурой разным производителям, что ускоряет распространение и популяризацию первых. Стоит отметить яркого представителя – микроконтроллер AT91SAM3X8E, является сердцем Arduino DUE, 32-бита. Это позволяет очень легко начать знакомство с такой архитектурой и разработку устройств энтузиастам электроники. Atmel ARM по характеристикам превосходит большинство микроконтроллеров Atmel AVR
Семейство Atmel 8051 – основано на по-настоящему легендарной архитектуре. Intel 8051 является одним из первых массовых микроконтроллеров с широчайшей сферой применения. Позволяет проектировать высокопрецизионные устройства с огромным быстродействием, практически сравнимым с быстродействием схем на логике. В линейке есть микроконтроллеры, работающие на частотах в 100 МГц, при этом выполняющие 100 миллионов операций в секунду, а это отличные показатели для этой архитектуры. Вы можете добиться быстродействия в долях микросекунд.
Способы связи компьютера и микроконтроллера Atmel
Чаще всего связь с МК устанавливается через COM-порт. На современных компьютерах и ноутбуках последовательного порта нет. Это вызывает необходимость использования USB-UART преобразователь, который распознаётся как виртуальный COM-порт.
Чтобы заливать прошивку в микроконтроллер, нужен либо этот преобразователь, либо специализированный программатор, например, AVRISP MKii – вы можете его собрать сами, но и в его составе есть микроконтроллер.
Происходит «каламбур»: для сборки программатора нужен программатор. Чтобы выйти из этой ситуации, используется специальный чип AT90USB162. Он, в свою очередь, при подключении к USB порту компьютера распознаётся как полноценное USB устройство, прошивку в которое можно загрузить с помощью утилиты Flip от Atmel.
Утилита Flip поддерживает программирование через следующие интерфейсы:
- RS232;
- USB;
- CAN.
С помощью flip можно загрузить прошивку для программатора микроконтроллеров Атмела без использования COM-порта, а схема AVRISP mk II изображена ниже.
Для работы микроконтроллеров по интерфейсу UART (маркировка интерфейса – rs-232) в Atmel AVR выделен регистр UDR (UART data register), а настройки его работы хранятся в конфигурационных регистрах UCSRA, UCSRB и UCSRС. Настройки битов приемопередатчика Rx, Tx, кстати, хранятся в UCSRA.
Вопросы программирования микроконтроллеров
Для программирования МК ваш код нужно компилировать, для этого есть множество программного обеспечения, пример одного из них – это компилятор IAR. Использование этого компилятора не ограничено одними лишь Atmel. 8051, AVR, AVR32, ARM – это лишь небольшой перечень из более чем 20 поддерживаемых архитектур.
IAR Embedded Workbench – полное название этой мощной рабочей среды. Применение ИАРА позволяет добиться меньше размера и большего быстродействия кода; он набирает всё большую популярность из-за своих огромных возможностей.
Работа с микроконтроллерами требует постоянного выполнения одинаковых действий, таких как компиляция, прошивка, сброс к заводским установкам; для автоматизации этих процессов нужно использовать Makefile – набор инструкций для компилятора, в нём записаны обозначения действий с файлами программного кода и другие команды.
Для отладки готовых программ был разработан Atmel ice. Он нужен для внутрисхемной отладки программирования и прошивки устройств. Имеет два разъёма:
- Универсальный AVR, поддерживающий любой интерфейс;
- ARM.
Судя по отзывам реальных пользователей, работает он быстрее аналогов – AVR Dragon, например, при этом захватывает архитектуру АРМов и имеет больше функций.
Выводы
Фирма Atmel сейчас принадлежит Microchip’у, но продолжает выпускать свои семейства микроконтроллеров. Их популярность не угасала за многие годы, однако в последнее время наблюдается активная конкуренция с STM. Пока рано говорить, кто из них вырвется вперед, рассуждения об этом – тема отдельной статьи.
Выбор семейства зависит только от разработчика и поставленных перед ним задач, а AVR контроллеры помогли многим разработчикам «войти» в программирование микроконтроллеров.