ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 23.01.2025

Просмотров: 3677

Скачиваний: 8

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Оглавление

Введение

1. Структура и функционирование микроконтроллера aTmega128

Указатель стека – sp.

Регистр управления делением частоты кварцевого генератора – xdiv

2. Интегрированная система программирования avr Studio v4.12

2.1. Создание проекта.

2.2. Компиляция проекта.

3.Описание лабораторного стенда лс-2.

Работа №1 микроконтроллер aTmega128: методы адресации, команды передачи данных и управления

Введение

Команды передачи данных приведены в Табл.1.1. Из таблицы видно, что набор этих команд представляет собой сочетание восьми операций с различными методами адресации.

Из табл.1.1 и табл.1.2 видно, что команды пересылки данных и команды переходов значения флагов регистра sreg не изменяют.

Работа №2 микроконтроллер aTmega128: команды обработки данных

Введение

Задания

Работа №3 цифровые системы на базе микроконтроллерa aTmega128:

Введение

Регистр управления внешними прерываниями – eicra и eicrb

Выполнение основного задания

Задания

Работа №4 цифровые системы на базе микроконтроллера aTmega128: работа с внешними устройствами через параллельные порты ввода вывода – работа с клавиатурой и светодиодным индикатором

Введение

Выполнение основного задания

Задания

Работа №5

16-Разрядные таймеры/счетчики t/c1 и t/c3

Регистры сравнения а таймеров/счетчиков - ocRxA

Выполнение основного задания

Задания

Работа №6 цифровые системы на базе микроконтроллера aTmega128:

Введение

Универсальный синхронный и асинхронный приемопередатчик usart предназначен для организации последовательной связи.

Инициализация usart.

Передача данных - Передатчик usart.

Прием данных - Приемник usart.

Описание регистров usart.

Задания

Работа №7 цифровые системы на базе микроконтроллера aTmega128:

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

Задания

Задания

Приложение 1.

Приложение 2.

Bit 7 - OCIE2: Разрешение прерывания по совпадению Таймера 2. При установленном бите OCIE2 и установленном бите I регистра статуса разрешается прерывание по совпадению содержимого регистра сравнения и состояния Таймера 2. Соответствующее прерывание (с вектором $0012) имеет место, если произойдет совпадение при сравнении содержимого регистра сравнения и состояния таймера/счетчика2. В регистре флагов прерывания TIFR устанавливается флаг OCF2.

Bit 6 - TOIE2: - Разрешение прерывания по переполнению Таймера 2. При установленном бите TOIE2 и установленном бите I регистра статуса разрешается прерывание по переполнению Таймера 2. Соответствующее прерывание (с вектором $0014) выполняется если произойдет переполнение Таймера 2. В регистре флагов TIFR устанавливается флаг TOV2 переполнения Таймера 2.

Bit 5 - TICIE1: - Разрешение прерывания по захвату Таймера 1. При установленном бите TICIE1 и установленном бите I регистра статуса разрешается прерывание по захвату Таймера 1. Соответствующее прерывание (с вектором $0016) выполняется, если произошел захват по выводу 29, PD4(IC1). В регистре флагов TIFR устанавливается флаг ICF1 захвата Таймера 1.

Bit 4 - OCIE1A: - Разрешение прерывания по совпадению регистра А с Таймером 1. При установленном бите OCIE1A и установленном бите I регистра статуса разрешается прерывание по совпадению регистра A с состоянием Таймера 1. Соответствующее прерывание (с вектором $0018) выполняется, если имеется совпадение содержимого регистра A с состоянием Таймера 1. В регистре флагов TIFR устанавливается флаг OCF1A совпадения регистра А с Таймером 1.

Bit 3 - OCIE1B: - Разрешение прерывания по совпадению регистра B с Таймером 1. При установленном бите OCIE1B и установленном бите I регистра статуса разрешается прерывание по совпадению регистра B с состоянием Таймера 1. Соответствующее прерывание (с вектором $001A) выполняется, если имеется совпадение содержимого регистра B с состоянием Таймера 1. В регистре флагов TIFR устанавливается флаг OCF1 совпадения регистра B с Таймером 1.

