Глава III. Лабораторный практикум по микроконтроллерам семейства AVR фирмы ATMEL

Магомедов И. А.

 

 

Микропроцессорные системы.

Теория и практика применения микроконтроллеров

 

 

 

Махачкала 2011

 

 

ББК 32.973.26-04

УДК 681.325.5-181.4

 

Магомедов И. А. Микропроцессорные системы. Теория и практика применения микроконтроллеров. - Учебное пособие, 2011. –263с

 

Рецензенты:

1. д.т.н., профессор Мелехин В.Б.- заведующий кафедрой вычислительной техники Дагестанского государственного технического университета

2. д.т.н., профессор Исмаилов Ш.А. -директор научно-исследовательского технологического института информатики

3. к.т.н. Меркухин Е.Н - доцент кафедры прикладной информатики филиала (института) Московского государственного открытого университета в Махачкале

 

 

В учебном пособии рассмотрены: архитектуры современных микроконтроллеров и их особенности; программные модели микроконтроллеров; режимы адресации и форматы команд. Приведены описания периферийных модулей микроконтроллеров семейства AVR фирмы Atmel, примеры их использования и лабораторный практикум по изучению микроконтроллеров.

Учебное пособие предназначено для студентов высших учебных заведений, обучающихся по направлениям подготовки дипломированных специалистов и специальностям в области информатики и вычислительной техники и может быть полезным для инженерно-технических работников, связанных с разработкой аппаратуры на микроконтроллерах.

 

 

Допушено Учебно-методическим объединением вузов по университетскому политехническому образоваю в качестве учебного пособия для студентов высших учебных заведений, обучающихся по направлению 230100 «Информатика и вычислительная техника»

ББК 32.973.26-04

Предисловие

Введение

Глава I. Микроконтроллеры

1.1. Классификация микроконтроллеров

1.2. Направление развития элементной базы 8-разрядных

микроконтроллеров

Глава II. Высокопроизводительные RISC микроконтроллеры семейства AVR

2.1. Микроконтроллер фирмы Atmel ATmega128

Системное управление и сброс микроконтроллера

2.3. Программная модель микроконтроллера

2.4. Подсистема памяти микроконтроллера

2.5. Периферийные модули микроконтроллера ATmega128

2.5.1. Параллельные порты ввода-вывода

2.5.2. Использование параллельных портов для управления жидкокристаллическим индикатором и матрицы кнопок

Подсистема таймера/счетчика микроконтроллера ATmega128

Восьмиразрядный таймер-счетчик 0 с функциями ШИМ и асинхронного тактирования

2.6.2. 16-разрядные таймеры-счетчики

2.7. Подсистема ввода аналоговых сигналов МК

Аналоговый компаратор

Последовательный периферийный интерфейс – SPI

2.9.1. Пример использования интерфейса SPI

микроконтроллера ATmega128

Универсальный синхронно - асинхронный

Последовательный приемопередатчик

2.10.1. Пример использования порта UART

Последовательный двухпроводной интерфейс TWI

Формат посылки и передаваемых данных

2.11.2. Модуль TWI микроконтроллера AVR

2.11.3. Подключение схемы DS1307 к микроконтроллеру по интерфейсу TWI

Глава III. Лабораторный практикум по микроконтроллерам семейства AVR фирмы ATMEL

Лабораторные работы №1. Разработка и отладка программ в среде AVR Studio 4. Изучение системы команд микроконтроллеров семейства AVR

Лабораторные работы №2. Параллельные порты ввода/вывода микроконтроллера.

Лабораторная работа №3

Подсистема ввода аналоговых сигналов микроконтроллера

Лабораторная работа №4.

Универсальный асинхронный приемопередатчик – UART

Лабораторная работа №5

Изучение режимов работы Таймера/Счетчика

Лабораторная работа №6

Последовательный периферийный интерфейс – SPI

Лабораторная работа №7

Подсистема памяти микроконтроллера.

Лабораторная работа №8

Последовательный двухпроводной интерфейс I2C (TWI)

Список использованной литературы

Приложение

Предисловие

