Отправляет email-рассылки с помощью сервиса Sendsay

Цифровая схемотехника

  Все выпуски  

Цифровая схемотехника


Информационный Канал Subscribe.Ru

Цифровая схемотехника
Почтовая рассылка
Выпуск №20 от 01.02.2006 г.


Добрый день, уважаемый подписчик!

Приношу глубокие извинения за нерегулярность рассылки. Предлагаю вашему вниманию только что написанную главу из нового издания моей книги "Самоучитель по микропроцессорной технике". Тема книги полностью соответствует тематике моей рассылки.

Микроконтроллеры семейства AVR

 

3.1. Общие сведения

В предыдущей главе этой книги мы рассмотрели общие принципы работы микропроцессорной системы. Теперь рассмотрим, как это выглядит на примере конкретных микроконтроллеров. В первом издании книги в качестве примера был использован микроконтроллер AT89 C2051. Это микросхема из популярной в свое время серии AT89 фирмы Atmel. Главным преимуществом этой серии была совместимость с микроконтроллерами iMCS-51 фирмы Intel, которая в свою очередь была очень распространена в 80 годы прошлого (двадцатого) столетия. Однако, в настоящее время все эти микросхемы, к сожалению, устарели. На смену им пришли новые микроконтроллеры. И самыми популярными на сегодняшний день являются микроконтроллеры серии AVR фирмы Atmel. Поэтому в настоящей книге мы остановимся на микроконтроллерах именно этой серии.

Серия AVR состоит из несколько семейств. Основу серии составляют два семейства: Микроконтроллеры семейства Tiny предназначены для простых недорогих устройств. Они имеют минимальный набор возможностей и невысокую цену. Микроконтроллеры семейства Mega напротив имеют развитую архитектуру и предназначены для более мощных микропроцессорных систем. Кроме того, фирма Atmel выпускает еще несколько видов микроконтроллеров, которые она так же относит к серии AVR. Полный состав этой серии приведен в таблице 3.1.

В нашей книге для примеров мы будем использовать микроконтроллеры преимущественно из семейства Tiny. Благодаря единой системе команд для всех микроконтроллеров AVR и единому принципу внутреннего устройства, научившись программировать для микроконтроллеров Tiny, вы без труда сможете перейти к микроконтроллерам из других семейств.

Разрабатывая серию AVR, компания Atmel решила не привязываться к старым своим Разработкам и кардинально изменила как внутреннюю архитектуру новых микроконтроллеров, так и систему команд. По этому новое издание книги, которое вы держите сейчас в руках именно с этой главы кардинально отличается от первоначального. И внутреннее устройство и приемы программирования и способы подключения внешних устройств микроконтроллеров AVR кардинально отличаются от использованного в первом издании AT89 C2051. Поэтому новое издание – это, практически, другая книга.

 

Итак, что же представляют собой микроконтроллеры серии AVR. Семейство AVR включает в себя микроконтроллеры самой разной конфигурации, разным объемом памяти и разным количеством встроенных портов ввода вывода и других дополнительных устройств. Конструктивное исполнение микроконтроллеров так же очень разнообразно. Применяется несколько типов корпусов (см. рис 3.1). Это традиционные корпуса типа PDIP с количеством ножек от 8 до 40. Корпуса типа SOIC с количеством выводов от 8 до 20. А большинство микроконтроллеров семейства Mega AVR выполнятся либо в сорокавыводных PDIP корпусах, либо в современных многовыводных корпусах типа TQFP или MLF (до 64 выводов).

 

Рисунок 3.1.

 

В задачи данной книги не входит полное описание всех микросхем серии AVR. Здесь мы познакомимся лишь с теми сведениями, которые необходимы для дальнейшего понимания материала. Для детального изучения конкретных микросхем рекомендую обратиться к [1]. Или скачать оригинальную документацию от производителя, с официального сайта фирмы Atmel ( www. atmel. com). К сожалению, выложенная там документация существует только на английском языке. Полный список всех микроконтроллеров серии AVR, производимых фирмой Atmel в настоящее время Основные характеристики приведен в таблице 3.1.

Микроконтроллеры серии AVR относятся к классу восьмиразрядных микроконтроллеров. Это значит, что подавляющее большинство операций процессоры производят с восьмиразрядными двоичными числами. По этой причине встроенная шина данных у этих контроллеров тоже восьмиразрядная. Все ячейки памяти и большинство регистров микроконтроллера так же восьмиразрядные. Кроме восьмиразрядных регистров в состав микроконтроллеров AVR входят так же и шестнадцатиразрядные регистры. Однако каждый из таких регистров разделен на два восьмиразрядных подрегистра, и микроконтроллер обращается к каждой половинке, как к отдельному восьмиразрядному регистру. Исключение составляет память программ. Она целиком состоит из шестнадцатиразрядных ячеек.

Микроконтроллеры AVR изготавливаются по КМОП технологии, благодаря которой они имеют достаточно высокое быстродействие и низкий ток потребления. Большинство команд микроконтроллера выполняется за один такт. Поэтому быстродействие контроллеров может достигать 1 миллиона операций в секунду при тактовой частоте 1 МГц.

