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

Работа с основными периферийными модулями микроконтроллеров Atmega на примерах и заданиях

Покупка
Основная коллекция
Артикул: 760718.01.99
Доступ онлайн
от 224 ₽
В корзину
В учебном пособии изложены сведения по работе с периферийными модулями микроконтроллеров Atmega, c таймерами/счетчиками, описана работа модуля таймеров/счетчиков микроконтроллера Atmega32 компании Atmel, достаточно подробно, на примерах, разобрана работа с таймеров Т0 и Т2, оптическим энкодером, управлением эл. двигателем с помощью ШИМ-сигнала. Предназначено для студентов, обучающихся по направлению 13.03.02 «Электроэнергетика и электротехника».
7
57
114
Варламов, Д. О. Работа с основными периферийными модулями микроконтроллеров Atmega на примерах и заданиях : учебное пособие / Д.О. Варламов, С.М. Зуев, А.А. Тимошенко. — Москва : ИНФРА-М, 2021. — 186 с. — (Высшее образование: Бакалавриат). - ISBN 978-5-16-109712-0. - Текст : электронный. - URL: https://znanium.com/catalog/product/1816758 (дата обращения: 22.11.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
ВЫСШЕЕ ОБРАЗОВАНИЕ — БАКАЛАВРИАТ

Д.О. ВАРЛАМОВ
С.М. ЗУЕВ
А.А. ТИМОШЕНКО

РАБОТА С ОСНОВНЫМИ 

ПЕРИФЕРИЙНЫМИ МОДУЛЯМИ 
МИКРОКОНТРОЛЛЕРОВ ATMEGA 

НА ПРИМЕРАХ И ЗАДАНИЯХ

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

Рекомендовано к изданию на заседании кафедры 

«Электрооборудование и промышленная электроника» 

(протокол № 1 от 10.01.2021)

Москва

ИНФРА-М

2021

УДК004.312(075.8)
ББК 32.85я73

В18

Варламов Д.О.

В18
Работа 
с 
основными 
периферийными 
модулями 

микроконтроллеров Atmega на примерах и заданиях : учебное 
пособие / Д.О. Варламов, С.М. Зуев, А.А. Тимошенко. — Москва : 
ИНФРА-М, 2021. — 185 с. — (Высшее образование: Бакалавриат).

ISBN 978-5-16-109712-0 (online)

В 
учебном 
пособии 
изложены 
сведения 
по 
работе 

с 
периферийными
модулями 
микроконтроллеров 
Atmega, 

c таймерами/счетчиками, описана работа модуля таймеров/счетчиков 
микроконтроллера Atmega32 компании Atmel, достаточно подробно, на 
примерах, разобрана работа с таймеров Т0 и Т2, оптическим 
энкодером, управлением эл. двигателем с помощью ШИМ-сигнала.

Предназначено для студентов, обучающихся по направлению

подготовки 13.03.02 «Электроэнергетика и электротехника».

УДК 004.312(075.8)

ББК 32.85я73

ISBN 978-5-16-109712-0 (online)
© Варламов Д.О., Зуев С.М., 
Тимошенко А.А., 2021

ФЗ 

№ 436-ФЗ 

Издание не подлежит маркировке 
в соответствии с п. 1 ч. 4 ст. 11 

 

Оглавление

Глава 1. АЦП

1. Общие сведения................................................................................................... 7

2. Функционирование модуля АЦП ...................................................................... 7

3. Работа с результатом преобразования АЦП................................................... 18

4. Повышение точности преобразования АЦП.................................................. 19

5. Датчики температуры серии LMx35 ............................................................... 21

6. Cнятие показаний датчика температуры LM335 с помощью встроенного 
АЦП микроконтроллера ....................................................................................... 24

7. Определение номера нажатой кнопки с помощью АЦП микоконтроллера27

8. Схема задания скорости вращения электродвигателя постоянного тока с 
помощью поворотного переключателя............................................................... 30

9. Способ измерения напряжения с помощью АЦП микроконтроллера, 
превышающего его опорное напряжение........................................................... 34

10. Измерение тока с помощью АЦП микроконтроллера в дифференциальном 
режиме.................................................................................................................... 39

11. Микросхема L293 – специализированный драйвер управления 
электродвигателями постоянного тока ............................................................... 43