Базовыми дисциплинами для изучения данного курса являются «Программирование», «Микросхемотехника», «Микроэлектроника», «Информатика», «Вычислительные машины и системы», «Схемотехника ЭВМ», «Машинно-ориентированное программирование» и д.р.

Содержание учебного пособия соответствует программам дисциплин «Микропроцессорные системы», «Микропроцессорные устройства систем управления» и «Проектирование микропроцессорных систем управления», читаемых студентам технических вузов.

В результате изучения курсов «Микропроцессорные системы», «Микропроцессорные устройства систем управления» и «Проектирование микропроцессорных систем управления» студенты должны знать основные направления развития микропроцессорной техники и принципы их построения, методы и способы повышения быстродействия, архитектурные особенности современных микропроцессоров (МП) и микроконтроллеров (МК), а также и способы их программирования, области использования, основы проектирования микропроцессорных устройств и систем.

В основу учебного пособия положены одноименные курсы лекций, читаемые автором на протяжении ряда лет студентам, обучающимся по специальностям «Программное обеспечение вычислительной техники и автоматизированных систем», «Вычислительные машины, комплексы системы и сети» и «Управление и информатика в технических системах».

Автор считает своим долгом выразить благодарность рецензентам: д.т.н., профессор Мелехину В.Б., д.т.н., профессору Исмаилову Ш.А. и к.т.н., доценту Меркухину Е.Н. за ценные замечания, которые позволили улучшить качество учебного пособия и расширить перечень рассмотренных вопросов

 

 

Введение

Одной из характерных особенностей нынешнего этапа научно-технического прогресса является все более широкое применение микроэлектроники в различных отраслях народного хозяйства. Роль микроэлектроники в развитии общественного производства определяется ее практически неограниченными возможностями в решении различных задач во всех областях народного хозяйства, глубоким влиянием на культуру и быт современного человека.

Особое внимание в настоящее время уделяется внедрению микропроцессоров, обеспечивающих решение задач автоматизации управления механизмами, приборами и аппаратурой. Адаптация микропроцессора к особенностям конкретной задачи осуществляется в основном путем разработки соответствующего программного обеспечения, заносимого затем в память программ. Аппаратная адаптация в большинстве случаев осуществляется путем подключения необходимых интегральных схем обрамления и организации ввода-вывода, соответствующих решаемой задаче.

В микропроцессорной технике выделился самостоятельный класс больших интегральных схем (БИС) - однокристальные микро-ЭВМ (ОМЭВМ) или, как в последнее время называют, "микроконтроллер" (МК), которые предназначены для «интеллектуализации» оборудования различного назначения.

Цель данного учебного пособия - познакомить студентов различных специальностей с общими принципами построения современных 8-разрядных МК, основами программирования и программными средствами отладки МК.

Глава I. Микроконтроллеры

Микроконтроллер (MК) – программируемая микросхема, предназначенная для арифметико-логической обработки информации и управления техническими объектами и/или технологическими процессами. Типичный микроконтроллер сочетает в себе функции процессора и периферийных устройств, содержит ОЗУ и ПЗУ. Использование одной микросхемы, вместо целого набора, как в случае обычных процессоров, применяемых в персональных компьютерах, значительно снижает размеры, энергопотребление и стоимость устройств, построенных на базе микроконтроллеров.

Наиболее распространённым семейством микроконтроллеров являются 8-битные микроконтроллеры, широко используемые в промышленности. В то время как 8-разрядные процессоры общего назначения полностью вытеснены более производительными моделями, 8-разрядные микроконтроллеры продолжают широко использоваться. Это объясняется тем, что существует большое количество применений, в которых не требуется высокая производительность, но важна низкая стоимость.

Архитектура МК - результат эволюции архитектуры микропроцессоров и микропроцессорных систем, обусловленных стремлением существенно снизить их аппаратные затраты и стоимость. Как правило, эти цели достигаются как путем повышения уровня интеграции БИС, так и за счет поиска компромисса между стоимостью, аппаратными затратами и техническими характеристиками МК.

