AVR микроконтроллер и его применение в компьютере
В статье про порты ввода-вывода ПК упоминались такие устройства, как микроконтроллеры AVR. Возможно, многим читателям хотелось бы узнать подробнее, что это такое.
Содержание статьи
- Что такое микроконтроллер
- История семейства
- Особенности семейства
- Архитектура контроллера
- Программы для микроконтроллера
- Заключение
Что такое микроконтроллер
Прежде всего, разберемся с самим понятием «микроконтроллер». Микроконтроллер можно определить как миниатюрный компьютер на базе одного-единственного чипа, включающий, помимо процессора ряд вспомогательных элементов, таких, как ОЗУ, ППЗУ, таймер, и.т.д. Микроконтроллер предназначен для выполнения каких-либо заранее определенных заданий.
Проще всего сравнить микроконтроллер с персональным компьютером. Как и ПК, микроконтроллер имеет процессор, оперативную и постоянную память. Однако, в отличие от ПК, все эти элементы расположены на одном-единственном чипе.
Но означает ли это, что микроконтроллер равноценен персональному компьютеру? Разумеется, нет. ПК создан для того, чтобы выполнять задачи общего назначения. Например, вы можете использовать компьютер, для набора текста, хранения и запуска мультимедиа-файлов, серфинга в Интернет, и.т.д. Микроконтроллеры предназначены для выполнения специальных заданий, например, выключения кондиционера, когда температура в комнате опускается ниже определенного значения, или наоборот, его включения, когда температура повышается.
Существует несколько популярных семейств микроконтроллеров, которые используются для различных целей. Наиболее распространенными из них являются семейства микроконтроллеров 8051, PIC и AVR. И о последнем семействе мы и собираемся вам рассказать подробнее.
История семейства
Семейство микроконтроллеров AVR было создано в 1996 г. корпорацией Atmel, а разработчиками архитектуры микроконтроллеров являются Alf-Egil Bogen и Vegard Wollan. Отсюда и происходит название семейства – от первых букв имен разработчиков – A и V, и первой буквы аббревиатуры RISC – типа архитектуры, на которой базируется архитектура микроконтроллера. Также эту аббревиатуру часто расшифровывают как Advanced Virtual RISC (модернизированный эффективный RISC).
Первым микроконтроллером в серии был AT90S8515, однако первым микроконтроллером, выпущенным на рынок, стал AT90S1200. Это случилось в 1997 г.
На сегодняшний день доступны 3 линейки микроконтроллеров:
- TinyAVR – небольшой объем памяти, небольшие размеры, подходит для самых простых задач.
Внешний вид микроконтроллера TinyAVR
- MegaAVR – наиболее распространенная линейка, имеющая большой объем встроенной памяти (до 256 КБ), множество дополнительных устройств и предназначенная для задач средней и высокой сложности.
Внешний вид микроконтроллера MegaAVR
- XmegaAVR – используется в сложных коммерческих задачах, требующих большого объема памяти и высокой скорости.
Пример микроконтроллера XmegaAVR
Сравнительные характеристики различных линеек:
Название серии | Число контактов | Объем флэш-памяти | Особенность |
TinyAVR | 6-32 | 0,5 – 8 КБ | Небольшой размер |
MegaAVR | 28-100 | 4-256 КБ | Периферийные устройства |
XmegaAVR | 44-100 | 16-384 КБ | Система прерываний, поддержка DMA |
Особенности семейства
Прежде всего, микроконтроллеры этой серии являются быстрыми. Большинство инструкций процессор микроконтроллера выполняет за один цикл. Микроконтроллеры AVR примерно в 4 раза быстрее, чем PIC. Кроме того, они потребляют немного энергии и могут работать в 4 режимах экономии энергии.
Большинство контроллеров AVR являются 8-разрядными, хотя сейчас существует и 32-разрядная разновидность контроллеров AVR32. Кроме того, как уже упоминалось выше, AVR принадлежат к типу RISC-микроконтроллеров. Архитектура RISC (Complex Instruction Set Computers) означает, что набор инструкций, которые может выполнять процессор устройства, является ограниченным, но, в то же время, подобная архитектура дает преимущество в скорости. Противоположностью архитектуры RISC является архитектура CISC (Complex Instruction Set Computers).
32-разрядная разновидность контроллеров AVR32
8-битность контроллера означает, что он способен передавать и принимать 8-битные данные. Доступные регистры ввода/вывода также являются 8-битными.
Архитектура контроллера основана на регистрах. Это означает, что для хранения исходных данных операции и ее результата в контроллере используются регистры.
Процессор контроллера берет данные из двух входных регистров, выполняет логическую операцию и сохраняет результат в выходном регистре. Все это занимает 1 исполняемый цикл.
Архитектура контроллера
Всего контроллер AVR имеет 32 8-битных регистра общего назначения. В течение цикла процессор берет данные из двух регистров и помещает их в арифметико-логическое устройство (АЛУ), которое производит операцию над данными и помещает их в произвольный регистр. АЛУ может выполнять как арифметические, так и логические действия над операндами. Также АЛУ может выполнять и действия с одним операндом (регистром). При этом контроллер не имеет регистра-аккумулятора, в отличие от контроллеров семейства 8051 – для операций могут использоваться любые регистры, и результат операции также может быть помещен в любой регистр.
Контроллер соответствует Гарвардской вычислительной архитектуре, согласно которой компьютер имеет отдельную память для программ и данных. Поэтому в то время, пока выполняется одна инструкция, происходит предварительное извлечение из памяти следующей инструкции.
Котроллер способен выполнять одну инструкцию за цикл. Отсюда следует, что если тактовая частота контроллера составляет 1 МГц, то его производительность составит 1 млн. оп./c. Чем выше тактовая частота контроллера, тем выше будет его скорость. Однако при выборе тактовой частоты контроллера следует соблюдать разумный компромисс между его скоростью и энергопотреблением.
Помимо флэш-памяти и процессора контроллер имеет такие устройства, как порты ввода-вывода, аналого-цифровой преобразователь, таймеры, коммуникационные интерфейсы – I2C, SPI и последовательный порт UART. Все эти устройства могут контролироваться программно.
Типовая архитектура микроконтроллеров AVR
Программы для микроконтроллера
Как уже упоминалось выше, микроконтроллер подобен ПК, а это значит, что, как и ПК, AVR также может выполнять какую-либо программу, хотя и всего одну в какой-либо момент времени.
Программа микроконтроллера может храниться во встроенной памяти контроллера и представляет собой серию очень простых команд, которые выбирают данные и осуществляют с ними операции. В большинстве случаев это означает считывание входящих данных, проверка их состояния и вывода соответствующих выходных данных. Иногда может потребоваться изменение данных и совершение с ними некоторых операций, а также передача данных какому-либо внешнему устройству, например, индикатору, или последовательному порту.
Для таких элементарных задач используются наборы двоичных команд, каждая из которых имеет аналог на более доступном человеческому восприятию языке ассемблера. Поэтому наиболее распространенным способом написания программ для контроллера является написание их на языке ассемблера.
Преимуществом ассемблера является очень быстрый, компактный и эффективный код, но создание таких программ одновременно требует и глубоких знаний работы процессора контроллера, ручного управления памятью и контроля структуры программы. Поэтому зачастую для написания программ используются и языки высокого уровня, такие, как С, Basic и Java. В этом случае задачу по контролю структуры программы и управлению памятью берет на себя компилятор. Кроме того, часто используемые функции могут быть при этом помещены в библиотеки и извлекаться из них по мере надобности.
Заключение
Микроконтроллеры семейства AVR на сегодняшний день повсеместно используются в компьютерах, для автоматизации управления электронной аппаратурой, различными приборами и механизмами, применяемыми в промышленных, коммерческих, а также бытовых целях. Невысокая стоимость, широкий ассортимент и богатые возможности микроконтроллеров этой серии способствовали их большой популярности.
Порекомендуйте Друзьям статью:
Что такое микроконтроллер, семейства и корпуса AVR микроконтроллеров
Попробуем разобраться что же представляет из себя AVR микроконтроллер, что это такое и из чего состоит. Узнаем какие есть семейства микроконтроллеров от фирмы ATMEL и в каких корпусах выпускаются микро-чипы от данного производителя.
Сделаем выбор корпуса микросхемы, наиболее пригодного для знакомства с AVR микроконтроллерами.Содержание:
- Контроллеры и микроконтроллеры
- Что такое AVR микроконтроллер
- Корпуса для AVR микросхем
- Заключение
Контроллеры и микроконтроллеры
Микроконтроллер – это электронное устройство, микросхема которая представляет собою маленький компьютер со своей памятью и вычислительным ядром(микропроцессором), а также с набором дополнительных интерфейсов для подключения самых разных устройств для ввода и вывода различной информации, управления устройствами и измерения различных параметров. Микропроцессор, оперативная память, флешь-память, порты ввода/вывода, таймеры, интерфейсы связи – все это заключено в одном кристалле, одной микросхеме которая и называется микроконтроллером.
Чем отличается микроконтроллер от контроллера? – под контроллером подразумевается определенная схема или плата с различными компонентами для контроля и выполнения поставленных задач, а микроконтроллер – это схема универсального контроллера, которая размещена на маленьком кристаллике микросхемы и которая способна работать по четко заданной программе.
Работа микроконтроллера и его периферии осуществляется по программе, которая записывается во внутреннюю память и способна храниться в такой памяти достаточно длительный срок(несколько десятков лет).
Что такое AVR микроконтроллер
AVR микроконтроллеры, производимые фирмой ATMEL – это семейство 8-битных и более новых 32-битных микроконтроллеров с архитектурой RISC, которые совмещают в себе вычислительное ядро, Flash-память и разнообразную периферию (аналоговые и цифровые входы и выходы, интерфейсы и т.п.) на одном кристале. Это маленькие и очень универсальные по функционалу микросхемки, которые могут выполнять контроль и управлять различными устройствами, взаимодействовать между собою потребляя при этом очень мало энергии.
Данное RISC-ядро было разработано двумя студентами из города Тронхейма (третий по населению город Норвегии, расположен в устье реки Нидельвы) – Альф Боген (Alf-Egil Bogen) и Вегард Воллен (Vegard Wollen). В 1995м году данные персоны сделали предложение корпорации ATMEL на выпуск новых 8-битных микроконтроллеров, с тех пор AVR микроконтроллеры заполучили большую популярность и широкое применение.
Что обозначает аббревиатура AVR? – здесь наиболее вероятны два варианта:
- Advanced Virtual RISC;
- Alf Egil Bogen Vegard Wollan RISC, в честь создателей – Альфа и Вегарда .
Весь класс микроконтроллеров поделен на семейства:
- tinyAVR (например:ATtiny13, ATtiny88б ATtiny167) – начальный класс, миниатюрные чипы, мало памяти и портов, базовая периферия;
- megaAVR (например: ATmega8, ATmega48, ATmega2561) – средний класс, больше памяти и портов, более разнообразная периферия;
- XMEGA AVR (например: ATxmega256A3U, ATxmega256A3B) – старший класс, много ресурсов, хорошая производительность, поддержка USB, улучшенная безопасность;
- 32-bit AVR UC3 (например: AT32UC3L016, ATUC256L4U) – новые высокопроизводительные 32-битные микроконтроллеры поддерживающие много технологий и интерфейсов среди которых USB, Ethernet MAC, SDRAM, NAND Flash и другие.
Микроконтроллеры AVR имеют обширную систему команд, которая насчитывает от 90 до 133 команд в зависимости от модели микроконтроллера. Для сравнения: PIC-микроконтроллеры содержат от 35 до 83 команд, в зависимости от семейства.
Большинство команд хорошо оптимизированы и выполняется за один такт, что позволяет получить хорошую производительность при небольших затратах ресурсов и энергии.
Корпуса для AVR микросхем
Микроконтроллеры AVR выпускаются в корпусах DIP, SOIC, TQFP, PLCC, MLF, CBGA и других. Примеры некоторых корпусов приведены на рисунке ниже.
Рис. 1. Корпуса микросхем для микроконтроллеров AVR – DIP, SOIC, TQFP, PLCC.
Как видим, корпуса для AVR микроконтроллеров есть на любой вкус и потребности. Можно выбрать недорогой чип в корпусе DIP8 и смастерить миниатюрную игрушку или же какое-то простое устройство, а можно купить более функциональный и дорогой микроконтроллер в корпусе TQFP64 и подключить к нему разнообразные датчики, индикаторы и исполнительные устройства для выполнения более серьезных задач.
Для начинающих программистов AVR наиболее удобны микросхемы в корпусе DIP, данные микросхемы удобно паять и они очень просто монтируются на разнообразных монтажных панелях, к примеру на Breadboard и других.
Рис. 2. AVR микроконтроллеры ATmega8 и ATtiny13 в корпусе DIP на макетной панели (Breadboard).
Из рисунка видим что здесь ничего не нужно паять, поместили микроконтроллер в гнезда макетной панели и можем подключать к нему питание, светодиоды с резисторами, различные микросхемки, программатор и разную периферию. Очень просто и удобно!
Заключение
В следующей статье рассмотрим варианты применения AVR микроконтроллеров, где они уже используются и для чего. Постараюсь дать ответ на вопрос “зачем мне изучать программирование AVR микроконтроллеров?”.
Начало цикла статей: Программирование AVR микроконтроллеров в Linux на языках Asembler и C.
3 6763 Микроконтроллеры
Микроконтроллеры AVR – SparkFun Electronics
Фильтровать и сортировать
Сортировать по:
- Самый популярный
- Самая высокая цена
- Низшая цена
- Алфавитный
- Наивысшее количество отзывов
- Новейшие
- Самый старый
Уточнить по:
- SparkFun Оригинал
- В продаже
- В наличии
Отзывы покупателей:
- 5 звезд
- 4 звезды
- 3 звезды
- 2 звезды
- 1 звезда
Цена:
- $0 – $10
- $10 – $20
- 20-30 долларов
- $30 – $40
- 40 – 50 долларов
- 50 – 75 долларов США
- $75 — $100
- $100 +
Минимальная цена
к Максимальная цена
Применить пользовательский ценовой фильтр
Пенсионер:
- Показывать только пенсионеров
Применить фильтры:
Конфигурация выводов, архитектура и приложения
Усовершенствованная версия микропроцессора представляет собой микроконтроллер, который включает в себя ЦП, контроллер прерываний, ОЗУ, ПЗУ, блок ввода-вывода и т. д. Микроконтроллер в основном используется для работы высокоскоростных обработка сигналов во встроенной системе. Таким образом, он работает как основной компонент при разработке встроенной системы. Доступны различные типы микроконтроллеров, которые используются в соответствии с такими требованиями, как 8051, PIC, AVR и т. д. Поэтому в этой статье дается краткая информация об одном из типов микроконтроллеров, а именно о Микроконтроллер AVR .
Микроконтроллер AVR был произведен корпорацией Atmel в 1996 году, а его архитектура была разработана «Alf-Egil Bogen & Vegard Wollan». Название этого микроконтроллера было взято от его разработчиков, а именно микроконтроллера Alf-Egil Bogen & Vegard Wollan RISC. Первым микроконтроллером на основе архитектуры AVR является
AVR от Atmel — одно из самых популярных семейств микроконтроллеров на сегодняшний день. Причиной такой огромной популярности является относительная простота использования и низкая стоимость микроконтроллеров, которые можно приобрести в 8-контактных корпусах по цене от 1 до 10 долларов.
Усовершенствованная версия микрокомпьютера, интегрированного в крошечный чип, известна как микроконтроллер AVR. Этот микроконтроллер включает в себя процессор, программируемые периферийные устройства ввода/вывода и память. Микроконтроллер AVR обеспечивает цифровое управление любыми электрическими, автомобильными или механическими системами, промышленными предприятиями, различными устройствами, электронными гаджетами и т. д. Эти микроконтроллеры доступны в 8-, 16- и 32-разрядных ИС. Итак, наиболее часто используемые микроконтроллеры AVR: Микроконтроллеры ATmega8, ATmega16, ATmega32 и ATmega328.
Микроконтроллер AVR
Микроконтроллеры AVR доступны в 3 категориях, таких как TinyAVR, MegaAVR и XmegaAVR.
- Микроконтроллеры TinyAVR доступны в небольших размерах, имеют меньший объем памяти и предназначены только для более простых приложений. Микроконтроллеры
- MegaAVR очень известны, потому что они имеют до 256 КБ памяти, включают максимальное количество периферийных устройств и используются в приложениях от средних до сложных.
- XmegaAVR часто используется для сложных приложений, где требуется высокая скорость и большой объем программной памяти.
AVR поддерживает широкий диапазон наборов инструкций, включая оригинальный набор инструкций ATmel THUMB, а также обычный набор инструкций ARM. Платы Arduino используют микроконтроллеры серии ATMEL ATmega в качестве своих
. Наименование серии | Количество контактов | Флэш-память | Особая функция |
TinyAVR | от 6 до 32 | от 0,5 до 8 КБ | Маленький размер |
МегаАВР | от 28 до 100 | 4 до 256 КБ | Расширенные периферийные устройства |
XmegaAVR | от 44 до 100 | от 16 до 384 КБ | Включены DMA и система событий. |
Особенности микроконтроллера AVR
Особенности микроконтроллера AVR включают следующее.
- Флэш-память 16 КБ. SRAM составляет 1 КБ.
- 10-разрядный • 8-канальный АЦП.
- EPROM составляет 512 байт.
- Интернет-провайдер или внутрисистемный программатор.
- Серийный USART.
- DIP-пакет.
- 16-битный таймер или счетчик -1.
- 8-битные таймеры или счетчики -2.
- Цифро-аналоговый компаратор.
- Главный или подчиненный последовательный интерфейс SPI.
- SPI-интерфейс.
- Доступен в 40-контактном исполнении.
- Каналы ШИМ -4.
- Программируемый последовательный USART.
- Программируемый сторожевой таймер, включающий отдельный встроенный генератор.
- ЦП ARM
Типы микроконтроллеров AVR
Доступны четыре типа микроконтроллеров AVR, таких как микроконтроллеры ATmega8, ATmega16, ATmega32 и ATmega328, где каждый микроконтроллер и его функции обсуждаются ниже.
Микроконтроллер Atmega8 AVR
Этот микроконтроллер представляет собой 28-выводную ИС, включающую внутреннюю SRAM-1 КБ, флэш-память-8 КБ и поддержку двух внешних прерываний. Этот микроконтроллер основан на архитектуре RISC и разработан компанией Microchip. Этот микроконтроллер доступен в трех корпусах PDIP, TQFP и MLF, где первый пакет включает 28 контактов, а остальные два пакета будут доступны с 32 контактами на каждом модуле.
Atmega8
Память программ или флэш-память этого микроконтроллера составляет 8 КБ, которые используются для хранения программного кода и постоянных настроек. Этот микроконтроллер используется для создания электрических и электронных проектов.
Микроконтроллер Atmega16 AVR
Это высокопроизводительный 8-разрядный микроконтроллер из семейства Mega AVR компании Atmel. Этот микроконтроллер включает в себя 40 контактов на основе усовершенствованной архитектуры RISC, включая 131 мощную инструкцию. Так что это один из самых используемых и дешевых микроконтроллеров, потому что он имеет несколько контактов и функций.
Atmega16
Имеет программируемую флэш-память – 16 КБ, 1 КБ статической ОЗУ и 512 байт EEPROM. Этот тип микроконтроллера включает в себя 32 регистра общего назначения и набор инструкций, которые подключены непосредственно к АЛУ и позволяют получить доступ к 2 отдельным регистрам в рамках одной инструкции, которая выполняется за один цикл CLK.
Срок службы флэш-памяти, а также EEPROM составляет около 10 КБ и 100 КБ соответственно. Большинство инструкций в этом микроконтроллере выполняются за один машинный цикл, и он может работать на максимальной частоте 16 МГц.
Микроконтроллер Atmega16 AVR используется в коммерческих продуктах и небольших промышленных машинах. Этот микроконтроллер также может использоваться для измерения рабочего цикла и частоты внешнего устройства.
Микроконтроллер Atmega32 AVR
-мощный, высокопроизводительный микроконтроллер на основе RISC. Этот контроллер работает от 1,8 до 5,5 вольт.Atmega32
Этот микроконтроллер имеет различные функции, например, он сочетает в себе 32 КБ флэш-памяти ISP с 1 КБ EEPROM, 2 КБ SRAM, возможности чтения во время записи, линии ввода/вывода общего назначения, рабочие регистры общего назначения-32 , интерфейс JTAG для встроенной отладки или программирования, 3 настраиваемых таймера/счетчика, включая режимы сравнения, последовательный программируемый USART, последовательный порт SPI, внутренние и внешние прерывания, универсальный последовательный интерфейс USI с детектором условий запуска, программируемый сторожевой таймер включая внутренний генератор, 10-битный 8-канальный аналого-цифровой преобразователь и т. д.
Микроконтроллер Atmega32 AVR используется в системах управления двигателем, DSP, периферийных интерфейсных системах, системах контроля температуры, измерении аналоговых сигналов и различных встроенных системах, таких как торговые автоматы, кофемашины и т. д.
Микроконтроллер Atmega328 AVR
высокопроизводительный и маломощный 8-разрядный микрочип на основе RISC, который просто сочетает в себе 32 КБ флэш-памяти ISP с возможностями чтения во время записи. Рабочее напряжение этого микроконтроллера AVR составляет от 1,8 до 5,5 вольт.
Микроконтроллер Atmega328 AVR
Основные характеристики микроконтроллера AVR Atmega328 в основном включают EEPROM-1 КБ, SRAM-2 КБ, 32 регистра общего назначения, 23 линии ввода-вывода общего назначения, гибкий таймер или счетчики-3, включая сравнение режимы, последовательный программируемый USART, внутренние и внешние прерывания, последовательный порт SPI, 2-проводной последовательный интерфейс, 10-битный 6-канальный аналого-цифровой преобразователь, программируемый сторожевой таймер, включая внутренний генератор, и пять программно выбираемых режимов энергосбережения.
Применение микроконтроллера Atmega328 AVR в основном относится к автономным системам и различным электронным проектам, где требуется маломощная, простая и недорогая микросхема. Это самый популярный контроллер AVR, поэтому он используется в платформах разработки Arduino, таких как различные платы ARDUINO, такие как модели Arduino Uno, Arduino Nano и Arduino Pro Mini.
Схема контактов микроконтроллера AVR
Конфигурация контактов микроконтроллера AVR Atmega 32 показана ниже. Этот микроконтроллер включает в себя четыре порта порт-A, порт-B, порт-C и порт-D. Порт-A в основном включает в себя контакты от PA7 до PA0, порт-B включает в себя контакты от PB7 до PB0, порт-C включает в себя от PC7 до PC0, а порт-D включает в себя от PD7 до PD0.
Конфигурация контактов микроконтроллера AVR
Порт-A (PA7-PA0)
В приведенном выше микроконтроллере AVR контакты в порту-A в основном включают PA7-PA0, который работает как 8-битный двунаправленный порт ввода-вывода. , а также аналоговые входы аналого-цифрового преобразователя, если этот аналого-цифровой преобразователь не используется. Эти контакты обеспечивают внутренние подтягивающие резисторы.
Выходные данные буферов порта A в основном включают симметричные характеристики привода, включая высокую пропускную способность приемника и истока. Как только выводы порта A используются в качестве входов от PA0 до PA7, они внешне подтягиваются к низкому уровню, а затем они будут обеспечивать ток, если включены внутренние подтягивающие резисторы. Выводы в этом порту имеют три состояния, когда включается состояние сброса, даже если CLK не работает.
Порт B (PB7-PB0) и порт D (PD7-PD0)
Контакты в этих двух портах в основном включают PB7-PB0 и PD7-PD0. Эти порты представляют собой 8-битные двунаправленные порты ввода-вывода, включая внутренние подтягивающие резисторы. Выход этих двух портовых буферов в основном включает в себя симметричные характеристики привода, в том числе высокую пропускную способность как приемника, так и истока. Как и на входах, контакты этого порта, которые имеют низкий уровень извне, будут обеспечивать ток, если активируются резисторы. Выводы этих двух портов находятся в тройном состоянии всякий раз, когда условие сброса становится активным, даже если CLK не работает.
Порт C (PC7-PC0)
Контакты в порту C в основном включают от PC7 до PC0, и это 8-битный двунаправленный порт ввода/вывода. Если интерфейс JTAG (Joint Test Action Group) разрешен, подтягивающие резисторы на таких контактах, как PC3 (TMS), PC2 (TCK) и PC5 (TDI), будут срабатывать, даже если произойдет сброс.
Вывод TD0 находится в трех состояниях, если TAP не указывает, что введены данные переключения. Порт C также выполняет функции интерфейса JTAG и другие специальные функции ATmega32.
VCC: это цифровой контакт подачи напряжения.
GND: это контакт GND.
RESET
Это контакт RESET, используемый для установки микроконтроллера ATmega32 в его основное значение. Во время запуска приложения этот вывод должен быть установлен на два оборота машины.
XTAL1
Это входной контакт для инвертирующего усилителя генератора, а также для внутренней рабочей схемы CLK.
XTAL2
Этот контакт является выходом инвертирующего усилителя генератора.
AVCC
Это контакт подачи напряжения для порта A, а также аналого-цифрового преобразователя. Подключение этого вывода должно быть выполнено извне к VCC, даже если аналого-цифровой преобразователь не используется. Если используется аналого-цифровой преобразователь, он должен быть подключен к VCC с фильтром нижних частот.
AREF
Это аналоговый эталонный контакт, используемый для аналого-цифрового преобразователя.
Архитектура микроконтроллера AVR
Архитектура микроконтроллера AVR основана на усовершенствованном RISC и включает 32 8-битных регистра общего назначения. За один цикл CLK этот микроконтроллер может получить входные данные из двух регистров, чтобы подключить их к АЛУ для запрошенной операции и вернуть результат в произвольный регистр. Здесь АЛУ выполняет арифметические и логические операции над входными данными из регистра.
AVR может выполнять один цикл, что означает, что этот микроконтроллер может выполнять 1 миллион инструкций в секунду, если частота цикла составляет 1 МГц. Чем выше рабочая частота контроллера, тем выше будет и скорость его обработки. Таким образом, энергопотребление необходимо оптимизировать с учетом скорости обработки и, следовательно, необходимо соответствующим образом выбирать рабочую частоту.
Архитектура микроконтроллера AVR включает в себя различные строительные блоки, и каждый блок поясняется на блок-схеме микроконтроллера AVR, показанной ниже.
Архитектура микроконтроллера AVR
Порты ввода-вывода
Микроконтроллер AVR имеет четыре 8-битных порта ввода-вывода, такие как PORT-A, PORT-B, PORT-C и PORT-D.
Внутренний калиброванный генератор
Микроконтроллер AVR включает внутренний генератор, используемый для управления его CLK. Этот микроконтроллер настроен на работу с внутренним калиброванным генератором с частотой 1 МГц. Таким образом, максимальная частота внутреннего генератора составляет 8 МГц.
Интерфейс АЦП
Этот микроконтроллер включает 8-канальный АЦП с 10-разрядным разрешением. Основной функцией этого АЦП является считывание аналогового входа.
Таймеры/счетчики
Микроконтроллер включает в себя два 8-разрядных и один 16-разрядный таймер/счетчик. Основная функция таймеров в этом контроллере — генерировать точные действия, такие как временные задержки, создаваемые между двумя операциями.
Сторожевой таймер
В этом микроконтроллере присутствует сторожевой таймер с внутренним генератором. Основная функция этого заключается в непрерывном мониторинге и сбросе контроллера, если код перехватывается во время выполнения в течение определенного интервала времени.
Прерывания
Этот микроконтроллер содержит 21 прерывание, из которых 16 внутренних, а остальные внешние. Здесь внутренние прерывания поддерживают различные периферийные устройства, такие как АЦП, USART, таймеры и т. д. серийно.
Регистры общего назначения
Этот микроконтроллер имеет 32 регистра общего назначения, где эти регистры напрямую связаны с АЛУ ЦП.
Память
Память этого микроконтроллера включает три различных раздела
Flash EEPROM
Этот тип памяти удобен для хранения программы, загруженной пользователем в микроконтроллер AVR. Эта программа может быть просто электрически удалена как единое целое. Эта память является энергонезависимой, что означает, что при отключении питания программа не будет стерта. Этот микроконтроллер включает 16 КБ внутрисистемно программируемой флэш-памяти EEPROM.
EEPROM с байтовой адресацией
EEPROM с байтовой адресацией — это энергонезависимая память, которая в основном используется для хранения данных. Этот микроконтроллер включает EEPROM-512 байт, поэтому эта память может быть просто полезна для хранения кода замка, если мы разрабатываем приложение для электронного дверного замка.
SRAM
SRAM означает статическую оперативную память, которая является энергозависимой памятью микроконтроллера AVR, поэтому данные будут потеряны при отключении питания. Этот микроконтроллер включает в себя 1 КБ внутренней памяти SRAM. Небольшая часть SRAM зарезервирована для регистров общего назначения, которые используются ЦП, а также некоторыми другими периферийными подсистемами.
ISP
Эти микроконтроллеры включают внутрисистемную программируемую флэш-память или ISP, которую можно просто запрограммировать, не отсоединяя микросхему от схемы; Это позволяет перепрограммировать микроконтроллер, когда он находится в прикладной схеме.
SPI
Термин SPI означает последовательный периферийный интерфейс, который в основном используется для последовательной связи между двумя разными устройствами на общем источнике CLK. Скорость передачи данных SPI выше, чем у USART.
TWI
TWI — это двухпроводной интерфейс, который можно использовать для подключения устройств к сети, поэтому несколько устройств можно просто подключить над этим интерфейсом, чтобы сформировать эту сеть, чтобы передача данных могла выполняться одновременно устройствами с собственный уникальный адрес.
ЦАП
ЦАП или цифро-аналоговый преобразователь в микроконтроллере используется для обратного действия АЦП. Этот преобразователь просто используется всякий раз, когда требуется изменить сигнал с цифрового на аналоговый.
Преимущества и недостатки
К преимуществам микроконтроллера AVR r относятся следующие.
- Эти микроконтроллеры отличаются высокой скоростью, высокой производительностью и меньшим энергопотреблением.
- Отменяет машинный цикл для выполнения конвейерной операции как с циклом CLK, так и с циклом команд.
- Очень прост в использовании и дешевле.
- Высокая производительность.
- Меньший вес.
- Легко доступен на рынке.
- Простота программирования и настройки.
К недостаткам микроконтроллера AVR относятся следующие.
- Он имеет единственный источник, поэтому доступен только от Atmel.
- Эти микроконтроллеры имеют довольно низкую мощность.
- Его максимальная скорость составляет около 20 MIPS.
- Мощность процессора и память ограничены, поэтому они не требуются для каждого приложения.
Приложения
приложений микроконтроллера AVR включают следующее.
- Микроконтроллер AVR в основном используется во встроенных системах для высокоскоростной обработки сигналов.
- Эти микроконтроллеры используются в сенсорных экранах, домашней автоматизации, медицинских устройствах, обороне, автомобилях и т. д.
- Этот микроконтроллер может использоваться во многих типах проектов, таких как сбор данных, управление движением, для обнаружения сигналов, интерфейс GPS, GSM, двигатели, дисплеи на ЖК-дисплее, разработка беспилотных летательных аппаратов и т. д.
Перейдите по этой ссылке для получения MCQ микроконтроллера AVR
Какие проекты можно создавать с помощью микроконтроллера AVR?
Ответ: С микроконтроллером AVR можно делать все что угодно! Некоторые примеры включают роботов, световые мечи, дверные звонки и многое другое!
Что такое AVR?
A: AVR означает виртуальный микроконтроллер Atmel. Это серия микроконтроллеров, разработанная Atmel, которая является полупроводниковой компанией, базирующейся в Соединенных Штатах. Компания была основана в 1984 и с тех пор стала одним из крупнейших производителей микроконтроллеров, продавая более 100 миллионов продуктов в год. Их флагманский продукт — линейка микроконтроллеров AVR, которые используются во всем, от бытовой техники до потребительской электроники.
Зачем использовать микроконтроллеры AVR?
Основная причина, по которой используются микроконтроллеры AVR, заключается в том, что они дешевы и просты в использовании. Они могут быть запрограммированы с использованием языка программирования C, что делает их простыми в использовании. Кроме того, они очень маленькие по размеру, что делает их очень портативными и легкими.
Как запрограммировать микроконтроллер AVR?
Для программирования микроконтроллера AVR вам необходимо подключить к нему свой ПК или ноутбук с помощью USB-кабеля или модуля Bluetooth, чтобы вы могли загрузить на него код со своего компьютера.