12. Схема управления электродвигателем постоянного тока по положению 
потенциометра....................................................................................................... 45

13. Схема управления серводвигателем с реализацией обратной связи по 
напряжению через АЦП микроконтроллера ...................................................... 49

Приложение к главе 1 ........................................................................................... 53

Глава 2. Таймеры

1. Общие сведения................................................................................................. 57

2. Назначение выводом таймеров/счетчиков ..................................................... 58

3. Прерывания от таймеров/счетчиков................................................................ 59

4. Предделители таймеров/счетчиков ................................................................. 61

5. Восьмибитные таймеры/счетчики................................................................... 65

6. Управление тактовым сигналом...................................................................... 69

7. Режимы работы таймеров/счетчиков.............................................................. 70

8. Формирование выходных сигналов 8-битных таймеров Т0 и Т2 в режиме 
работы Normal ....................................................................................................... 80

9. Формирование выходных сигналов 8-битных таймеров Т0 и Т2 в режиме 
работы СТС............................................................................................................ 84

10. Формирование выходных сигналов таймеров/счетчиков Т0 и Т2 в 
режимах работы Fast PWM и Phase Correct PWM............................................. 88

11. Использование прерываний по совпадению и переполнению 
таймера/счетчика Т0 ............................................................................................. 93

12. Часы реального времени на таймере/счетчике Т2....................................... 96

13. Измерение скорости вращения вала электродвигателя по оптическому 
энкодеру с использованием двух 8-битных таймеров/счетчиков.................... 99

14. Измерение скорости вращения вала электродвигателя по оптическому 
энкодеру с использованием одного 8-битного таймера/счетчика и внешнего 
прерывания........................................................................................................... 104

Приложение к главе 2 ......................................................................................... 110

Глава 3. Периферийный интерфейс SPI

1. Общие сведения ……………………………………………………………116

2. Функционирование модуля SPI……………………………………………117

3. Режимы передачи данных ………………………………………………….123

4. Использование вывода SS ………………………………………………….125

5. Соединение двух микроконтроллеров по интерфейсу SPI………………127

6. Микросхема цифрового потенциометра серии MCP41XXX с интерфейсом 
SPI……………………………………………………………………………….132

7. Управление микросхемой MCP41010 цифрового потенциометра помощью
микроконтроллера……………………………………………………………136

8. Микросхема аналогово-цифрового преобразователя MCP3201 с 
интерфейсом SPI………………..…………………………………………..….140

9. Управление микросхемой аналогово-цифрового преобразователя MCP3201 
с помощью микроконтроллера ………………………………………………..143

10. Способы работы с несколькими ведомыми по интерфейсу SPI………148

11. Управление c помощью микроконтроллера микросхемой MCP3201 и 
MCP41010 по одной шине SPI (независимое подключение)……………….150

12. Микросхема сдвигового регистра 74HC595……………………………154

13. Управление микросхемой сдвигового регистра 74HC595 с помощью 
микроконтроллера……………………………………………………………156

14. Управление двумя сдвиговыми регистрами 74НС595 с помощью 
микроконтроллера (каскадное подключение)………………………………161

15. Микросхема датчика температуры TC72                                   с 
интерфейсом SPI………………………………………………………………167

16. Снятие показаний цифрового датчика температуры TC72 по SPI с 
помощью микроконтроллера…………………………………………………172

Заключение……………………………………………………………………181

Список литературы……………………………………………………………182

 

Введение

В данном учебном пособии представлено описание функционирования 

таких модулей микроконтроллера Atmega32 компании Atmel, как встроенный 

аналого-цифровой преобразователь (АЦП), таймер/счетчик и модуль SPI.

В первой главе изложены сведения по работе с АЦП микроконтроллера, 

на 
примерах
разобрана 
одновременная 
работа 
с 
несколькими 

потенциометрами 
и
аналоговым 
датчиком 
температуры. 
Показаны

особенности измерения тока в дифференциальном режиме, а также 

организация обратной связи через АЦП при управлении серводвигателем.

Во второй главе описана работа модулей 8-битных таймеров/счетчиков     

Т0 и Т2 микроконтроллера, показана работа с оптическим энкодером, 

управление электродвигателем с помощью ШИМ-сигнала и построение часов 

реального времени.

В 
третьей 
главе
предоставлены
сведения 
по 
протоколу

