Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

mpusu_avr_p2

.pdf
Скачиваний:
86
Добавлен:
23.01.2018
Размер:
6.46 Mб
Скачать

20.12.2017

Микропроцессорные устройства систем управления

Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» Факультет электротехники и автоматики

Кафедра систем автоматического управления

к.т.н., доцент

Голик Станислав Евсеевич

E-mail: segolik@gmail.com

Тел: +7 (921) 321-0875

2

Голик С.Е.

1

20.12.2017

Архитектура микроконтроллеров AVR

1995 – студенты Norwegian University of Science and Technology в г. Тронхейм Alf-Egil Bogen и

Vegard Wollen предложили фирме Atmel новую RISC архитектуру микроконтроллеров AVR

1996 – фирма Atmel открыла исследовательский центр Atmel в г. Тронхейм, где был разработан первый микроконтроллер семейства AT90S1200

1997 – начат серийный выпуск микроконтроллеров семейства AVR

3

Голик С.Е.

Архитектура микроконтроллеров AVR

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

Основные характеристики микроконтроллера ATmega16A

AVR RISC-архитектура высокой производительности;

система команд из 130 инструкций, большая часть которых выполняется за один машинный цикл;

единый 16-разрядный формат команд;

производительность 16 MIPS на частоте 16 Мгц;

16 Кбайт Flash ПЗУ программ;

512 байт EEPROM данных;

1 Кбайт оперативной памяти (SRAM);

возможность программирования непосредственно в целевой системе через последовательные интерфейсы SPI и JTAG;

возможность внутрисхемной отладки с использованием JTAG;

различные способы синхронизации;

6 режимов пониженного энергопотребления;

детектор снижения напряжения питания (BOD);

21 источник прерываний (внутренних и внешних);

многоуровневая система прерываний, поддержка очереди прерываний;

возможность защиты от несанкционированного чтения и модификации памяти программ.

4

Голик С.Е.

2

20.12.2017

Архитектура микроконтроллеров AVR

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

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

32 программируемые линии ввода/вывода;

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

два 8-разрядных таймера/счетчика с предварительным делителем частоты и режимом сравнения;

16-разрядный таймер/счетчик с предварительным делителем частоты, режимами сравнения и захвата;

четыре канала генерации выходных ШИМ-сигналов;

сторожевой таймер WDT;

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

8-канальный 10-разрядный АЦП;

полнодуплексный универсальный синхронно/асинхронный приемопередатчик USART;

последовательный синхронный интерфейс SPI, используемый также для программирования Flashпамяти программ;

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

5

Голик С.Е.

Архитектура микроконтроллеров AVR

Структура микроконтроллера ATmega16A

6

Голик С.Е.

3

20.12.2017

Центральное процессорное устройство AVR

Структура ЦПУ микроконтроллера Atmega16A

7

Голик С.Е.

Центральное процессорное устройство AVR

Регистр состояния SREG (Status Register)

 

7

6

5

4

3

2

1

0

SREG

I

T

H

S

V

N

Z

C

Чтение/запись

R/W

R/W

R/W

R/W

R/W

R/W

R/W

R/W

Нач. значение

0

0

0

0

0

0

0

0

Бит 7 – I: Общее разрешение прерываний. При установке в 1 разрешает все прерывания, в противном случае все прерывания запрещены вне зависимости от индивидуальных разрешений.

Бит 6 – T: Хранение копируемого бита. Разряд регистра используется для временного хранения источника или приемника команд копирования битов BLD и BST.

Бит 5 – H: Флаг половинного переноса. Флаг устанавливается в 1, если произошел перенос или заем из младшей половины байта в старшую при выполнении некоторых арифметических операций.

Бит 4 – S: Флаг знака. Флаг устанавливается в 1, если результат выполнения арифметической операции меньше нуля. Равен результату (N XOR V).

Бит 3 – V: Флаг переполнения дополнительного кода. Флаг устанавливается в 1 при переполнении разрядной сетки результата при использовании знаковой арифметики.

Бит 2 – N: Флаг отрицательного значения. Этот флаг устанавливается в 1, если старший разряд результата операции равен 1 (отрицательное число).

Бит 1 – Z: Флаг нулевого значения. Этот флаг устанавливается в 1, если результат выполнения операции равен нулю.

