Интерфейсы микроконтроллеров
Покупка
Тематика:
Составные элементы компьютера
Издательство:
Поволжский государственный технологический университет
Год издания: 2019
Кол-во страниц: 94
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-8158-2156-9
Артикул: 786481.01.99
Изложены основные принципы реализации цифровых интерфейсов и практического использования языка С при программировании микроконтроллера ATmega 128. Приведены архитектурные особенности и функции выводов микроконтроллера ATmega 128, основные регистры центрального процессорного устройства, а также регистры для управления или хранения данных периферийных устройств.
Для студентов направлений подготовки бакалавров 27.03.04 «Управление в технических системах» очной, 11.03.04 «Электроника и наноэлектроника» очной и 11.03.03 «Конструирование и технология электронных средств» очно-заочной форм обучения.
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 11.03.03: Конструирование и технология электронных средств
- 11.03.04: Электроника и наноэлектроника
- 27.03.04: Управление в технических системах
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
М. Т. Алиев Т. С. Буканова ИНТЕРФЕЙСЫ МИКРОКОНТРОЛЛЕРОВ Учебное пособие Йошкар-Ола ПГТУ 2019
УДК 004.3(075.8) ББК 32.844я73 А 50 Рецензенты: кандидат технических наук, доцент А. Н. Дедов; кандидат технических наук, доцент А. А. Баев Печатается по решению редакционно-издательского совета ПГТУ Алиев, М. Т. А 50 Интерфейсы микроконтроллеров: учебное пособие / М. Т. Алиев, Т. С. Буканова. – Йошкар-Ола: Поволжский государственный технологический университет, 2019. – 94 с. ISBN 978-5-8158-2156-9 Изложены основные принципы реализации цифровых интерфейсов и практического использования языка С при программировании микроконтроллера ATmega 128. Приведены архитектурные особенности и функции выводов микроконтроллера ATmega 128, основные регистры центрального процессорного устройства, а также регистры для управления или хранения данных периферийных устройств. Для студентов направлений подготовки бакалавров 27.03.04 «Управ ление в технических системах» очной, 11.03.04 «Электроника и наноэлектроника» очной и 11.03.03 «Конструирование и технология электронных средств» очно-заочной форм обучения. УДК 004.3(075.8) ББК 32.844я73 ISBN 978-5-8158-2156-9 © Алиев М. Т., Буканова Т. С., 2019 © Поволжский государственный технологический университет, 2019
ОГЛАВЛЕНИЕ Предисловие ................................................................................ 5 Список сокращений ........................................................................... 6 Введение ............................................................................................. 7 1. АРХИТЕКТУРА AVR-МИКРОКОНТРОЛЛЕРОВ 1.1. Архитектура микроконтроллера ATmega 128 ..................... 8 1.2. Регистры центрального процессорного устройства ATmega 128 .................................................................................. 15 1.3. Регистры для управления или хранения данных периферийных устройств ........................................................... 19 Контрольные вопросы ................................................................ 22 2. ЯЗЫК ПРОГРАММИРОВАНИЯ C 2.1. Структура программы языка программирования С .......... 23 2.2. Организация данных языка С .............................................. 26 2.3. Операции над данными в языке С ...................................... 29 2.4. Управляющие конструкции языка С .................................. 31 Контрольные вопросы ................................................................ 38 3. ПРОГРАММНЫЕ ПРИМЕРЫ ДЛЯ МИКРОКОНТРОЛЛЕРА AVR ATMEGA 128 3.1. Интерфейс управления светодиодными индикаторами .............................................................................. 39 3.2. Вывод на семисегментный светодиодный индикатор ..................................................................................... 41 3.3. Включение и выключение светодиодных индикаторов по внешнему прерыванию ................................... 44 3.4. Управление шаговым электродвигателем ......................... 48 3.5. Последовательный сдвиг каждую секунду ........................ 51
3.6. Сторожевой таймер .............................................................. 52 3.7. Матричная клавиатура 4×4 ................................................. 54 3.8. Вывод строки на жидкокристаллический индикатор ....... 57 3.9. Цифровой вольтметр ........................................................... 63 3.10. Электронно стираемое программируемое постоянное запоминающее устройство .................................... 67 3.11. Пьезоизлучатель звука....................................................... 70 3.12. Часы реального времени ................................................... 71 Контрольные вопросы ................................................................ 80 Заключение....................................................................................... 82 Библиографический список ............................................................ 83 Приложение ..................................................................................... 84
ПРЕДИСЛОВИЕ Настоящее учебное пособие предназначено для студентов направлений подготовки бакалавров 27.03.04 «Управление в технических системах» очной формы обучения, 11.03.04 «Электроника и наноэлектроника» очной формы обучения и 11.03.03 «Конструирование и технология электронных средств» очнозаочной формы обучения. Имеющаяся степень преемственности вытекает из необходи мости изложения базовых вопросов и соответствует основополагающим материалам. Здесь приведены архитектурные особенности и функции выводов микроконтроллера ATmega 128, основные регистры центрального процессорного устройства, а также регистры для управления или хранения данных периферийных устройств. В учебном пособии представлены схемы подключения инте гральных схем к микроконтроллерам при создании интерфейса в системах автоматизации и управления технологическими процессами. Изложены основные принципы реализации цифровых интер фейсов, рассмотрено практическое использование языка С при программировании микроконтроллера ATmega 128. Авторы выражают благодарность рецензентам за ряд ценных замечаний, способствовавших совершенствованию данного учебного пособия.
СПИСОК СОКРАЩЕНИЙ АЛУ – арифметико-логическое устройство АЦП – аналого-цифровой преобразователь ЖКИ – жидкокристаллический индикатор КМОП – комплементарная структура металл-оксид-полупро водник МК – микроконтроллер ОЗУ – оперативно запоминающее устройство РВВ – регистры ввода/вывода ЦАП – цифроаналоговый преобразователь ЦПУ – центральное процессорное устройство ШИМ – широтно-импульсная модуляция ЭСППЗУ – электронно стираемое программируемое постоян ное запоминающее устройство
ВВЕДЕНИЕ Благодаря новейшим достижениям в микроэлектронике, свя занным с появлением микропроцессоров, микроконтроллеров, модулей памяти, разнообразных интерфейсов и сигнальных процессоров, открылись новые перспективы для развития средств управления и обработки данных. В системах автоматического управления получение, передача, преобразование, а также использование информации осуществляются без непосредственного участия человека с помощью различных цифровых интерфейсов. С применением электронно-вычислительных, контрольно измерительных или управляющих средств упрощается связь между приемным и исполнительным устройствами для передачи физических величин, предназначенных для обработки цифровой информации, хранения, передачи и управления по заданному алгоритму. В результате процесса обработки данных вырабатываются ис полнительные сигналы, которые в исполнительных элементах преобразуются в механическое воздействие, перемещающее деталь или инструмент, закрывающее или открывающее кран, включающее или отключающее нагревательную установку и т.п. Так как это воздействие требует значительной энергии, то обработка информационных сигналов предусматривает, как правило, их усиление.
1. АРХИТЕКТУРА AVR-МИКРОКОНТРОЛЛЕРОВ 1.1. Архитектура микроконтроллера ATmega 128 В принципе, все AVR-микроконтроллеры построены по Гар вардской архитектуре одной схемы. Это обусловлено тем, что в Гарвардской архитектуре больше возможностей для реализации параллельных операций. Выборка следующей команды может происходить одновременно с выполнением предыдущей команды, и нет необходимости останавливать процессор на время выборки команды (рис. 1). Рис. 1. Структура компьютера с Гарвардской архитектурой В Гарвардской архитектуре, обеспечивающей более высокую степень одновременных операций, выполнение текущей операции может совмещаться с выборкой следующей команды. Команда выполняется за то же количество циклов, что и в Принстонской архитектуре, но выборка очередной команды производится одновременно с выполнением предыдущей. Таким образом, Память программ Центральное процессорное устройство Память данных Шина данных Шина адреса Шина управления Стек Шина данных Шина адреса Шина управления Шина данных Шина адреса Шина управления
команда выполняется всего за один цикл (во время чтения следующей команды) и производит определенную последовательность действий: в первом цикле происходит завершение выполнения предыдущей команды – чтение команды; в следующем цикле осуществляется выполнение команды – чтение следующей команды. Центральное процессорное устройство AVR сочетает богатый набор инструкций с 32 универсальными рабочими регистрами. Все 32 регистра непосредственно подключены к арифметикологическому устройству (АЛУ), который позволяет указать два различных регистра в одной инструкции и выполнить ее за один цикл. Данная архитектура обладает большей эффективностью кода за счет достижения производительности в 10 раз выше по сравнению с обычными CISC-микроконтроллерами. ATmega128 – маломощный 8-разрядный комплементарной структуры металл-оксид-полупроводник (КМОП) микроконтроллер (МК), основанный на расширенной AVR RISC-архитектуре. За счет выполнения большинства инструкций за один машинный цикл ATmega128 достигает производительности 1 млн операций в секунду/МГц, что позволяет проектировщикам систем оптимизировать соотношение энергопотребления и быстродействия. ATmega128 содержит следующие элементы: 128 кбайт внут рисистемно программируемой флэш-памяти с поддержкой чтения во время записи, 4 кбайт электронно стираемое программируемое постоянное запоминающее устройство (ЭСППЗУ), 4 кбайт статическое оперативно запоминающее устройство (ОЗУ), 53 линии универсального ввода-вывода, 32 универсальных рабочих регистра, счетчик реального времени, четыре гибких таймерасчетчика с режимами сравнения и широтно-импульсной модуляции, 2 универсальных синхронно-асинхронных приемопередат
чика, двухпроводной последовательный интерфейс, ориентированный на передачу байт, 8-канальный 10-разрдный аналогоцифровой преобразователь (АЦП) с опциональным дифференциальным входом с программируемым коэффициентом усиления, программируемый сторожевой таймер с внутренним генератором, последовательный порт SPI (Serial Peripheral Interface), испытательный интерфейс JTAG (Joint Test Action Group), который также используется для доступа к встроенной системе отладке и для программирования, а также шесть программно выбираемых режимов уменьшения мощности. Режим холостого хода останавливает центральный процессор, но при этом поддерживая работу статического ОЗУ, таймеров-счетчиков, SPI-порта и системы прерываний. Режим выключения позволяет сохранить содержимое регистров при остановленном генераторе и выключении встроенных функций до следующего прерывания или аппаратного сброса. В экономичном режиме асинхронный таймер продолжает работу, позволяя пользователю сохранить функцию счета времени в то время, когда остальная часть контроллера находится в состоянии сна. Режим снижения шумов АЦП останавливает центральный процессор и все модули ввода-вывода, кроме асинхронного таймера и АЦП для минимизации импульсных шумов в процессе преобразования АЦП. В дежурном режиме кварцевый/резонаторный генератор продолжает работу, а остальная часть МК находится в режиме сна. Данный режим характеризуется малой потребляемой мощностью, но при этом позволяет достичь самого быстрого возврата в рабочий режим. В расширенном дежурном режиме основной генератор и асинхронный таймер продолжают работать. МК производится по технологии высокоплотной энергонеза висимой памяти компании Atmel. Встроенная внутрисистемно программируемая флэш-память позволяет перепрограммировать