Таблица 3.1. Микроконтроллеры серии AVR, Список параметров
Таблицу я приводить не буду (очень большая), но на сайте Atmel имеется аналогичная таблица

Микроконтроллеры AVR имеют в своем составе три вида памяти. Во-первых, это ОЗУ (оперативная память для данных). В документации фирмы Atmel эта память называется SRAM. Объем ОЗУ для разных контроллеров варьируется от полного ее отсутствия (в микросхеме AT90 S1200) до 2 кбайт. Подробнее смотрите графу " SRAM" таблицы 3.1. Второй вид памяти – это память программ. Она выполнена по Flesh – технологии и предназначена для хранения управляющей программы. Объем программной памяти в разных микросхемах этой серии составляет от 1 до 64 кбайт. Подробнее смотрите графу " Flesh" таблицы 3.1. Программная память допускает стирание записанной туда информации, и повторную запись. Однако количество циклов записи/стирания ограничено. Программная память микроконтроллеров AVR допускает до 1000 циклов записи/стирания. Запись информации в память программ производится при помощи специальных устройств (программаторов). Последние модели микроконтроллеров AVR имеют режим авто перезаписи памяти программ. То есть, программа может сама себя переписывать.

Третий вид памяти – это энергонезависимая память для данных. В технической документации она называется EEPROM. Основное назначение этого вида памяти – хранение данных при выключенном источнике питания. Программа может в любой момент записать данные в EEPROM или прочитать их оттуда. Память EEPROM допускает до 100000 циклов записи/стирания. Количество циклов чтения из EEPROM не ограничено. Объем памяти EEPROM сравнительно не большой. Для разных микросхем он составляет от 64 байт до 2 кбайт. Для большинства задач этого вполне достаточно. Объем EEPROM для разных микросхем вы можете узнать из соответствующей колонки таблицы 3.1. Программирование EEPROM возможно так же при помощи того же внешнего программатора, при помощи которого программируется память программ. Это используется для записи начальных значений.

Микроконтроллеры AVR допускают несколько способов программирования Flash и EEPROM. Основные способы – это параллельное программирование (Self-Prog) и последовательное внутрисхемное программирование с использованием SPI интерфейса. В таблице 3.1 в графе "ISP (I), Self-Prog (S)" для каждой микросхемы показаны поддерживаемые способы программирования. Буква I означает наличие ISP, а буква S – наличие режима Self- Prog.

Порты ввода/вывода - это обязательный атрибут любого микроконтроллера. Их количество для каждой конкретной микросхемы разное. Все порты восьмиразрядные, но в некоторых случаях некоторые разряды не используются. Это связано с ограничением на количество выводов микросхемы. В таблице 3.1 в графе «Кол-во выв. I/O» указано общее количество линий ввода/вывода. У каждого порта может использоваться все семь выводов. Но может использоваться всего шесть, пять или даже три вывода. Процессор всегда пишет и читает в такие порты полноценный байт информации. Неиспользуемые биты при записи просто теряются. При чтении процессор читает полный байт. Неиспользуемые разряды в прочитанном байте равны нулю.

 

Кроме центрального процессора, памяти и портов ввода/вывода, любой микроконтроллер AVR содержит обязательный набор так называемых периферийных устройств. Периферийные они по отношению к ЦПУ микроконтроллера. Но находятся они так же внутри микросхемы. Перечислим эти устройства:

 

  • Встроенные таймеры/счетчики. Микроконтроллеры AVR содержат несколько их видов. Есть восьми и шестнадцатиразрядные таймеры. Их количество меняется от одного до трех.
  • Генератор сигнала с широтно-импульсной модуляцией (ШИМ)
  • Аналоговый компаратор.
  • Аналогово-цифровой преобразователь (АЦП). АЦП микроконтроллеров AVR имеют либо 6, либо 8 каналов (могут преобразовывать в цифры до 8 входных аналоговых сигналов).
  • Последовательный приемо-передатчик. Предназначен для организации последовательного канала связи с другими устройствами. Например, с COM-портом компьютера.
  • Специализированный последовательный канал SPI. Может применяться для обмена информацией между разными микроконтроллерами. А так же для программирования памяти программ в последовательном режиме.

 

Микроконтроллеры серии AVR содержат и другие периферийные элементы. Но об этом мы поговорим позже. Теперь же наша задача – изучение архитектуры микроконтроллеров AVR. Под архитектурой понимается объем и структура всех видов памяти микроконтроллера, количество и свойства регистров общего назначения, структура и методы доступа портов ввода/вывода, устройство системы прерываний, набор встроенных периферийных устройств и способы управления ими. В последующих главах мы раскроем все эти вопросы.

 

Более подробно, о новой книге можете посмотреть по адресу http://book.microprocessor.by.ru

 


Если у вас в этом письме не открываются картинки, и вы не знаете, что делать, перейдите по ссылке и прочитайте подробную инструкцию о том, как добиться появления картинок.

Автор рассылки Белов А.В.         avbelov@ukr.net


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: tech.digitchip01
Архив рассылки
Отписаться Вебом Почтой
Вспомнить пароль

В избранное