Почему бы я не рекомендовал Atmel или о непонимании успеха Arduino / Хабр
Хочу немного поделиться негативным опытом использования микроконтроллеров Atmel в промышленной разработке.
Atmel как целевую платформу выбрал заказчик, хотя мы его и отговаривали (еще даже не зная, что нам предстоит — интуиция, что ли?). Ну что же, «заказчик всегда прав».
В продукте было два контроллера — 32-битный UC3A3 и 8-битный ATMega164. В качестве дебаггера выбрали AVR One!, в качестве среды разработки — AVR Studio 5.0 (последняя версия на момент старта).
И началось!
У двух из трех купленных AVR One! в течении первого же месяца отвалились JTAG-коннекторы. У одного из них пропадал контакт питания. Каждый дебаггер, к слову, стоит около 600 евро!
При первом подключении дебаггера к компу с установленной AVR Studio 5.0 последняя захотела обновить ему прошивку. И не просто захотела, а отказывалась работать без этого. Процедура обновления прошивки благополучно зациклилась в «обновление — ожидание готовности устройства — обновление завершено неуспешно — обновление.
На начальной стадии работа ведется на Evaluation платах. Были такие и у Атмела. Вот только на «готовых» эвалкитах к большинству пинов процессора банально не было доступа! А универсальный пакет STK600, позволяющий «воткнуть» в него практически любой контроллер при помощи переходника (решение реально супер, если бы не одно но), имел маленький недостаток — его схема была недоступна ни в открытом доступе, ни за деньги! Блин, вот реально — тулкит, предназначенный для экспериментов с платформой, поставлялся без схемы! И схема его охранялась очень и очень тщательно, судя по многочисленным веткам на AVR freaks. Поскольку мы не могли представить себе, как же можно работать без наличия схемы, мы разумно отказались от покупки этого тулкита (который ни разу не дешевый, к слову!).
Еще веселее стало, когда приступили собственно к написанию и отладке кода.
Самым веселым оказалось то, что пошаговая отладка оказалась в принципе невозможной. Дело в том, что поставив где-нибудь в коде брейкпоинт, дождавшись остановки программы в этом месте и выполнив «шаг вперед», ты оказывался… в обработчике прерывания! (Естественно, в прерывании при этом никаких брейкпоинтов не было!). А поскольку прерывания в системе были всегда (таймеры и т.п.), процесс отладки выглядел следующим образом: приходилось ставить следующий брейкпоинт на следующей строке и нажимать Run вместо Step Over. Особенно весело это было, когда надо было отследить if или switch. Или же выполнить Step Into, а не Step Over…
Вторым радостным моментом оказалось то, что когда ты останавливался в прерывании, ты не видел стека вызовов. Особенно радовало, когда этим прерыванием было исключение процессора. На предыдущем проекте на контроллере от Freescale в аналогичной ситуации ты отлично видел весь стек вызовов — в каком месте произошло исключение процессора и что к нему привело. Здесь же все, что ты видел — это то, что исключение произошло. А где и почему — оставалось только догадываться.
Третьим радостным моментом оказалось, например, вот что: код
int a[4];
a[0] = 1;
a[1] = 2;
a[2] = 3;
a[3] = 4;
категорически отказывался работать на ATMega! Элемент a[1] после этого кода оставался равным 0!
И особенно порадовал ответ техподдержки Atmel «Да, данный процессор имеет указанную проблему, попробуйте заменить его на другой!». Ага, а ничего, что уже как бы плата с ним произведена? Следующим ответом техподдержки было «Попробуйте заменить в AVR Studio родной AVR toolchain на open source WinAVR. Это, как ни странно, помогло, массив стал инициализироваться как надо. Правда, заголовочные файлы этого toolchain представляли из себя местами кашу, и часть заголовков пришлось брать от „родного“…
Плюс вся система работала крайне нестабильно. Дебаггер мог просто перестать видеть контроллер. Студия могла перестать видеть дебаггер. Или перестать запускать код на выполнение.
К счастью, на AVR freaks часть проблем была описана и решения найдены. Например, вместо 600-евровых AVR One! были куплены 50-евровые AVR Dragon, работающие гораздо стабильнее — с ними разработка стала в принципе возможной. (Из серии „Зачем, блин, платить больше?“).
И пришлось перейти с AVR Studio 5.0 на более старую AVRStudio32, поскольку первая была настолько глючно-сырой, что работать в ней было невозможно. Интерфейс, конечно, у пятой студии был удобным, ничего не скажешь, но когда удобная в использовании среда банально не работает — удобство оказывается бессмысленным, увы.
AVRStudio32 c точки зрения интерфейса оказалась очень специфической штукой. То ли Eclipse-based сыграло свою роль, то ли Atmel внес свою лепту… Приведу лишь один пример.
Нам понадобилось изменить точку запуска, которая по умолчанию выставлена в среде разработки на начало flash контроллера. В AVRStudio32 за это отвечает так называемая „конфигурация запуска“ (найти которую, кстати, отнюдь не очевидная задача). Так мало того, что параметры конфигурации запуска не сохраняются в проекте (а это означает, что изменения должен был вносить каждый разработчик „ручками“ и их нельзя было коммитить в репозиторий), так кроме этого студия могла в какой-то из моментов по своему желанию создать новую конфигурацию, с параметрами по умолчанию, сделав ее текущей. Нет, когда это все уже знаешь, то исправить это не вопрос. Но вот когда не знаешь, а выглядит все так, что после очередного изменения вдруг все перестало работать, то становится очень даже невесело…
То, что примерно за год разработки дебаггеры банально три или четыра раза выходили из строя, уже было просто досадной мелочью.
Еще одной такой досадной мелочью был прикол с тем, что Atmel называет Fuses — специальные биты, управляющие поведением микроконтроллера, доступные при помощи специальных команд. Неосторожное движение или ошибка — и процессор оказывался непригодным к дальнейшему использованию без очень сложных телодвижений. Можно было, например, переключить его с использования внутренней тактовой частоты на внешнюю. Поскольку внешней, конечно же, в наличии не было, процессор переставал работать. Вернуть этот бит без подачи внешней синхронизации было невозможно в принципе. А еще можно было, например, „выключить“ JTAG — после чего к контроллеру невозможно было подключиться дебаггером.
Вполне естественно, что во время разработки возникают ошибки. Но когда такая ошибка приводит к остановке процесса на непонятно сколько времени — мягко говоря, совсем невесело.
Одна из последних проблем оказалась не менее веселой — по какой-то из причин микроконтроллеры один за одним переставали работать, и дебаггеры тоже переставали их видеть. Времени на анализ было потрачено прилично, оказалось же вот что.
Немного доп. информации: каждый контроллер от Atmel имеет так называемый Device Code, однозначно идентифицирующий семейство. Есть спец. команда, чтобы этот код прочитать. Дебаггер и студия как раз его и используют для идентификации того, что подключено. По идее, значение это read only, и нигде в спецификации не указано обратное. Оказалось, что это не так.
Цитата из Errata:
Signature may be Erased in Serial Programming Mode
If the signature bytes are read before a chiperase command is completed, the signature may be erased causing the device ID and calibration bytes to disappear.
Особенно же впечатлило решение проблемы:
Problem Fix / Workaround:
Ensure that the chiperase command has exceeded before applying the next command.
То есть, если Device ID уже оказался стертым, записать его назад возможности не предоставляется. Хуже всего то, что вместе с ним стирается еще и калибровка внутренней частоты, которая также невосстановима, насколько я понял из доступной информации.
Должен сказать, что после команды Chip Erase в коде стояла задержка в два раза больше, чем того требовала спецификация. Однако Device ID волшебным образом стирался по непонятной причине…
Что же, негативный опыт — тоже опыт. Вряд ли я по доброй воле выберу теперь Atmel для чего-либо.
А что касается Arduino — понятно, конечно, что те, кто решает с ней поиграться, с большинством проблем банально не столкнутся, но — после всего описанного выше я все же не понимаю столь высокой ее популярности.
И кстати, выбор заказчиком платформы, похоже, как раз и был обусловлен популярностью Ардуино…
UPD: Вот, кстати, из последних глюков: на ATMega164 есть три группы фьюзов: fuse, fuse_high, fuse_ext. Так вот, по неизвестной причине изменить fuse_high не получается. При этом изменить fuse — получается, и что самое интересное — после любого изменения fuse (даже ничего не значащего, например, включение-выключение вывода тактовой частоты наружу на пин, который висит в воздухе) начинает работать и изменение fuse_ext.
Обзор микроконтроллеров семейства AVR компании Atmel
32-разрядные микроконтроллеры
Богатый набор функций и лучшая производительность в своём классе микроконтроллеров Atmel AVR обеспечиваются наличием встроенных блоков цифровой обработки сигналов с фиксированной запятой (DSP), портом SRAM, контроллером прямого DMA, продуманной архитектурой, построенной на проверенных и инновационных решениях Atmel.
Палитра устройств включает несколько серий, каждая из которых заслуживает детального рассмотрения.
1. Серия L.
Архитектура МК разрабатывалась для портативных устройств.
На первом месте в списке достоинств находится низкое энергопотребление, составляющее 165 мкА/МГц в активном режиме, 600 нА и 9 нА при включенных и отключенных часах реального времени, на втором — производительность.
Для взаимодействия с пользователем в микросхеме встроен CAT-контроллер на 17 аппаратных каналов. Безопасное хранение программ во флэш-памяти обеспечивается технологией FlashVault.
- Семейство AT32UC3L с ёмкостью флэш-памяти 16-256 кб, 48 выводов. Встроенная поддержка технологии picoPower. Модуль безопасного доступа (SAU) обеспечивает повышенную безопасность и целостность программы и данных. Рабочая частота 50 МГц, интерфейсы SPI – 5, I
- Семейство ATUC..L3U – ATUC..L4U. Низкое энергопотребление, благодаря технологии picoPower.
Вcтроенный полноскоростной USB приёмопередатчик. Разнообразные интерфейсы: SPI – 1, I2C – 2, UART – 4, LIN – 4, SSC – 1. Имеются АЦП и ЦАП. До 6 встроенных плюс сторожевой таймер. Напряжение выводов 1,62-3,6 В. Отладка по интерфейсам JTAG или aWire.
Маркировка микросхем Atmel
2. Серия С.
Основное назначение микроконтроллеров AT32UC3C – высокопроизводительные автомобильные системы.
Отдельно выделим микроконтроллеры AT32UC3C0512CAU c возможностью загрузки лицензированного ПО от Atmel для аудиосистем. Наличие интерфейса Ethernet, производительность и богатые коммуникационные возможности делают этот МК отличным решением для создания концентратора датчиков Интернета Вещей (IoT).
К ключевым особенностям устройства относятся:
- Разнообразные интерфейсы: SPI, I2C, UART, CAN, LIN, SSC, Ethernet.
- Рабочая частота 66 МГц.
- Встроенный модуль USB + OTG.
- Блок FPU для операций с плавающей запятой и технология безопасного хранения кода FlashVault.
- 12-разрядные быстродействующие ЦАП и АЦП, до 20 каналов ШИМ.
- Уровни напряжений выводов 3,0 – 5,5 В.
- 32-кГц RTC, 6 таймеров, сторожевой таймер.
- Отладка по JTAG.
3. Серия D.
Микроконтроллеры ATUC..D3-ATUC..D4 для начинающих конструкторов. Просты в освоении, мощные и функциональные. В МК реализована технология SleepWalking, позволяющая подключенным устройствам выводить микроконтроллер из спящего режима.
Технические характеристики:
- Рабочая частота 48 МГц.
- Встроенный модуль USB.
- CAT-контроллер для устройств сенсорного ввода на 25 каналов.
- Интерфейсы: SPI, I2C, UART.
- 10-разрядные АЦП, до 7 каналов ШИМ.
- Уровни напряжений выводов 3,0, 3,6 В.
- 32-кГц часы реального времени, 3 таймера, сторожевой таймер.
- Отладка по JTAG и aWire.
4. Микроконтроллеры A0, A1, A3, A4
Ориентированы для применения в устройствах и системах, выполняющих операции по обработке больших массивов данных. Производитель наделил микроконтроллеры большой пропускной способностью и высокоскоростными портами, работающими в режиме USB как хоста или периферийного устройства.
Микроконтроллеры А0, А1 имеют встроенный интерфейс Ethernet, встроенную поддержка SD-карт памяти, высокую производительность.
5. Серия B.
Рабочая частота 60 МГц, вкупе с высокой пропускной способностью и производительностью, встроенным модулем USB с OTG и низким энергопотреблением делают микроконтроллеры незаменимыми при:
- конструировании устройств хранения данных с USB интерфейсом;
- портативных устройств;
- несложных промышленных систем управления.
С чего начать изучение FPGA Altera?
Семейство MegaAVR Atmel
Если кратко характеризовать всё многообразие этого семейства микросхем Atmel, то можно отметить, что это 8-битные микроконтроллеры, различие между которыми в следующих характеристиках:
- Объём флэш-памяти от 4 до 128 кб.
- Выводов от 20 до 100.
- Встроенный CAN-контроллер.
- Встроенный LIN-контроллер.
- Специальные функции для управления электродвигателями, LCD-дисплеями, USB-интерфейсами.
Быстродействие более 20 млн операций в секунду позволяет загружать и выполнять программы большого объёма. Специальные исполнения микросхем picoPower от Atmel позволяют конструировать микроконтроллеры с низким энергопотреблением, а внутрисхемная отладка и обновление программного кода в режиме исполнения, делают тестирование приложений простым, быстрым и удобным.
Рассмотрим наиболее интересные устройства семейства MEGA AVR
1. Микроконтроллеры со встроенным CAN-контроллером AT90CAN128, AT90CAN32, AT90CAN64.
Как видно из обозначения, различия в микросхемах в объёме флэш-памяти – 128, 32 и 64 кб, каждая имеет по 64 вывода.
Основные технические характеристики:
- Частота 16 МГц.
- Пинов ввода-вывода 53.
- Внешних прерываний до 8.
- Интерфейсы SPI – 1, I2C – 1, UART – 2, CAN – 1.
- 8 10-битных АЦП, ЦАП отсутствует.
- Напряжение выводов 2,7..5,5 В.
- Отладочный интерфейс JTAG.
- Температура эксплуатации -40..85 °С.
Для оценки возможностей МК предназначен набор ATDVK90CAN1 в комплекте с программным обеспечением.
Наибольшее распространение протокол CAN имеет в автомобильной промышленности, в том числе, для критичных систем. По этой причине устройства идеально подходят для создания бортовых устройств автомобиля, сопряжённых с его электронными системами и датчиками.
Жизненный цикл импортных электронных компонентов
2. Для бортовых систем автомобиля, работающих с протоколами CAN и LIN предназначены микроконтроллеры ATMega16M1, ATMega32M1, ATMEga64M1. Микроконтроллеры имеют объём встроенной флэш-памяти 16..64 кб и 32 пина, повышенную производительность.
Краткие характеристики устройств:
- Частота 16 МГц.
- Пинов ввода-вывода 27.
- Внешних прерываний до 27.
- Интерфейсы SPI – 1, UART – 1, CAN – 1, LIN – 1.
- 11 10-битных АЦП, 1 10-битный ЦАП.
- ШИМ каналов до 10.
- Напряжение выводов 2,7..5,5 В.
- Отладочный интерфейс debugWIRE.
- Температура эксплуатации -40..85 °С.
С помощью микроконтроллера возможно подключение к проектируемому устройству электронных подсистем автомобиля с низкой ответственностью по протоколу LIN.
3. Архитектура микросхем AT90PWM Lighting оптимизирована для управления электродвигателями и системами освещения за счёт наличия двух 12-битных высокоскоростных контроллеров и гибких таймеров с режимами сравнения.
Ёмкость флэш-памяти МК 8-16 кб, количество пинов 20-32.
Характеристики:
- Частота до 16 МГц.
- Интерфейсы UART, SPI.
- 8 10-битных АЦП, 1 10-битный ЦАП.
- До 7 выходов ШИМ.
- Отладочный интерфейс debugWIRE.
- Температура эксплуатации -40..105 °С.
4.Микроконтроллеры AT90USB отличает разнообразие встроенных интерфейсов: SPI – 2, I2C – 1, UART – 1.
Однако серия не зря названа USB. В МК встроен USB приёмопередатчик, работающий на полной скорости.
5. Достаточно большое подсемейство ATMega169, ATMega329 и ATMega649 с LCD-контроллером, имеющим встроенный регулятор контрастности.
Заявка на поставку импортных микросхем
Мы специализируется на поставках импортных микросхем для производства приборов связи и навигационного оборудования для авиа- и судостроения. Получить подробную информацию о поставляемых брендах и условиях сотрудничества можно тут: https://import.el-ra.ru
Кроме этого, мы выполняем полный комплекс услуг по организации проверки и испытаниям электронных компонентов импортного производства, включая входной контроль, проверку на работоспособность, а также специальные проверки, механические и климатические испытания.
Если вы заинтересованы в работы с нами, то заполните форму по ссылке: www.el-ra.ru/zayavka
Звоните: +7(495) 374-61-00
Пишите: [email protected]
Avr atmega в Тобольске: 245-товаров: бесплатная доставка, скидка-38% [перейти]
Партнерская программаПомощь
Тобольск
Каталог
Каталог Товаров
Одежда и обувь
Одежда и обувь
Стройматериалы
Стройматериалы
Текстиль и кожа
Текстиль и кожа
Здоровье и красота
Здоровье и красота
Детские товары
Детские товары
Электротехника
Электротехника
Продукты и напитки
Продукты и напитки
Промышленность
Промышленность
Мебель и интерьер
Мебель и интерьер
Вода, газ и тепло
Вода, газ и тепло
Сельское хозяйство
Сельское хозяйство
Все категории
ВходИзбранное
Avr atmega
3 661
5384
Программатор TL866II Plus USB EEPROM с флэш-BIOS, автомобильный драйвер NAND Burn + SPI для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
3 444
5065
Программатор BIOS TL866II Plus Universal EEPROM, USB универсальный автомобильный NAND Burn для ATMEL AVR ATMEGA AT90 PIC GAL SRAM CMOS
ПОДРОБНЕЕЕще цены и похожие товары
Программатор TL866II Plus USB EEPROM с флэш-BIOS, автомобильный драйвер NAND Burn + SPI для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
3 704
5145
Программатор TL866II Plus USB EEPROM с флэш-BIOS, автомобильный драйвер NAND Burn + SPI для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
3 693
5513
Программатор TL866II Plus USB EEPROM с флэш-BIOS, автомобильный драйвер NAND Burn + SPI для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
3 545
5291
Программатор TL866II Plus USB EEPROM с флэш-BIOS, автомобильный драйвер NAND Burn + SPI для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
4 609
6880
Программатор TL866II Plus USB EEPROM с флэш-BIOS, автомобильный драйвер NAND Burn + SPI для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
3 635
5121
TL866II Plus USB EEPROM Flash BIOS Programmer Automotive NAND Burn+SPI Driver For ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
4 921
7456
Программатор TL866II Plus USB EEPROM с флэш-BIOS для автомобиля NAND программатор + 17X аксессуары для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
3 829
6382
Программатор BIOS TL866II Plus Universal EEPROM, USB универсальный автомобильный NAND Burn для ATMEL AVR ATMEGA AT90 PIC GAL SRAM CMOS
ПОДРОБНЕЕЕще цены и похожие товары
3 633
4844
Программатор BIOS TL866II Plus Universal EEPROM, USB универсальный автомобильный NAND Burn для ATMEL AVR ATMEGA AT90 PIC GAL SRAM CMOS
ПОДРОБНЕЕЕще цены и похожие товары
3 481
5195
Программатор BIOS TL866II Plus Universal EEPROM, USB универсальный автомобильный NAND Burn для ATMEL AVR ATMEGA AT90 PIC GAL SRAM CMOS
ПОДРОБНЕЕЕще цены и похожие товары
USB ISP программатор загрузчик для 51 AVR/Atmega/Attiny/AVR скачать адаптер Тип: переходник/адаптер
ПОДРОБНЕЕЕще цены и похожие товары
3 710
6746
TL866II Plus USB EEPROM Flash BIOS Programmer Automotive NAND Burn+SPI Driver For ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
3 425
4757
Программатор TL866II Plus USB EEPROM с флэш-BIOS, автомобильный драйвер NAND Burn + SPI для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
3 475
5696
Программатор TL866II Plus USB EEPROM с флэш-BIOS, автомобильный драйвер NAND Burn + SPI для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
5 286
8810
Программатор TL866II Plus USB EEPROM с флэш-BIOS для автомобиля NAND программатор + 17X аксессуары для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
5 074
7048
Программатор TL866II Plus USB EEPROM с флэш-BIOS для автомобиля NAND программатор + 17X аксессуары для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
4 810
6681
Программатор TL866II Plus USB EEPROM с флэш-BIOS для автомобиля NAND программатор + 17X аксессуары для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
4 893
8896
Программатор TL866II Plus USB EEPROM с флэш-BIOS для автомобиля NAND программатор + 17X аксессуары для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
4 601
7668
TL866II Plus USB EEPROM Flash BIOS Car NAND Burning Programmer+17X Accessories For ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
Программатор TL866II Plus USB EEPROM с флэш-BIOS, автомобильный драйвер NAND Burn + SPI для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
USB-программатор для ATMEL AVR ATMega ATTiny 51 Тип: программатор, Производитель: Atmel,
ПОДРОБНЕЕЕще цены и похожие товары
4 797
7159
Программатор TL866II Plus USB EEPROM с флэш-BIOS для автомобиля NAND программатор + 17X аксессуары для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
Программатор BIOS TL866II Plus Universal EEPROM, USB универсальный автомобильный NAND Burn для ATMEL AVR ATMEGA AT90 PIC GAL SRAM CMOS
ПОДРОБНЕЕЕще цены и похожие товары
USB ISP программатор загрузчик для 51 AVR/Atmega/Attiny/AVR скачать адаптер Тип: переходник/адаптер
ПОДРОБНЕЕЕще цены и похожие товары
3 783
6523
USB-программатор TL866II Plus EEPROM, флеш-BIOS, NAND, сжигание + 10X, аксессуары для ATMEL AVR ATMEGA AT90 PIC GAL SRAM
ПОДРОБНЕЕЕще цены и похожие товары
3 547
4996
TL866II Plus USB Universal EEPROM Flash BIOS Programmer Automotive NAND Burn For ATMEL AVR ATMEGA AT90 PIC GAL SRAM CMOS
ПОДРОБНЕЕЕще цены и похожие товары
2 страница из 3
AVR® БД | Microchip Technology
Семейство AVR ® DB основано на производительности ядра AVR с низким энергопотреблением, наборе независимых периферийных устройств мирового класса (CIP) и полностью загруженном портфеле интеллектуальных аналоговых устройств, что дает вам свободу проектирования устройств завтрашнего дня. решения сегодня. Благодаря трем встроенным операционным усилителям (операционным усилителям) это семейство не имеет себе равных по своим возможностям преобразования сигнала. Благодаря мультивольтажному вводу-выводу (MVIO) AVR DB является идеальным компаньоном микроконтроллера (MCU) в сложных проектах с несколькими доменами питания.
Это семейство микроконтроллеров использует встроенные CIP и режим работы 5 В для повышения помехоустойчивости, а также снижает задержку системы за счет использования мощной системы событий и периферийных устройств с настраиваемой пользовательской логикой (CCL). MVIO семейства AVR DB обеспечивает реальную двунаправленную связь со сдвигом уровня с устройствами в другом домене мощности. Вы можете использовать семейство AVR DB для функций управления в реальном времени в промышленном управлении, бытовой технике, автомобилестроении, Интернете вещей (IoT) и других приложениях. Наши микроконтроллеры AVR DA — отличный вариант для приложений управления с малой задержкой и емкостных сенсорных пользовательских интерфейсов.
Начало работы
Оценочный комплект AVR128DB48 Curiosity Nano — идеальная платформа для быстрого прототипирования с помощью микроконтроллеров AVR DB. Этот комплект с питанием от USB имеет встроенный программатор/отладчик, который легко интегрируется с MPLAB ® X и интегрированными средами разработки (IDE) Microchip Studio. Небольшой форм-фактор делает плату идеальной для пайки на макетной плате, или вы можете комбинировать ее с Curiosity Nano Base для плат Click ™, которая имеет несколько разъемов mikroBUS ™, поэтому вы можете легко добавлять датчики, исполнительные механизмы или коммуникационные интерфейсы из обширного ассортимента Mikroelektronika Click. доски.
- Проекты MPLAB X IDE
- Проекты студии Microchip
*Эта плата основана на 48-контактном микроконтроллере AVR DB емкостью 128 КБ. Оценочный комплект с 64-контактным разъемом AVR DB недоступен.
Купить доску сейчас
Функциональная безопасность Готовность для критически важных с точки зрения безопасности приложений
Семейство AVR DB рекомендуется для критически важных с точки зрения безопасности приложений, предназначенных как для промышленных, так и для автомобильных продуктов (IEC 61508 и ISO 26262). Мы также предлагаем лицензию компилятора функциональной безопасности MPLAB XC8, которая представляет собой сертифицированный TÜV SÜD пакет компилятора, поддерживающий 8-разрядные микроконтроллеры PIC® и AVR. Такие документы, как отчеты FMEDA и руководства по технике безопасности, предоставляются по запросу. Пожалуйста, свяжитесь с вашим местным офисом продаж Microchip или вашим дистрибьютором для получения дополнительной информации.
Функции системы
Многовольтный ввод-вывод (MVIO)
Система многовольтного ввода-вывода (MVIO) питает порт C и позволяет ему работать при другом напряжении, чем остальная часть устройства. Это значительно упрощает связь с другими устройствами, которые могут работать при другом напряжении, без необходимости использования дорогостоящих внешних переключателей уровня. Если напряжение на выводе VDDIO2 падает, может быть выдано прерывание, уведомляющее основное приложение о том, что система MVIO в настоящее время обесточена и не может работать. Если вы не хотите использовать MVIO, VDDIO2 следует подключить к VDD.
Операционный усилитель (OPAMP)
Периферийное устройство преобразования аналоговых сигналов (OPAMP) содержит три операционных усилителя (операционные усилители). Эти операционные усилители реализованы с гибкой схемой подключения с использованием аналоговых мультиплексоров и резисторных цепей. Это позволяет реализовать большое количество конфигураций преобразования аналоговых сигналов, многие из которых не требуют внешних компонентов
12-разрядный АЦП, 10-разрядный ЦАП, ZCD, аналоговый компаратор Дифференциальный аналого-цифровой преобразователь (АЦП) ksps имеет выбираемые внутренние источники опорного напряжения с минимальным температурным дрейфом. Используя систему событий, встроенный аналоговый компаратор (AC) можно подключить для запуска автономной работы других периферийных устройств, что идеально подходит для управления в реальном времени и операций с обратной связью. Выходной сигнал 10-битного цифро-аналогового преобразователя (ЦАП) можно либо отправить на вывод, либо использовать для генерации регулируемого опорного напряжения для переменного тока 9.