Бит 0 – C: Флаг переноса. Этот флаг устанавливается в 1, если в результате выполнения операции произошел выход за границы байта.

8

Голик С.Е.

4

20.12.2017

Центральное процессорное устройство AVR

Процедура выборки и дешифрации команд

9

Голик С.Е.

Центральное процессорное устройство AVR

Конвейерная архитектура

R (Read) – чтение операндов

P (Process) – выполнение команды в АЛУ

W (Write) – запись результата

10

Голик С.Е.

5

20.12.2017

Центральное процессорное устройство AVR

 

 

 

 

Тактовый генератор

 

 

 

 

 

 

 

 

Биты конфигурации

 

Режим работы тактового

CKSEL3

CKSEL2

CKSEL1

CKSEL0

CKOPT

Диапазон частот

генератора

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Внешний сигнал синхронизации

 

 

 

 

 

 

 

0

0

0

0

1 / 0

0 ÷ 16 MHz

 

0pF/36pF

 

 

 

 

 

 

 

 

 

 

 

 

 

Внутренняя RC-цепочка

0

0

0

1

1

1 MHz

 

0

0

1

0

1

2 MHz

 

0

0

1

1

1

4 MHz

 

0

1

0

0

1

8 MHz

Внешняя RC-цепочка

0

1

0

1

1 / 0

0.1 ÷ 0.9 MHz

 

 

0pF/36pF

 

 

 

 

 

 

 

0

1

1

0

1 / 0

0.9 ÷ 3 MHz

 

0pF/36pF

 

 

 

 

 

 

 

0

1

1

1

1 / 0

3 ÷ 8 MHz

 

0pF/36pF

 

 

 

 

 

 

 

1

0

0

0

1 / 0

8 ÷ 12 MHz

 

0pF/36pF

 

 

 

 

 

 

11

Голик С.Е.

Центральное процессорное устройство AVR

 

 

 

 

Тактовый генератор

 

 

 

 

 

 

 

 

Биты конфигурации

 

Режим работы тактового

CKSEL3

CKSEL2

CKSEL1

CKSEL0

CKOPT

Диапазон частот

генератора

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Внешний НЧ кварцевый резонатор

 

 

 

 

 

 

 

1

0

0

1

1 / 0

32768 Hz

 

0pF/36pF

 

 

 

 

 

 

 

 

 

 

 

 

 

Внешний резонатор

1

0

1

X

1*

0.4 ÷ 0.9 MHz

 

1

1

0

X

1

0.9 ÷ 3 MHz

 

1

1

1

X

1

3 ÷ 8 MHz

 

1

0

1

X

0 (R-to-R)

1 ÷ 16 MHz

 

1

1

0

X

0 (R-to-R)

1 ÷ 16 MHz

 

1

1

1

X

0 (R-to-R)

1 ÷ 16 MHz

 

 

 

 

 

 

 

Примечания: * − в этом режиме используется только керамический резонатор; R-to-R – максимальный размах колебаний на выходе генератора.

12

Голик С.Е.

6

20.12.2017

Центральное процессорное устройство AVR

Устройство синхронизации

13

Голик С.Е.

Центральное процессорное устройство AVR

Подсистема сброса

Сброс может быть вызван следующими событиями:

включение напряжения питания микроконтроллера;

аппаратный сброс подачей сигнала низкого уровня на вывод RESET;

тайм-аут (переполнение) сторожевого таймера;

падение напряжения питания ниже допустимой величины;

сброс по интерфейсу JTAG.

14

Голик С.Е.

7

20.12.2017

Центральное процессорное устройство AVR

Структура подсистемы сброса

15

Голик С.Е.

Центральное процессорное устройство AVR

Подсистема сброса: флаги сброса

Регистр управления и состояния МК MCUCSR (MCU Control and Status Register)

 

7

6

5

4

3

2

1

0

MCUCSR

JTD

ISC2

JTRF

WDRF

BORF

EXTRF

PORF

Чтение/запись

R/W

R/W

R

R/W

R/W

R/W

R/W

R/W

Нач. значение

0

0

0

 

См. описание битов

 

Бит 4 – JTRF: Флаг JTAG-сброса. Устанавливается в 1 при сбросе по команде блока JTAG.

Бит 3 – WDRF: Флаг сброса от сторожевого таймера. Устанавливается в 1, если источником сброса был сторожевой таймер.

