Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РГР.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
1.08 Mб
Скачать

Варианты заданий для студентов

Вариант

Направление

бега

светодиодов

Число

скоростей

Номер таймера

Номер внешнего прерывания

Тип прерывания

от таймера

1

слева направо

3

0

0

Переполнение

2

слева направо

3

1

1

Достижение значения

3

слева направо

3

0

2

Переполнение

4

слева направо

4

1

0

Достижение значения

5

слева направо

4

0

1

Переполнение

6

слева направо

4

1

2

Достижение значения

7

справа налево

5

0

0

Переполнение

8

справа налево

5

1

1

Достижение значения

9

справа налево

5

0

2

Переполнение

10

справа налево

6

1

0

Достижение значения

11

справа налево

6

0

1

Переполнение

12

справа налево

6

1

2

Достижение значения

Контрольные вопросы

  1. Как создать проект на языке Си в среде разработки AVR Studio?

  2. Какой источник тактирования выбран?

  3. Что нужно сделать для добавления новых файлов в проект?

  4. Что хранится в заголовочном файле appl.h?

  5. Что находится в файле appl.c?

  6. Что располагается в главном модуле программы?

Основы работы в среде разработки CodeVisionAvr. Широтно-импульсная модуляция (шим) микроконтроллера AtMega16

Освоение интегрированной среды разработки программ для микроконтроллеров Atmel семейства AVR CodeVisionAVR, формирование навыков программирования на языке С. Генерация ШИМ.

Введение

Широтно-импульсная модуляция (ШИМ, Pulse-width modulation – PWM) – дискретизация непрерывного сигнала бинарным сигналом (с двумя уровнями – 1/0) так, что средние уровни сигнала за некоторый отрезок времени равны. ШИМ есть импульсный сигнал постоянной частоты и переменной скважности, то есть обратного отношения длительности импульса к периоду его следования. С помощью задания скважности (длительности импульсов) можно менять среднее напряжение на выходе ШИМ.

Рис. 1. Широтно-импульсная модуляция

Параметры ШИМ:

  • Т – период ШИМ (время между фронтами (или спадами) соседних импульсов),

  • А – длительность импульса,

  • Т/А – скважность ШИМ,

  • А/Т – величина ШИМ.

В работе используется таймер/счетчик 1 (работа в режиме PWM) и порт D (выход ШИМ).

Выводы порта D с альтернативными функциями показаны в табл. 1.

Табл. 1.

Альтернативные функции порта D

Вывод

порта

Альтернативная функция

PD7

OC2 (выход компаратора и выход ШИМ таймера-счетчика 2)

PD6

ICP1 (вход триггера захвата фронта таймера-счетчика 1)

PD5

OC1A (выход A компаратора и ШИМ таймера-счетчика 1)

PD4

OC1B (выход В компаратора и ШИМ таймера-счетчика 1)

PD3

INT1 (вход внешнего прерывания 1)

PD2

INT0 (вход внешнего прерывания 0)

PD1

TXD (выход передачи УАПП)

PD0

RXD (вход приема УАПП)

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

Таймер/счетчик 1 (TC1) – 16-битовый модуль, содержащий 10 8-битовых регистров. Эти регистры фактически являются набором из 5 16-битовых регистров. Счет происходит в регистрах TCNT1H (Timer counter 1 High byte) и TCNT1L (Low byte), вместе составляющих 16-битовый регистр TCNT1.

Табл. 2.

Регистр А управления таймером-счетчиком 1 – TCCR1A

Bit

7

6

5

4

3

2

1

0

 

COM1A1

COM1A0

COM1B1

COM1B0

FOC1A

FOC1B

WGM11

WGM10

TCCR1A

Чтение/

запись

Чт./Зп.

Чт./Зп.

Чт./Зп.

Чт./Зп.

Чт./Зп.

Чт./Зп.

Чт./Зп.

Чт./Зп.

Исх. значение

0

0

0

0

0

0

0

0

 

Биты 7:6 – COM1A1:0: Режим формирования выходного сигнала канала A.

Биты 5:4 – COM1B1:0: Режим формирования выходного сигнала канала В.

Биты COMnA1:0 и COMnB1:0 влияют на работу выводов OCnA и OCnB, соответственно. Если один или оба бита COMnA1:0 равны 1, то вывод OCnA переходит к выполнению альтернативной функции, запрещая его работу как обычного порта ввода-вывода. Аналогичные изменения происходят с выводом OCnB во время записи лог. 1 в один из битов COMnB1:0. Однако необходимо учитывать, что остается влияние на работу данных выводов со стороны регистра направления данных (DDR), и в соответствующих разрядах этого регистра должно быть задано выходное направление для выводов OCnA или OCnB.

Табл. 3.

Описание битов выбора режима работы порта А и В, режим Fast PWM

COM1A1/ COM1B1

COM1A0/ COM1B0

Описание

0

0

Нормальная работа порта, сигналы OC1A/OC1B отключены.

0

1

Если биты WGM13:0 = 15: переключение (инвертирование) OC1A при совпадении, OC1B отключен (нормальная работа порта).

Для всех остальных установок WGM13:0 – нормальная работа порта, сигналы OC1A/OC1B отключены.

1

0

Сброс OC1A/OC1B при совпадении (неинвертирующий режим).

1

1

Установка OC1A/OC1B при совпадении (инвертирующий режим).

Табл. 4.

Описание битов выбора режима работы порта А и В, режим PWM с фазовой коррекцией, с фазово-частотной коррекцией

COM1A1/ COM1B1

COM1A0/ COM1B0

Описание

0

0

Нормальная работа порта, сигналы OC1A/OC1B отключены.

0

1

Если биты WGM13:0 = 9 или 14: переключение (инвертирование) OC1A при совпадении, OC1B отключен (нормальная работа порта).

Для всех остальных установок WGM13:0 – нормальная работа порта, сигналы OC1A/OC1B отключены.

1

0

Сброс OC1A/OC1B при совпадении на подъеме фронта. Установка OC1A/OC1B при совпадении на спаде фронта.

1

1

Установка OC1A/OC1B при совпадении на подъеме фронта. Сброс OC1A/OC1B при совпадении на спаде фронта.

Биты 3:2 – FOC1A:FOC1B: Режим формирования силы выходного сигнала.

Биты 1:0WGMn1:0: Режим работы таймера-счетчика.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]