Bit 2 - TOIE1: - Разрешение прерывания по переполнению Таймера 1. При установленном бите TOIE1 и установленном бите I регистра статуса разрешается прерывание по переполнению Таймера 1. Соответствующее прерывание (с вектором $001С) выполняется, если произойдет переполнение Таймера 1. В регистре флагов TIFR устанавливается флаг TOV1 переполнения Таймера 1.

Bit 1 - OCIE0: - Разрешение прерывания по совпадению Таймера 0. При установленном бите OCIE0 и установленном бите I регистра статуса разрешается прерывание по совпадению содержимого регистра сравнения и состояния Таймера 0. Соответствующее прерывание (с вектором $001E) выполняется, если произойдет совпадение при сравнении содержимого регистра сравнения и состояния Таймера 0. В регистре флагов прерывания TIFR устанавливается флаг OCF0 совпадения Таймера 0.


Bit 0 - TOIE0: - Разрешение прерывания по переполнению Таймера 0. При установленном бите TOIE0 и установленном бите I регистра статуса разрешается прерывание по переполнению Таймера 0. Соответствующее прерывание (с вектором $0020) выполняется, если произойдет переполнение Таймера 0. В регистре флагов TIFR устанавливается флаг TOV0 переполнения Таймера 0.

Регистр масок прерывания по таймерам/счетчикам - ETIMSK

7

6

5

4

3

2

1

0

$7D

-

-

TICIE3

OCIE3A

OCIE3B

TOIE3

OCIE3C

OCIE1C

ETIMSK

Исходное значение

0

0

0

0

0

0

0

0

Bit 7, Bit 6 - Зарезервировано.

Bit 5 – TICIE3: - Разрешение прерывания по захвату Таймера 3. При установленном бите TICIE3 и установленном бите I регистра статуса разрешается прерывание по захвату Таймера 3. Соответствующее прерывание (с вектором $0032) выполняется, если произошел захват по выводу 9, PE7(ICP3). В регистре флагов ETIFR устанавливается флаг ICF3C захвата Таймера 3.

Bit 4 – OCIE3A: - Разрешение прерывания по совпадению регистра А с Таймером 3. При установленном бите OCIE3A и установленном бите I регистра статуса разрешается прерывание по совпадению регистра A с состоянием Таймера 3. Соответствующее прерывание (с вектором $0034) выполняется, если имеется совпадение содержимого регистра A с состоянием Таймера 3. В регистре флагов ETIFR устанавливается флаг OCF3A совпадения регистра А с Таймером 3.

Bit 3 – OCIE3B: - Разрешение прерывания по совпадению регистра B с Таймером 3. При установленном бите OCIE3B и установленном бите I регистра статуса разрешается прерывание по совпадению регистра B с состоянием Таймера 3. Соответствующее прерывание (с вектором $0036) выполняется, если имеется совпадение содержимого регистра B с состоянием Таймера 3. В регистре флагов ETIFR устанавливается флаг OCF3 совпадения регистра B с Таймером 3.


Bit 2 – TOIE3: - Разрешение прерывания по переполнению Таймера 3. При установленном бите TOIE3 и установленном бите I регистра статуса разрешается прерывание по переполнению Таймера 3. Соответствующее прерывание (с вектором $003A) выполняется, если произойдет переполнение Таймера 3. В регистре флагов ETIFR устанавливается флаг TOV3 переполнения Таймера 3.

Bit 1 – OCIE3C: - Разрешение прерывания по совпадению регистра C с Таймером 3. При установленном бите OCIE3С и установленном бите I регистра статуса разрешается прерывание по совпадению содержимого регистра сравнения C с состоянием Таймера 3. Соответствующее прерывание (с вектором $0038) выполняется, если произойдет совпадение при сравнении содержимого регистра сравнения C и состояния Таймера 3. В регистре флагов прерывания ETIFR устанавливается флаг OCF3C совпадения Таймера 3.

Bit 0 – OCIE1C: - Разрешение прерывания по совпадению регистра C с Таймером 1. При установленном бите OCIE1С и установленном бите I регистра статуса разрешается прерывание по совпадению содержимого регистра сравнения C с состоянием Таймера 1. Соответствующее прерывание (с вектором $0030) выполняется, если произойдет совпадение при сравнении содержимого регистра сравнения C и состояния Таймера 1. В регистре флагов прерывания ETIFR устанавливается флаг OCF1C совпадения Таймера 1.

