Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[32]

Разрешение ШИМ

TOP значения таймера

Частота ШИМ

8-разрядное

$00FF (255)

fTC1 /510

9- разрядное

$01FF (511)

fTC1 /1022

10- разрядное

$03FF (1023)

f TC1 /2046

Таблица 19. Выбор режима сравнения! в ШИМ режиме

COM1X1

COM1X0

Выходной сигнал на OCX1

0

0

Не подключен

0

1

Не подключен

1

0

Очищается по совпадению при счете вверх. Устанавливается по совпадению при счете вниз (не инвертированный ШИМ).

1

1

Очищается по совпадению при счете вниз. Устанавливается по совпадению при счете вверх (инвертированный ШИМ).

Примечание: X = A или B

Отметим, что в ШИМ режиме младшие 10 разрядов OCR1A/OCR1B, при записи, пересылаются в ячейки временного хранения. Они фиксируются по достижении таймером/счетчиком1 значения TOP. Таким способом обеспечивается защита от появления уширенных ШИМ импульсов (ложных выбросов - glitches) при несинхронной записи OCR1A/OCR1B. См. пример на рис. 36.

Изменение уставки сравнения

Синхронизированная фиксация уставки в OCR1X

Текущее состояние таймера/счетчика

Установленное значение сравнения

ШИМ выход на выводах OC1X

Изменение уставки сравнения

Несинхронная фиксация уставки в OCR IX

Примечание: X = A или B Рис. 36. Эффект несинхронной фиксации OCR1.

Текущее состояние таймера/счетчика

- Установленное значение сравнения

выход на выводах OC1X

Ложный выброс

При чтении OCR1A или OCR1B, в промежутке времени между записью и фиксацией, будет считано содержимое ячейки временного хранения. Это означает, что более раннее записанное значение всегда будет считываться из OCR1A/B.

Когда OCR1 содержит $0000 или TOP, вывод OC1A/OC1B остается на низком уровне, соответственно установкам COM1A1/COM1A0 или COM1B1/COM1B0. Это отображено в таблице 20.

Таблица 18. TOP значения таймера и частота ШИМ


Таблица 20. Состояния выходов в ШИМ режиме при OCR1X = $0000 или TOP

COM1X1

COM1X0

OCR1X

Состояние выводов OC1X

1

0

$0000

L

1

0

TOP

H

1

1

$0000

H

1

1

TOP

L

Примечание: X = A или B

В ШИМ режиме флаг переполнения таймера1 (TOV1) устанавливается при смене направления счета по достижении значения $0000. Прерывание по переполнению таймера1 работает так же как и в обычном режиме таймера/счетчика, т.е. оно выполняется когда TOV1 установлен и разрешены прерывания по переполнению таймера1 и глобальные прерывания. Это относится и к флагам сравнения выхода таймера1 и прерываниям.

Сторожевой таймер (Watchdog Timer)

Генератор 1 МГцг

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

WDP0 WDP1 WDP2 WDE

Предварительный делитель I сторожевого таймера

Нт о о

Рис. 37 Сторожевой таймер.

Сброс MCU

Сторожевой таймер тактируется отдельным встроенным генератором, работающим с частотой 1 МГц при типовом напряжении питания VCC=5 В (см. типовые значения при других значениях VCC). Установкой коэффициента предварительного деления можно изменять длительность интервала до сброса по сторожевому таймеру от 16 тыс. до 2048 тыс. циклов (от 16 до 2048 мс). Команда WDR (Watchdog Reset) сбрасывает сторожевой таймер.

С момента сброса сторожевого таймера можно установить восемь периодов длительности тактового сигнала, устанавливая, таким образом длительность периода сброса. Если период сброса завершается (в течение этого периода не поступил сигнал сброса сторожевого таймера), то микроконтроллер ATmega603/103 сбрасывается и его работа продолжается по вектору сброса. Подробности тактирования сброса по сторожевому таймеру см. выше в разделе Сброс по сторожевому таймеру.

При разрешении сторожевого таймера его состояние неизвестно и прежде, чем разрешать сторожевой таймер, необходимо выполнить команду WDR. В ином случае прибор может быть сброшен прежде, чем будет выполнена команда WDR прописанная после разрешения. Для предотвращения случайного запрета, запрет сторожевого таймера должен сопровождаться специальной процедурой выключения. Подробности в описании регистра управления сторожевым таймером.


WDP2

WDP1

WDP0

Длительность цикла сторожевого таймера

0

0

0

16 тыс. циклов

0

0

1

32 тыс. циклов

0

1

0

64 тыс. циклов

0

1

1

128 тыс. циклов

1

0

0

256 тыс. циклов

1

0

1

512 тыс. циклов

1

1

0

1024 тыс. циклов

1

1

1

2048 тыс. циклов

РЕГИСТР УПРАВЛЕНИЯ СТОРОЖЕВЫМ ТАЙМЕРОМ -WDTCR - (Watchdog Timer Control Register)

Биты765 4 3 2 10

$21 ($41)j- I - I - I WDTOE WDE WDP2 WDP1 WDP0" WDTCR

Чтение/ЗаписьRRRR/W R/W R/W R/W R/W

Начальное состояние00000000

•Bits 7..5 - Res: Reserved bits - Зарезервированные биты

Эти биты в микроконтроллерах ATmega603/103 зарезервированы и при считывании всегда будут 0.

•Bit 4 - WDTOE: Watch Dog Turn Off Enable - Разрешение отключения сторожевого таймера

Данные биты должны быть установлены в состояние 1 при очистке бита WDE. В ином случае сторожевой таймер не будет запрещен. Установленный бит аппаратно очищается после четырех тактовых циклов. См. описание бита WDE в процедуре запрета сторожевого таймера.

•Bit 3 - WDE: Watch Dog Enable - Разрешение сторожевого таймера

Если бит WDE установлен в состояние 1 (сторожевой таймер разрешен) и если бит WDE очищен, то функционирование сторожевого таймера запрещено. Бит WDE может быть очищен только если установлен бит WDTOE. Для запрещения разрешенного сторожевого таймера необходимо выполнить следующую процедуру:

1.В одной операции записать логическую 1 в WDTOE и WDE. Логическая 1 должна быть записана в WDE даже если этот бит был установлен перед началом операции запрета сторожевого таймера.

2.За время последующих четырех тактовых циклов записать логический 0 в WDE. Сторожевой таймер будет запрещен.

•Bits 2..0 - WDP2, WDP1, WDP0: Watch Dog Timer Prescaler 2, 1 and 0 - биты установки коэффициента предварительного деления сторожевого таймера

Состояния битов WDP2, WDP1 и WDP0 определяют коэффициент предварительного деления тактовой частоты разрешенного сторожевого таймера. Коэффициенты и соответствующие им промежутки времени представлены в таблице 21.

Таблица 21. Выбор коэффициента предварительного деления тактовой частоты сторожевого таймера



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51]