МК представляют собой приборы, конструктивно выполненные в виде одной БИС и включающие в себя все устройства, необходимые для реализации цифровой системы управления минимальной конфигурации: процессор, запоминающее устройство данных, запоминающее устройство команд, внутренний генератор тактовых сигналов, АЦП, интерфейсы и другие программируемые модули для связи с внешней средой. Использование МК в системах управления обеспечивает достижение исключительно высоких показателей эффективности при столь низкой стоимости (во многих применениях система может состоять только из одной БИС МК), что им, видимо, нет в ближайшем времени альтернативной элементной базы для построения управляющих и/или регулирующих систем. Специфическая организация ввода-вывода информации предопределяет область их применения в качестве специализированных вычислителей, включенных в контур управления объектом или процессом. Структурная организация, набор команд и аппаратно-программные средства ввода-вывода информации этих микросхем лучше всего приспособлены для решения задач управления и регулирования в приборах, устройствах и системах автоматики, а в последнее время и для решения задач обработки данных. Указанные выше соображения отражают технический уровень МК в настоящий момент.

Первые 8-разрядные микропроцессоры появились в 1971 г. Пять лет спустя, в 1976 г., был произведен первый 8-разрядный микроконтроллер (МК), который объединил в одном кристалле основные элементы микропроцессорной управляющей системы [1]: центральный процессор, постоянное запоминающее устройство, оперативное запоминающее устройство, порты ввода-вывода, таймеры. С тех пор микропроцессорная элементная база встраиваемых систем управления развивается высокими темпами:

-16 - и 32-разрядные МК с интегрированной на кристалл многофункциональной периферией стали обычным явлением;

-в последние годы бурно развиваются МК с процессором цифровой обработки сигналов (DSP) в качестве процессорного ядра.

-на очереди МК с командами обработки чисел с плавающей запятой и однокристальные программируемые логические МК.

Каждый из представителей, перечисленных выше групп, значительно превосходит по производительности скромного 8-разрядного предка. Однако высокоинтегрированные высокопроизводительные собратья не вытеснили 8-разрядные МК. Более того, 8-разрядные МК по количеству их модификаций значительно превосходят все остальные группы. И вот почему.

Во-первых, основная область применения 8-разрядных МК - устройства интеллектуального управления промышленной автоматики и бытовой аппаратуры. Специфика алгоритмов управления этих устройств не требует выполнения расчетов высокой точности в жестких условиях реального времени. Основная доля операций управления состоит в преобразовании логической информации. Следовательно, 8-разрядные МК могут с успехом реализовать эти задачи и не имеют тенденций к вытеснению МК с более высокой разрядностью обрабатываемого слова. Во-вторых, процессы глобальной информатизации настоятельно диктуют необходимость объединения в информационные сети даже очень простых устройств управления, например: торговых автоматов, уличного освещения и т.д. В результате 8-разрядные MK начинают применяться в тех областях, где до недавнего времени микропроцессорная техника не использовалась. В-третьих, степень алгоритмической культуры инженеров-разработчиков повысилась настолько, что они предпочитают применять простейшие МК вместо цифровых ИС средней степени интеграции. А низкая цена 8-разрядных МК этому только способствует. Все эти причины обусловливают возросшую потребность в 8-разрядных МК и, как следствие, постоянное расширение номенклатуры 8-разрядных МК такими известными компаниями, как Motorola, NEC, Microchip, Mitsubishi, Hitachi, Philips, Infineon, а также выход на рынок новых фирм-производителей 8-разрядных МК с очень интересной продукцией (Atmel, Scenix). Чтобы выстоять в конкурентной борьбе, производители стремятся предложить разработчикам такие МК, которые, с одной стороны, наиболее точно соответствуют требованиям разрабатываемого устройства, а с другой стороны, не являются функционально избыточными для этого устройства, что обеспечивает конкурентоспособность конечного изделия по стоимости продукции. Результатом этого стремления явилось великое множество моделей 8-разрядных МК.

На сегодняшний день существует более 200 модификаций микроконтроллеров, совместимых с i8051, выпускаемых двумя десятками компаний, и большое количество микроконтроллеров других типов. Популярностью у разработчиков пользуются 8-битные микроконтроллеры AVR фирмы Atmel и PIC фирмы Microchip Technology, шестнадцатибитные MSP430 фирмы TI, а также МК ARM, архитектуру, которых разрабатывает фирма ARM и продаёт лицензии другим фирмам для их производства.

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