Обнаружение отказа тактового генератора (CFD)
Обнаружение отказа тактового генератора (CFD) — это схема контроля системы, которая переключается на внутренние часы, если внешний кристалл выходит из строя (останавливается). Этот дополнительный уровень безопасности позволяет устройству работать с очень точными часами. Если кристалл выходит из строя, устройство автоматически переключается на вторичный внутренний источник синхронизации и генерирует прерывание, чтобы уведомить основное приложение об остановке внешнего кристалла. Затем пользователь может определить, нужно ли останавливать приложение или переходить в безопасный режим.
Custom Logic
Периферийное устройство Custom Logic — это программируемое логическое периферийное устройство, которое можно подключить к контактам устройства, событиям или другим внутренним периферийным устройствам. Каждая справочная таблица (LUT) состоит из трех входных данных: таблицы истинности, дополнительного синхронизатора и фильтра и детектора фронтов. LUT может генерировать выходной сигнал для внутренней маршрутизации или на контакт ввода-вывода, что устраняет необходимость во внешней логике и снижает стоимость спецификации.
Система событий
Система событий позволяет периферийным устройствам взаимодействовать друг с другом напрямую, не задействуя ресурсы ЦП или шины. Это означает, что различные триггеры на уровне периферии могут привести к событию, например прерывания таймера, запускающие действие на другом периферийном устройстве. Система событий имеет три независимых канала для прямой передачи сигналов между периферийными устройствами. Этот детерминированный метод сигнализации идеально подходит для приложений реального времени. События обрабатываются на периферийном уровне, даже если ЦП занят обработкой прерываний или находится в спящем режиме.
CRC, WWDT, FMEDA, BOD, POR, VLM
Вы можете использовать встроенные функции, поддерживающие критически важные с точки зрения безопасности приложения, чтобы повысить устойчивость и надежность вашей конструкции. К ним относятся оконный сторожевой таймер (WWDT) для наблюдения за системой, проверка циклическим избыточным кодом (CRC) для сканирования флэш-памяти и система событий для обнаружения неисправностей. Другие функции включают монитор уровня напряжения (VLM), детектор снижения напряжения (BOD) и сброс при включении питания (POR) для контроля напряжения питания.
Семейное предложение (количество контактов и память)
Основные характеристики
- Внутренний генератор 24 МГц
- До 16 КБ SRAM
- До 22 каналов, 12-разрядный дифференциальный аналого-цифровой преобразователь (АЦП) со скоростью 130 кбит/с
- 10-битный цифро-аналоговый преобразователь (ЦАП) 350 кбит/с
- Формирование аналогового сигнала (OPAMP)
- Аналоговый компаратор (AC) с масштабируемым опорным входом
- До трех детекторов пересечения нуля (ZCD)
- Проверка циклическим избыточным кодом (CRC) сканирование
- Обнаружение отказа часов
- 16-разрядные часы реального времени (RTC) и таймер периодических прерываний
- Периферийное устройство с настраиваемой пользовательской логикой (CCL)
- До 10 периферийных устройств системы обработки событий
- Конфигурируемое внутреннее опорное напряжение
- USART/SPI/двухрежимный двухпроводной интерфейс (TWI)
- Ввод/вывод с несколькими напряжениями на порте C
- Допустимые входы 1,8 В, выбираемые для всех входных контактов
Читать далее
Продукты базы данных AVR
Загрузка
Просмотреть все параметры
Пожалуйста, посетите полную параметрическую диаграмму. Если вы все еще не можете найти
диаграмму, которую вы ищете, пожалуйста, заполните нашу
Форма обратной связи на сайте
чтобы уведомить нас об этой проблеме.
AVR® DA | Microchip Technology
Семейство микроконтроллеров, готовых к функциональной безопасности, для управления в реальном времени, подключения и приложений HMI
Семейство AVR ® DA обеспечивает функции управления в реальном времени и простое емкостное касание для маломощных микроконтроллеров AVR (MCU). Он сочетает в себе новейшие основные независимые периферийные устройства (CIP) с надежным портфелем интегрированных аналоговых устройств для создания устройства, которое превосходно работает не только как автономный процессор, но и как сопутствующий микроконтроллер в конструкциях, требующих точности. Высокая плотность памяти семейства AVR DA делает эти микроконтроллеры хорошо подходящими как для проводных, так и для беспроводных функций связи с интенсивным стеком.
В этом семействе используются новейшие CIP с функциями пониженного энергопотребления и работой от 5 В для повышения помехоустойчивости. Система событий и периферийные устройства с настраиваемой пользовательской логикой (CCL), а также интеллектуальные аналоговые периферийные устройства, такие как 12-разрядный дифференциальный аналого-цифровой преобразователь (АЦП), обнаружение пересечения нуля (ZCD), 10-разрядный цифро-аналоговый преобразователь (DAC) и периферийный сенсорный контроллер (PTC) последнего поколения с технологией Driven Shield делают семейство AVR DA идеальным для приложений управления с малой задержкой и емкостных сенсорных пользовательских интерфейсов. Семейство AVR DA предназначено для использования емкостных сенсорных датчиков и функций управления в реальном времени в промышленном управлении, бытовой технике, автомобилях, Интернете вещей (IoT) и других приложениях. Наши микроконтроллеры AVR DB — отличный вариант для двунаправленной связи со сдвигом уровня с устройствами в другом домене питания.
Начало работы
Оценочный комплект AVR128DA48 Curiosity Nano* (DM164151) — идеальная платформа для быстрого прототипирования с помощью новых микроконтроллеров tinyAVR. Комплект с питанием от USB имеет встроенный программатор/отладчик, который легко интегрируется с MPLAB ® X и Microchip Studio (IDE). Небольшой форм-фактор делает плату идеальной для пайки на макетной плате, или вы можете комбинировать ее с базой Curiosity Nano Base для плат Click, имеющей несколько разъемов mikroBUS™, так что вы можете легко добавлять датчики, приводы или коммуникационные интерфейсы из обширного ассортимента Click от Mikroelektronika. доски.
- Проекты MPLAB X IDE
- Проекты студии Microchip
*Эта плата основана на 48-контактном микроконтроллере AVR DA 128 КБ. Оценочный комплект с 64-контактным AVR DA недоступен.
Купить доску сейчас
Функциональная безопасность Готовность для критически важных с точки зрения безопасности приложений
Семейство AVR DA хорошо подходит для критичных к безопасности приложений, таких как бытовая техника (IEC 60730), автомобильная (ISO 26262) и промышленная (IEC 61508) продукция. Мы бесплатно предлагаем сертифицированную UL библиотеку IEC 60730 класса B для бытовой техники в дополнение к важным вспомогательным материалам по безопасности, таким как отчеты о характере отказа, его последствиях и диагностическом анализе (FMEDA) и руководство по безопасности. Отчеты FMEDA и руководство по безопасности сертифицированы SGS TÜV Saar по ASIL B Ready, и к 2022 году мы добавим библиотеку диагностики программного обеспечения для сертификации по ISO 26262. К концу 2021 года у нас будут отчеты FMEDA для IEC 61508 и соответствующее руководство по безопасности.
Мы также предлагаем лицензию компилятора функциональной безопасности MPLAB XC8, которая представляет собой сертифицированный TÜV SÜD® пакет компилятора, поддерживающий микроконтроллеры PIC ® и AVR, который включает квалификационную документацию для MPLAB X Integrated Development Environment (IDE) и программистов MPLAB.
Компоненты системы
12-разрядный АЦП, 10-разрядный ЦАП, ZCD, аналоговый компаратор.