последовательного периферийного интерфейса (SPI) и описана работа с

модулем SPI микроконтроллера. Достаточно подробно разобрана работа со 

сдвиговыми регистрами, предоставлены примеры работы с датчиками и 

микросхемами, подключаемыми к микроконтроллеру по SPI. 

 

 

 

 

 

 

 

 

 

ГЛАВА 1. АЦП

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

Модуль 10-битного АЦП последовательного приближения входит в со
став практически всех моделей микроконтроллеров Atmel семейства Atmega

[1-3]. 

На 
входе 
модуля 
АЦП 
имеется 
8-канальный 
аналоговый 

мультиплексор, предоставляющий в распоряжение пользователя 8 каналов с 

несимметричными 
входами. 
В 
моделях 
ATmega640x/1280x/2560x

используется 
16-канальный 
аналоговый 
мультиплексор. 
В 
Atmega8, 

выпускаемых в корпусе DIP, доступно только 6 каналов из восьми [4]. 

В большинстве моделей входы АЦП могут объединяться попарно для 

формирования различного числа каналов с дифференциальным входом. При 

этом в некоторых каналах имеется возможность 10и 200-кратного 

предварительного усиления входного сигнала. При коэффициентах усиления 

1х и 10х действительная разрешающая способность АЦП по этим каналам 

составляет 8 бит, а при коэффициенте усиления 200х - 7 бит [5].

В качестве источника опорного напряжения для АЦП может использо
ваться как напряжение питания микроконтроллера, так и внутренний либо 

внешний источник опорного напряжения [6].

Модуль АЦП может работать в двух режимах:

•   режим одиночного преобразования, когда запуск каждого преобразования 

инициируется пользователем;

•  режим непрерывного преобразования, когда запуск преобразований 

выполняется непрерывно через определенные интервалы времени.

2. Функционирование модуля АЦП

Обобщенная структурная схема модуля АЦП приведена на Рис.1. В 

моделях ATmega8x и ATmega48x/88x/l68x элементы, выделенные на рисунке 

серым 
цветом, 
и 
связанные 
с 
ними 
сигналы 
отсутствуют, 
а 

неинвертируюший 
вход 
компаратора 
выборки-хранения 
подключен 

непосредственно к выходу мультиплексора (показано пунктиром).

К встроенному АЦП относятся 4 регистра:

•
ADC – регистр данных АЦП (двойной регистр. Состоит из ADCH и 

ADCL).

•
ADCSRA - регистр управления и состояния АЦП. 

•
ADMUX – регистр управления мультиплексором.

•
SFIOR – регистр специальных функций [6].

Формат регистра ADCSRA приведен на Рис.2, а краткое описание 

функций его битов приведено в Таблице 1.

Рис.1 Структурная схема модуля АЦП.

Для разрешения работы АЦП необходимо записать лог.1 в бит ADEN

регистра ADCSRA, а для выключения — соответственно лог.0. Если АЦП 

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

преобразования).

Рис.2 Формат регистра ADCSRA.

Таблица 1. Биты регистра ADCSRA.

Бит
Название
Описание

7
ADEN
Разрешение АЦП (1- включено
0 - выключено)

6
ADSC
Запуск преобразования 
(1 - начать преобразование)

5
ADATE/ADFR Выбор режима работы АЦП

4
ADIF
Флаг прерывания АЦП

3
ADIE
Разрешение прерывания АЦП

2...0 ADPS2:ADPS0 Выбор частоты преобразования

Режим работы АЦП определяется состоянием бита ADATE регистра 

ADCSRA. Если он установлен в 1, АЦП работает в режиме непрерывного 

преобразования. 
В 
этом 
режиме 
запуск 
каждого 
последующего 

преобразования АЦП осуществляется автоматически после окончания теку
щего. Если же этот бит сброшен в 0, АЦП работает в режиме одиночного 

преобразования и запуск каждого преобразования осуществляется по ко
манде пользователя.

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

после установки бита ADSC. 

В моделях ATmega8x и ATmega128x режим работы АЦП определяется 

состоянием пятого бита ADFR (в остальных моделях - ADATE). Если он 

установлен в 1, АЦП работает в режиме непрерывного преобразования. В 

этом режиме запуск каждого следующего преобразования осуществляется 

автоматически после окончания текущего. Если же бит ADFR сброшен в 0, 

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