Регистр флагов прерываний по таймерам/счетчикам –TIFR

7

6

5

4

3

2

1

0

$36 ($56)

OCF2

TOV2

ICF1

OCF1A

OCF1B

TOV1

OCF0

TOV0

TIFR

Исходное значение

0

0

0

0

0

0

0

0


Bit 7 - OCF2: - Флаг 2 совпадения Таймера 2 и данных OCR2. Бит OCF2 устанавливается при совпадении состояния Таймера 2 и содержимого регистра OCR2. Бит OCF2 аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленных битах I в регистре SREG, OCIE2 и OCF2 выполняется прерывание по совпадению Таймера 2.

Bit 6 - TOV2: - Флаг переполнения Таймера 2. Бит TOV2 устанавливается при переполнении Таймера 2. Он аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных битах OCIE2 и TOV2 выполняется прерывание по переполнению Таймера 2. В режиме PWM этот бит устанавливается, при переходе через $00.

Bit 5 - ICF1: - Флаг захвата входа. Бит ICF1 устанавливается в случае захвата входа и показывает, что значение Таймера 1 переслано во входной регистр захвата ICR1. Бит очищается аппаратно при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1.

Bit 4 - OCF1A: - Флаг 1A совпадения выхода. Бит OCF1A устанавливается при совпадении состояния Таймера 1 и содержимого регистра OCR1A. Бит OCF1A аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных битах OCIE1A и OCF1A выполняется прерывание по совпадению выхода Таймера счетчика1.

Bit 3 - OCF1B: - Флаг 1B совпадения выхода. Бит OCF1B устанавливается при совпадении состояния Таймера 1 и содержимого регистра OCR1B. Бит OCF1B аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных битах OCIE1B и OCF1B выполняется прерывание по совпадению выхода Таймера 1.

Bit 2 - TOV1: - Флаг переполнения Таймера 1. Бит TOV1 устанавливается при переполнении Таймера 1. Он аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных битах TOIE1 и TOV1 выполняется прерывание по переполнению Таймера 1.

Bit 1 - OCF0: - Флаг 0 совпадения выхода. Бит OCF0 устанавливается при совпадении состояния Таймера 0 и содержимого регистра OCR0 . Бит OCF0 аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных битах OCIE0 и OCF0 выполняется прерывание по совпадению выхода Таймера 1.


Bit 0 - TOV0: - Флаг переполнения Таймера 0. Бит TOV0 устанавливается при переполнении Таймера 0. Он аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных битах TOIE0 и TOV0 выполняется прерывание по переполнению Таймера 0.

Регистр флагов прерываний по таймерам/счетчикам –ETIFR

7

6

5

4

3

2

1

0

$7C

-

-

ICF3C

OCF3A

OCF3B

TOV3

OCF3C

OCF1C

ETIFR

Исходное значение

0

0

0

0

0

0

0

0

Bit 7, Bit 6 – Зарезервировано.

Bit 5 – ICF3C: - Флаг захвата входа. Бит ICF3C устанавливается в случае захвата входа и показывает, что значение Таймера 3 переслано во входной регистр захвата ICR3. Бит очищается аппаратно при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1.

Bit 4 – OCF3A: - Флаг 3A совпадения выхода. Бит OCF3A устанавливается при совпадении состояния Таймера 3 и содержимого регистра OCR3A. Бит OCF3A аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных битах OCIE3A и OCF3A выполняется прерывание по совпадению выхода Таймера 3.

Bit 3 – OCF3B: - Флаг 3B совпадения выхода. Бит OCF3B устанавливается при совпадении состояния Таймера 3 и содержимого регистра OCR3B. Бит OCF3B аппаратно очищается при обработке соответствующего вектора прерывания. Возможна очистка бита записью во флаг логической 1. При установленном бите I в регистре SREG, установленных битах OCIE3B и OCF3B выполняется прерывание по совпадению выхода Таймера 3.