Бит 2 – BORF: Флаг сброса по снижению питания. Устанавливается в 1, если источником сброса была подсистема BOD.

Бит 1 – EXTRF: Флаг аппаратного сброса. Устанавливается в 1, если сброс произошел при подаче на вывод сброса сигнала низкого уровня.

Бит 0 – PORF: Флаг сброса по включению питания. Устанавливается в 1, после подачи напряжения питания на микроконтроллер.

Примечание: все флаги, кроме PORF сбрасываются при сбросе по включению питания, либо прямой записью в них 0

16

Голик С.Е.

8

20.12.2017

 

Центральное процессорное устройство AVR

 

Подсистема сброса: диаграммы формирования задержки

 

 

 

 

Схема

Диаграмма формирования сигнала сброса

 

 

Сброс по включению питания

 

 

1

 

 

 

 

 

 

 

 

Сброс по включению с

 

 

 

управлением от внешней схемы

 

 

2

 

 

 

 

 

 

 

 

Аппаратный сброс

 

 

3

 

 

 

 

 

 

 

 

 

17

 

 

Голик С.Е.

 

 

Центральное процессорное устройство AVR

 

 

Подсистема сброса: диаграммы формирования задержки

 

 

 

 

 

Схема

 

Диаграмма формирования сигнала сброса

 

 

Сброс от сторожевого таймера

 

 

4

 

 

 

 

 

 

 

 

 

Сброс при снижении напряжения

 

 

 

питания

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

18

 

 

 

Голик С.Е.

9

20.12.2017

 

Центральное процессорное устройство AVR

 

 

 

Подсистема сброса: задание режима

 

 

 

 

 

 

 

 

 

 

 

 

 

)

 

 

Режим работы тактового

CKSEL0

SUT1

SUT0

Ts, такты

Tr, мс (5В

Рекомендуемое использование

 

генератора

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Внешний генератор

0

0

6

Схема BOD включена

 

1

0

6

65

Большое время нарастания Vcc

 

 

 

Генератор с внешней

0

0

18

Схема BOD включена

 

RC-цепочкой

1

0

18

65

Большое время нарастания Vcc

 

 

 

Встроенный генератор

0

0

6

Схема BOD включена

 

с RC-цепочкой

1

0

6

65

Большое время нарастания Vcc

 

 

 

НЧ кварцевый резонатор

0

1

1K

65

Большое время нарастания Vcc

 

1

0

32K

65

Стабильная частота при старте

 

 

 

 

0

0

1

258

65

Большое время нарастания Vcc

 

Керамический резонатор

0

1

0

1K

Схема BOD включена

 

 

1

0

0

1K

65

Большое время нарастания Vcc

 

Кварцевый резонатор

1

0

1

16K

Схема BOD включена

 

1

1

1

16K

65

Большое время нарастания Vcc

 

 

 

 

 

 

 

 

 

 

 

19

Голик С.Е.

 

 

Центральное процессорное устройство AVR

 

 

 

 

 

Блок режимов энергопотребления

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Активные

 

 

Генера-

Источники «пробуждения»

 

 

 

внутренние

 

 

 

торы

 

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

 

 

 

тактовые сигналы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Режим

 

 

 

 

 

 

 

Генератор T2

Внешнее прерывание INT0-2

Модуль TWI

Асинхронный T2

Готовность SPM/EEPROM

 

 

Другие модули I/O

 

 

CPU

FLASH

I/O

ADC

 

ASY

 

 

АЦП

 

 

clk

сlk

сlk

сlk

 

сlk

clk

 

 

Idle

 

 

 

 

 

ADC Noise Reduction

 

 

 

 

 

 

 

Power Down

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Power Save

 

 

 

 

 

 

 

 

 

 

 

Standby

 

 

 

 

 

 

 

 

 

 

 

 

 

Extended Standby

 

 

 

 

 

 

 

 

 

 

– только при работе таймера/счетчика T2 в асинхронном режиме (бит AS2=1).

 

 

 

– для любого прерывания INT2 или прерываний INT0, INT1 только по уровню

 

 

 

В режимах Standby и Extended Standby источником тактового сигнала может быть только

 

генератор с кварцевым резонатором

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Голик С.Е.

10

Соседние файлы в предмете Микропроцессоры и микроконтроллеры