Система событий
Система событий позволяет периферийным устройствам напрямую взаимодействовать друг с другом без использования ресурсов ЦП или шины. Это означает, что различные триггеры на уровне периферии могут привести к событию, например прерывания таймера, запускающие действие на другом периферийном устройстве. Система событий имеет три независимых канала для прямой передачи сигналов между периферийными устройствами. Этот детерминированный метод сигнализации идеально подходит для приложений реального времени. События обрабатываются на периферийном уровне, даже если ЦП занят обработкой прерываний или находится в спящем режиме.
Custom Logic
Периферийное устройство Custom Logic — это программируемое логическое периферийное устройство, которое можно подключить к контактам устройства, событиям или другим внутренним периферийным устройствам. Каждая справочная таблица (LUT) состоит из трех входных данных: таблицы истинности, дополнительного синхронизатора и фильтра и детектора фронтов. LUT может генерировать выходной сигнал для маршрутизации внутрь или на контакт ввода-вывода. Это устраняет необходимость во внешней логике и снижает стоимость спецификации.
Периферийный сенсорный контроллер (PTC)
Периферийный сенсорный контроллер (PTC) — это автономный блок, который получает и обрабатывает емкостные сенсорные сигналы. Он поддерживает кнопки, ползунки, колеса и конфигурации 2D-поверхностей в дополнение к датчику приближения и не требует дополнительных внешних компонентов. Этот CIP предлагает широкий спектр сенсорных функций, таких как взаимная и собственная емкость, фильтрация шума, устойчивость к влаге, автоматическая калибровка по температуре и напряжению, а также пробуждение при касании и/или приближении из спящего режима.
Режим ожидания, ожидания, отключения питания
Режимы ожидания, ожидания, отключения питания с низким энергопотреблением позволяют оптимизировать приложение для производительности устройства и энергопотребления. Функция отключения периферийных модулей (PMD) позволяет отключать неиспользуемые периферийные устройства по отдельности, что еще больше снижает энергопотребление.
CRC, WWDT, BOD, POR, VLM
Вы можете использовать встроенные функции, которые поддерживают приложения, критически важные для безопасности, чтобы повысить надежность и надежность вашей конструкции. К ним относятся оконный сторожевой таймер (WWDT) для наблюдения за системой, проверка циклическим избыточным кодом (CRC) для сканирования флэш-памяти и система событий для обнаружения неисправностей. Другие функции включают монитор уровня напряжения (VLM), детектор снижения напряжения (BOD) и сброс при включении питания (POR) для контроля напряжения питания.
Создавайте современные приложения с помощью емкостного сенсорного экрана
PTC предлагает встроенное оборудование для емкостного измерения прикосновения к датчикам, которые функционируют как кнопки, ползунки, колесики и 2D-поверхности. Он предназначен для выполнения емкостных сенсорных датчиков независимо от ЦП, что обеспечивает низкую загрузку ЦП и снижение энергопотребления.
Семейство AVR DA поставляется с PTC последнего поколения с технологиями Driven Shield+ и Boost Mode. Технология Driven Shield+ обеспечивает повышенную помехоустойчивость, водостойкость и повышенную чувствительность, а режим Boost обеспечивает повышенное отношение сигнал/шум (SNR) для еще большей устойчивости к шуму или сокращение времени захвата сенсорного экрана для обеспечения более чувствительных емкостных сенсорных конструкций.
- Низкая загрузка ЦП при 5% загрузке ЦП при сканировании, 10 каналов при частоте сканирования 50 мс
- Поддержка перчаток для интерфейса, предназначенного для холодных или суровых условий
- Технология Driven Shield+ для защиты от влаги и надежности даже при попадании капель воды
- Ускоренный режим увеличивает отношение сигнал-шум или сокращает время обнаружения касания
- Опции сенсорного интерфейса:
- Кнопки, ползунки и колесики
- 2D-поверхность
- Датчик приближения
- Комбинированные конфигурации датчиков с:
- До 46 собственных емкостных датчиков
- До 529 датчиков взаимной емкости
- Автоматическая калибровка с дрейфом нуля в зависимости от температуры и напряжения
Читать далее
Семейное предложение (количество контактов и память)
Основные характеристики
- Внутренний генератор 24 МГц
- До 16 КБ SRAM
- До 22 каналов, 12-разрядный дифференциальный аналого-цифровой преобразователь (АЦП) со скоростью 130 кбит/с
- 10-битный цифро-аналоговый преобразователь (ЦАП) 350 кбит/с
- Аналоговый компаратор с масштабируемым опорным входом
- 16-разрядные часы реального времени (RTC) и таймер периодических прерываний
- Периферийное устройство с настраиваемой пользовательской логикой (CCL)
- Периферийная система обработки событий до 10 каналов
- Конфигурируемое внутреннее опорное напряжение
- USART/SPI/двухрежимный двухпроводной интерфейс (TWI)
- До трех детекторов пересечения нуля (ZCD)
- Проверка циклическим избыточным кодом (CRC) сканирование
Читать далее
Простое прототипирование и оценка
Оценивать и создавать прототипы пользовательских интерфейсов с помощью кнопок, ползунков, колесиков и 2D-жестов легко, используя AVR128DA48 Curiosity Nano в сочетании с платой адаптера Curiosity Touch и одним из QTouch 9. 0003 ® Наборы расширения Xplained Pro, перечисленные ниже.
Читать далее
Номер детали: DM16415
Выведите свою следующую идею на рынок с помощью макетной платы, которую можно носить в кармане. Оценочный комплект AVR128DA48 Curiosity Nano с полной программой и возможностями отладки обеспечивает полную поддержку вашего следующего проекта.
купить сейчас
Номер детали: AC164162
Оценочный комплект Microchip Curiosity Nano Base для плат Click board™ представляет собой аппаратную платформу расширения, упрощающую соединение между наборами Curiosity Nano и платами расширения, такими как модули mikroBUS Click и платы расширения Xplained Pro.
Номер по каталогу: AC80T88A
Эта плата предназначена для использования в сочетании с платой AVR128DA48 Curiosity Nano и комплектами расширения QTouch Xplained Pro Extension Kit, что позволяет легко оценить сенсорные характеристики микроконтроллеров AVR DA.
купить сейчас
Номер детали: ATQT2-XPRO
Сенсорное управление Применение: 2D-поверхности
Эта плата оснащена сенсорной поверхностью 4 × 4 канала и синей светодиодной матрицей 7 × 7 для обеспечения визуальной обратной связи при восприятии прикосновения.
купить сейчас
Номер детали: ATQT3-XPRO
Сенсорный экран Применение: кнопки
Эта плата расширения оснащена 12-кнопочной цифровой панелью с взаимной емкостью и светодиодной матрицей 4 × 4 для обеспечения визуальной обратной связи при прикосновении.
купить сейчас
Номер по каталогу: ATQT4-XPRO
Сенсорный экран Применение: датчик приближения и кнопки
На этой плате имеются две сенсорные кнопки, два датчика приближения и светодиодные индикаторы для оценки периферийного сенсорного контроллера (PTC) в режиме собственной емкости.
купить сейчас
QT5 Xplained Pro Extension Kit
Номер детали: ATQT5-XPRO
Сенсорное приложение: изогнутый слайдер и кнопки
Светодиоды для демонстрации того, как создать привлекательный сенсорный интерфейс с помощью периферийного сенсорного контроллера (PTC).
купить сейчас
Комплект расширения QT7 Xplained Pro
Артикул: ATQT7-XPRO
Сенсорное управление Применение: водонепроницаемые кнопки и ползунки технологии для создания прочной и водостойкой конструкции.
купить сейчас
Набор удлинителей QT8 Xplained Pro
Номер по каталогу: AC164161
Touch Применение: водостойкие 2D-поверхности
Эта плата расширения оснащена двухмерным датчиком касания 5 × 5 с технологией Driven Shield и 11 светодиодами для индикации положения касания. Он демонстрирует надежную водостойкость наших емкостных сенсорных микроконтроллеров.
купить сейчас
T10 Xplained Pro Extension Kit
Артикул: AC47h33A
Touch Применение: кнопки и слайдер Комплект демонстрирует водонепроницаемость, скорость и помехоустойчивость на четырех сенсорных кнопках и четырехсегментном ползунке. Плата T10 Explained Pro поддерживает технологию Boosted Touch, что позволяет удвоить отношение сигнал-шум (SNR) во взаимных проектах или сократить время сбора данных в четыре раза.
купить сейчас
Продукты семейства AVR DA
Загрузка
Просмотреть все параметры
Пожалуйста, посетите полную параметрическую диаграмму. Если вы все еще не можете найти диаграмму, которую вы ищете, пожалуйста, заполните нашу Форма обратной связи на сайте чтобы уведомить нас об этой проблеме.
Что такое микроконтроллеры ATMega и как сделать с ними простой проект?
Содержание
Знакомство с микроконтроллерами ATMegaМикроконтроллеры ATMega принадлежат к семейству микроконтроллеров AVR и производятся Atmel Corporation . Микроконтроллер ATMega представляет собой 8-битный микроконтроллер с сокращенным набором инструкций ( RISC ) на основе Гарвардской архитектуры.
Он имеет стандартные функции, такие как встроенное ПЗУ (постоянное запоминающее устройство), ОЗУ данных (оперативное запоминающее устройство), данные EEPROM (электрически стираемое программируемое постоянное запоминающее устройство), таймеры и порты ввода/вывода, а также дополнительные периферийные устройства, такие как аналого-цифровые преобразователи. Цифровые преобразователи (АЦП), порты последовательного интерфейса и т. д. Они имеют 120 и более наборов инструкций и программную память в диапазоне от 4 до 256 Кбайт.
- Читайте также: Что такое WiMAX? Разница между широкополосным WiMax и WiFi
Микроконтроллеры ATMega были разработаны двумя студентами Норвежского технологического института (NTH) — Альфом-Эйгелем Богеном и Вегардом Волланом. Позже он был куплен и разработан корпорацией Atmel в 1996 году.
Архитектура микроконтроллеров ATMega Как упоминалось во вводной части, микроконтроллеры ATMega основаны на гарвардской архитектуре, т.е. с отдельной памятью данных и памятью программ. Память программ, также известная как память программ или кодов, представляет собой флэш-память с произвольным доступом (ПЗУ). Размер памяти программ варьируется от 8К до 128К байт.
Память данных разделена на три части – 32 регистра общего назначения, память ввода/вывода и внутреннюю статическую оперативную память (SRAM). в то время как размер регистров общего назначения фиксирован, размер памяти ввода-вывода и внутренней SRAM варьируется от микросхемы к микросхеме.
Блок-схема микроконтроллера ATMEGAНа приведенной ниже схеме представлена архитектура микроконтроллеров ATMega.
Нажмите на изображение, чтобы увеличить
- Рекомендуем прочитать: Полностью автоматический контроллер уровня воды с использованием SRF04
Нажмите на изображение, чтобы увеличить его
Кратко о каждом модуле
1 . Регистры общего назначения : микроконтроллеры ATMega имеют архитектуру, основанную на регистрах, т. е. как операнды, так и результат операций хранятся в регистрах, расположенных совместно с центральным процессором (ЦП). Регистры общего назначения связаны с арифметико-логическим устройством (ALU) процессора.
Эти регистры используются для временного хранения информации во время выполнения программы. Они потребляют 32 байта памяти данных и занимают адресную ячейку — от $00 до $FF. Эти регистры имеют обозначение от R0 до R31, и каждый из них имеет ширину 8 бит.
2 . Память ввода/вывода : ее также называют памятью регистра специальных функций (SFR), поскольку она предназначена для специальных функций, таких как регистры состояния, таймеры, последовательная связь, порты ввода/вывода, аналого-цифровые счетчики (АЦП) и т. д.
Количество мест, занимаемых этой памятью, зависит от количества контактов и периферийных функций, поддерживаемых микросхемой. В то время как 64 байта места ввода-вывода фиксированы для всех микросхем, некоторые микроконтроллеры ATMega имеют расширенную память ввода-вывода, которая содержит регистры, связанные с дополнительными портами и периферийными устройствами.
3 . Внутренняя SRAM : также называется блокнотом и используется для хранения данных и параметров программистами и компиляторами. Каждое место доступно непосредственно по его адресу. Это используется для хранения данных с ввода/вывода и последовательных портов в ЦП.
4 . Электрически стираемая флэш-память (Flash EEPROM) : Это внутрисистемная программируемая память, используемая для хранения программ. Его можно стирать и программировать как единое целое. Поскольку она энергонезависима, содержимое памяти сохраняется даже в случае отключения питания. Для каждого микроконтроллера ATMega число в конце имени обозначает объем флэш-памяти.
Например , для ATMega16 объем флеш-памяти 16Кбайт. Преимуществом флэш-памяти в микроконтроллерах ATMega является ее внутрисистемная программируемость, т.е. микроконтроллер можно запрограммировать, даже находясь на печатной плате.
5 . Электрически стираемая программируемая память данных (Data EEPROM) : Some Эта память используется для хранения и вызова постоянных программных данных и других системных параметров.
- Читайте также: Что такое технология ZigBee и как она работает?
Помимо модуля памяти, микроконтроллера внешние соединения для источников питания, два внешних контакта входа кристалла, сброс процессора и четыре 8-битных порта.
1 . Порты : микроконтроллеры ATMega содержат четыре 8-битных порта — порт A, порт B, порт C и порт D. Каждый порт связан с тремя регистрами — регистр данных (записывает выходные данные в порт), регистр направления данных (устанавливает определенный порт). контакт как выход или вход) и адрес входного контакта (считывает входные данные из порта).
2 . Clock : Часы микроконтроллера используются для предоставления временной базы периферийным подсистемам. Мы можем установить часы внутренне, используя выбираемый пользователем резистор-конденсатор, или внешне, используя генераторы.
3 . Таймеры и счетчики : микроконтроллеры ATMega обычно содержат 3 таймера/счетчика. В то время как два 8-битных таймера также могут использоваться в качестве счетчиков, третий является 16-битным счетчиком. Они используются для генерации точных выходных сигналов, подсчета внешних событий или измерения параметров входного цифрового сигнала.
3 . Системы последовательной связи : микросхема микроконтроллера ATMega содержит встроенный универсальный синхронный и асинхронный последовательный приемник и передатчик (USART), последовательный периферийный интерфейс (SPI) и двухпроводной последовательный интерфейс (TWI).
4 . Аналого-цифровые преобразователи : Микроконтроллеры ATMega содержат многоканальную подсистему аналого-цифрового преобразователя (АЦП). АЦП имеет 10-битное разрешение и работает по принципу последовательного приближения. Он связан с тремя регистрами — регистром выбора мультиплексора АЦП, регистром управления и состояния АЦП и регистром данных АЦП.
5 . Прерывания : В микроконтроллерах ATMega имеется 21 периферийное устройство прерывания. В то время как 3 используются для внешних источников, остальные 19 используются для внутренних подсистем. Они используются для прерывания нормальной последовательности событий в случае чрезвычайных ситуаций с высоким приоритетом.
- Что такое МЭМС – технология микроэлектромеханических систем?
Как упоминалось ранее, микроконтроллер ATMega основан на RISC-архитектуре, т.е. содержит сокращенный набор инструкций. Подобно другим микроконтроллерам, программирование в микроконтроллерах ATMega также может выполняться как на языках низкого уровня (ассемблер), так и на языках высокого уровня (встроенный C).
Давайте кратко обсудим программирование на уровне ассемблера.
Инструкция на языке ассемблера состоит из следующих полей:
[Метка: ] мнемоника [операнды] [; комментарии]
Здесь мнемоника относится к инструкции. Микроконтроллеры ATMega поддерживают как непосредственный, так и косвенный режимы адресации. Доступ к регистрам ввода-вывода можно получить через соответствующие им места в пространстве памяти.
Операнды относятся к аргументам, обрабатываемым инструкцией. Для микроконтроллеров ATMega операндами являются регистры общего назначения или регистры ввода/вывода.
Обычно программирование выполняется на языке C из-за его простоты. Ниже приведен небольшой пример программирования микроконтроллера ATMega16 с использованием языка Си
- Читайте также: Автоматизированная система идентификации отпечатков пальцев и как она работает?
Назначение : Для включения светодиода с помощью кнопочного переключателя с микроконтроллером ATmega16
внутренний(недействительный)
{
DDRA=0x00;
DDRB=0xFF;
unsignedinti;
while(1)
{
i=PINA;
if(i==1)
{
PORTB=0xFF;
}
else
PORTB=0x00;
}
}
В приведенном выше коде я назначил порт A в качестве входного порта, контакт PA.