Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Интерфейсы микроконтроллеров

Покупка
Артикул: 786481.01.99
Доступ онлайн
300 ₽
В корзину
Изложены основные принципы реализации цифровых интерфейсов и практического использования языка С при программировании микроконтроллера ATmega 128. Приведены архитектурные особенности и функции выводов микроконтроллера ATmega 128, основные регистры центрального процессорного устройства, а также регистры для управления или хранения данных периферийных устройств. Для студентов направлений подготовки бакалавров 27.03.04 «Управление в технических системах» очной, 11.03.04 «Электроника и наноэлектроника» очной и 11.03.03 «Конструирование и технология электронных средств» очно-заочной форм обучения.
Алиев, М. Т. Интерфейсы микроконтроллеров : учебное пособие / М. Т. Алиев, Т. С. Буканова. - Йошкар-Ола : Поволжский государственный технологический университет, 2019. - 94 с. - ISBN 978-5-8158-2156-9. - Текст : электронный. - URL: https://znanium.com/catalog/product/1894121 (дата обращения: 28.03.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
М. Т. Алиев     Т. С. Буканова 

 
 

ИНТЕРФЕЙСЫ 

МИКРОКОНТРОЛЛЕРОВ 

 

Учебное пособие  

 
 
 
 
 

 
 
 

 
 
 
 
 
 

Йошкар-Ола 

ПГТУ 
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. Встроенная внутрисистемно 
программируемая флэш-память позволяет перепрограммировать 

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

ATmega128 поддерживается полным набором программных и 

аппаратных средств для проектирования, в т.ч.: Си-компиляторы, 
макроассемблеры, программные отладчики/симуляторы, внутри-
системные эмуляторы и оценочные наборы. 

 

 

 

Рис. 2. Функции и расположение выводов микроконтроллеров АТmega 128 

Функции портов ввода-вывода МК АТmega 128 представлены 

в таблице 1. 

Таблица 1 

Функции портов ввода-вывода микроконтроллера АТmega 128 

Вывод порта
Основная функция

1
2

Vcc
Напряжение питания цифровых элементов

GND
Общий

Порт A (PA7..PA0)

Порт B (PB7..PB0)

Порт C (PC7..PC0)

Порт D (PD7..PD0)

Порт E (PE7..PE0)

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

Порт F (PF7..PF0)
Порт F действует как аналоговый ввод аналогово-цифрового пре-
образователя. Порт F также может использоваться как 8-разр. порт 
двунаправленного ввода-вывода, если АЦП не используется. К 
каждой линии порта может быть подключен встроенный подтяги-
вающий к плюсу резистор (выбирается раздельно для каждого би-
та). Выходные буферы порта F имеют симметричную выходную 
характеристику с одинаковыми втекающим и вытекающим токами. 
При вводе линии порта F будут действовать как источник тока, 
если внешне действует низкий уровень и включены подтягиваю-
щие резисторы. Выводы порта F находятся в третьем (высокоимпе-
дансном) состоянии при выполнении условия сброса, даже если 
синхронизация не запущена. Если активизирован интерфейс JTAG, 
то подтягивающие резисторы на линиях PF7(TDI), PF5(TMS) и 
PF4(TCK) будут подключены, даже если выполняется сброс. Порт 
F также выполняет функции интерфейса JTAG.

Порт G (PG4..PG0)
Порт G выполняет только альтернативные функции.

RESET
Вход сброса. Если на этот вход приложить низкий уровень дли-
тельностью более минимально необходимой, будет генерирован 
сброс независимо от работы синхронизации.

XTAL1
Инвертирующего усилителя генератора и вход внешней синхрони-
зации.

XTAL2
Инвертирующего усилителя генератора.

AVcc
Вход питания порта F и аналогово-цифрового преобразователя. Он 
должен быть внешне связан с VCC, даже если АЦП не используется. 
При использовании АЦП этот вывод связан с VCC через фильтр 
низких частот.

AREF
Источник опорного напряжения АЦП.

 

Доступ онлайн
300 ₽
В корзину