ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 23.01.2025
Просмотров: 3685
Скачиваний: 8
СОДЕРЖАНИЕ
1. Структура и функционирование микроконтроллера aTmega128
Регистр управления делением частоты кварцевого генератора – xdiv
2. Интегрированная система программирования avr Studio v4.12
3.Описание лабораторного стенда лс-2.
Работа №1 микроконтроллер aTmega128: методы адресации, команды передачи данных и управления
Работа №2 микроконтроллер aTmega128: команды обработки данных
Работа №3 цифровые системы на базе микроконтроллерa aTmega128:
Регистр управления внешними прерываниями – eicra и eicrb
16-Разрядные таймеры/счетчики t/c1 и t/c3
Регистры сравнения а таймеров/счетчиков - ocRxA
Работа №6 цифровые системы на базе микроконтроллера aTmega128:
Передача данных - Передатчик usart.
Прием данных - Приемник usart.
Работа №7 цифровые системы на базе микроконтроллера aTmega128:
Разряд 7 – FOC0(FOC2): Принудительное изменение состояния вывода OC0(OC2).
Разряд 6,3 – WGM00,WGM01 (WGM20,WGM21): Режим работы таймер/счетчика.
Таблица 5.1 – Выбор режима работы таймер/счетчика
|
Номер режима |
WGM01 (WGM21) |
WGM00 (WGM00) |
Режим работы таймер/счетчика |
|
0 |
0 |
0 |
Нормальный режим |
|
1 |
0 |
1 |
ШИМ с коррекцией фазы |
|
2 |
1 |
0 |
Сброс при совпадении |
|
3 |
1 |
1 |
Быстрый ШИМ |
Разряд 5,4 – COM01, COM00 (COM20, COM21): Режим работы блока сравнения.
Таблица 5.2 – Поведение вывода OC0(OC2) в нормальном режиме и в режиме сброс при совпадении.
|
COM01 (COM21) |
COM00 (COM20) |
Описание |
|
0 |
0 |
Таймер/счетчик отсоединен от выходного вывода OC0(OC2) |
|
0 |
1 |
Состояние выходной линии OC0(OC2) меняется на противоположное |
|
1 |
0 |
Сброс выходной линии OC0(OC2) (установка в состояние 0) |
|
1 |
1 |
Установка выходной линии OC0(OC2) (установка в состояние 1) |
Таблица 5.3 – Поведение вывода OC0(OC2) в ШИМ режимах.
|
COM01 (COM21) |
COM00 (COM20) |
Описание |
|
0 |
0 |
Таймер/счетчик отсоединен от выходного вывода OC0(OC2) |
|
0 |
1 |
Зарезервировано |
|
1 |
0 |
Сброс выходной линии OC0(OC2) (установка в состояние 0) |
|
1 |
1 |
Установка выходной линии OC0(OC2) (установка в состояние 1) |
Разряд 2,1,0 – CS02, CS01, CS00 (CS22, CS21, CS20): Выбор источника тактового сигнала.
Таблица 5.4. Выбор источника тактового сигнала для таймера/счетчика 0
|
CS02 |
CS01 |
CS00 |
Источник тактирования в зависимости от бита AS0 в регистре ASSR |
|
|
AS0=0 |
AS0=1 |
|||
|
0 |
0 |
0 |
таймер/счетчик T/C0 остановлен |
|
|
0 |
0 |
1 |
СК |
TOSC1 |
|
0 |
1 |
0 |
СК / 8 |
TOSC1/8 |
|
0 |
1 |
1 |
СК / 32 |
TOSC1/32 |
|
1 |
0 |
0 |
СК / 64 |
TOSC1/64 |
|
1 |
0 |
1 |
СК / 128 |
TOSC1/128 |
|
1 |
1 |
0 |
СК / 256 |
TOSC1/256 |
|
1 |
1 |
1 |
СК / 1024 |
TOSC1/1024 |
где CK-частота тактирования микроконтроллера,TOSC1-частота внешнего тактового генератора.
Таблица 5.5. Выбор источника тактового сигнала для таймера/счетчика 2.
|
CS22 |
CS21 |
CS20 |
Описание |
|
0 |
0 |
0 |
таймер/счетчик T/C2 остановлен |
|
0 |
0 |
1 |
СК |
|
0 |
1 |
0 |
СК / 8 |
|
0 |
1 |
1 |
СК / 64 |
|
1 |
0 |
0 |
СК / 256 |
|
1 |
0 |
1 |
СК / 1024 |
|
1 |
1 |
0 |
Внешний вывод T2 (PD7), спадающий фронт |
|
1 |
1 |
1 |
Внешний вывод T2 (PD7), нарастающий фронт |
Условие таймер/счетчик остановлен обеспечивает реализацию функции разрешения/запрещения таймера. Режим деления синхросигнала реализуется непосредственным делением тактовой частоты микроконтроллера СК. Если для тактирования Таймера/счетчика T/C2 используется внешний источник, то переключения на выводе PD7/(T2) будут воздействовать на счетчик, даже если этот вывод сконфигурирован как выход.
Счетный регистр таймера/счетчика 0 – TCNT0
|
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
$32 ($52) |
MSB |
LSB |
TCNT0 |
||||||
|
Исходное значение |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Счетный регистр таймера/счетчика 2 - TCNT2
|
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
$24 ($44) |
MSB |
LSB |
TCNT2 |
||||||
|
Исходное значение |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Эти два 8-разрядных регистра являются регистрами счета таймеров/счетчиков. Оба таймера/счетчика работают как инкрементирующие, либо как реверсивные (в ШИМ режиме) счетчики с возможностью чтения/записи. Если в таймер/счетчик записано некоторое значение и выбран источник тактового сигнала, то он продолжит счет с записанного значения с указанной тактовой частотой.
Регистр сравнения таймера/счетчика 0 – OCR0
|
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
$31 ($51) |
MSB |
LSB |
OCR0 |
||||||
|
Исходное значение |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Регистр сравнения таймера/счетчика 2 – OCR2
|
Разряд |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
$23 ($43) |
MSB |
LSB |
OCR2 |
||||||
|
Исходное значение |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Регистры сравнения выходов являются 8-разрядными регистрами с возможностью чтения/записи. Выбор процедуры сравнения определяется регистрами TCCR0 и TCCR2. Совпадение при сравнении произойдет только тогда, когда таймер/счетчик досчитает до значения содержимого OCR. Программная запись одного и того же значения в таймер/счетчик и в регистр сравнения выхода не приведет к формированию совпадения при сравнении.
Совпадение при сравнении приведет к установке флага прерывания по совпадению в течение цикла процессора, следующего за событием.