8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 117 118 119 120 121 122 123 ... 195

Программно запись в регистр ICR/j возможна только в режимах, в которых регистр захвата определяет модуль счета таймера/счетчика (см. Табл. 7.25). Вывод 1СРл в этих режимах отключен от микроконтроллера, а функция захвата соответственно выключена.

Упрощенная структурная схема блока захвата приведена на Рис. 7.18.

Шина данных

ТЕМР(8-бигн.)

1

г

ICRrt+48-битн j

ICRnL(8-6mH)

TCNTnH (В-битн ) TCNTrtL (8-бигн.)

write ICRn (16-битн регистр)

TCNTn (16-битн счетчик)

АС0*

ACIC*

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

ICPn

ICNC

1

ICES

1

Подавление

Детектор

помех

фронтов

-ICFn

Запрос на прерывание

* Выход аналогового компаратора подключен только к таймеру/счетчику Т1.

Рис. 7.18. Структурная схема блока захвата

Для управления схемой захвата используются два бита регистра TCCR/jB — ICNC/i и ICESh. Бит ICNCh управляет схемой подавления помех. Если этот бит сброшен в 0, схема подавления помех выключена и захват производится по первому же активному фронту на выходе мультиплексора (Рис. 7.18). Если же этот бит установлен в 1, то при появлении активного фронта производится 4 выборки с частотой, равной тактовой частоте микроконтроллера. Захват будет выполнен только в том случае, если все выборки имеют уровень, соответствующий активному фронту сигнала (лог. 1 для нарастающего и лог. О для спадающего).

Активный фронт сигнала, т. е. фронт, по которому будет выполнено сохранение содержимого счетного регистра в регистре захвата, определяется битом ICESh. Если этот бит сброшен в 0, то активным является спадающий фронт. Если бит установлен в 1, то активным является нарастающий фронт. Для захвата по сигналу с вывода 1СРл этот вывод должен быть сконфигурирован как вход (бит регистра DDRx, соответствующий выводу, должен быть сброшен в 0). Если же он будет сконфигурирован как выход, захват можно будет осуществлять программно, управляя соответствующим битом порта.


Следует понимать, что между изменением состояния входа блока захвата и копированием счетного регистра в регистр захвата таймера/счетчика проходит некоторое время. Эту задержку вносит каскад, состоящий из синхронизатора (на рисунке не показан) и детектора фронтов. Величина задержки составляет от 2.5 до 3.5 тактов. При включении схемы подавления помех задержка увеличивается еще на 4 такта.

Для управления таймером/счетчиком используются три регистра управления: TCCRaA, TCCR/jB, TCCR/iC. Формат этих регистров приведен на Рис. 7.19...7.21, а описание их битов — в Табл. 7.21...7.23.

C0M1A1

СОМ1А0

C0M1B1

СОМ1В0

F0C1A

F0C1B

WGM11

WGM10

Чтение (Н)/Запись (W) Начальное значение

R/W 0

R/W 0

R/W 0

R/W 0

W

0

W

0

R/W 0

R/W 0

7

6

5

4

3

2

1

0

С0М1А1

СОМ1А0

С0М1В1

COM1B0

С0М1С1

СОМ1С0

WGM11

WGM10

Чтение (Н)/Запись (W) Начальное значение

R/W 0

R/W 0

R/W 0

R/W 0

W

0

W

0

R/W 0

R/W 0

7

6

5

4

3

2

1

0

С0М1А1

СОМ1А0

С0М1В1

СОМ1В0

-

-

WGM11

WGM10

Чтение (н)/3апись (W) Начальное значение

R/W 0

R/W 0

R/W 0

R/W R/W 0 0 а)

R/W 0

R/W 0

R/W 0

7

6

5

4

3

2

1

0

С0МЗА1

СОМЗАО

С0МЗВ1

СОМЗВО

F0C3A

F0C3B

WGM31

WGM30

Чтение (Н)/Запись (W) Начальное значение

R/W 0

R/W 0

R/W 0

R/W 0

W

0

W

0

R/W 0

R/W 0

7

6

5

4

3

2

1

0

С0МЗА1

СОМЗАО

С0МЗВ1

СОМЗВО

С0МЗС1

СОМЗСО

WGM31

WGM30

Чтение (Н)/Запись (W) Начальное значение

R/W 0

R/W 0

R/W 0

R/W R/W 0 0 б)

4 3

R/W 0

R/W 0

R/W 0

7

6

5

2

1

0

С0М4А1

СОМ4А0

С0М4В1

СОМ4В0

С0М4С1

СОМ4С0

WGM41

WGM40

Чтение (Н)/Запись (W) Начальное значение

R/W 0

R/W 0

R/W 0

R/W R/W 0 0 *)

R/W 0

R/W 0

R/W 0

7

6

5

4

3

2

1

0

С0М5А1

СОМ5А0

С0М5В1

СОМ5В0

С0М5С1

СОМ5С0

WGM51

WGM50

Чтение (Я)/Запись (W) Начальное значение

R/W 0

R/W 0

R/W 0

R/W 0

R/W 0

R/W 0

R/W 0

R/W 0

ATmega8515x/8535x ATmega8x/16x/32x ATmega 162х

ATmega64x/128x

ATmega640x/1280x/1281x

ATmega2560x/2561x

ATmega48x/88x/168x ATmega164x/324x/644x ATmega 165x

ATmega 162x

ATmega64x/128x ATmega640x/1280x/1281 x ATmega2560x/2561x

ATmega640x/1280x/1281x ATmega2560x/2561x

ATmega640x/1280x/1281x ATmega2560x/2561x

Рис. 7.19. Формат регистров TCCR1A (a), TCCR3A (6), TCCR4A (e) и TCCR5A (г)


Таблица 7.21. Биты регистров TCCR/iA

Название

Описание

СОМлА1:СОМлА0

Режим работы блока сравнения х. Эти биты определяют состояние вывода ОСпх при наступлении события «Совпадение». Влияние содержимого этих битов на состояние вывода зависит от режима работы таймера/счетчика

СОМлВ1:СОМлВ0

СОМлС1:СОМлС0

WGMaj1:WGMaj0

Режим работы таймера/счетчика. Совместно с битами WGMaj3:WGMaj2 регистра TCCR/iB определяют режим работы таймера/счетчика Тп (см. Табл. 7.25)

FOCajA

Принудительное изменение состояния вывода ОСпх. При записи в бит ¥ОСпх лог. 1 состояние вывода ОСпх изменяется в соответствии с установками битов СОМлIjc:СОМпОх регистра ТССЯлА. Прерывание при этом не генерируется и сброс таймера (в режиме СТС) не производится. Эта функция доступна только в тех режимах, которые не используются для генерации сигнала с ШИМ. При чтении бита всегда возвращается 0

FOCajB

Примечание, п = 1,3,4,5; л: = А, В или С.

Чтение (R)/3armcb (W) Начальное значение

Чтением/Запись (W) Начальное значение

Начальное значение

Чтение (R)/3anncb(W) Начальное значение

ICNC1

ICES1

-

WGM13

WGM12

CS12

CS11

CS10

R/W 0

R/W 0

R

0

R/W 0

ш)

R/W 0

R/W 0

R/W 0

R/W 0

7

6

5

4

3

2

1

0

ICNC3

ICES3

-

WGM33

WGM32

CS32

CS31

CS30

R/W 0

R/W 0

R

0

R/W 0

б)

R/W 0

R/W 0

R/W 0

R/W 0

7

6

5

4

3

2

1

0

ICNC4

ICES4

-

WGM43

WGM42

CS42

CS41

CS40

R/W 0

R/W 0

R

0

R/W 0

R/W 0

R/W 0

R/W 0

R/W 0

7

6

5

4

3

2

1

0

ICNC5

ICES5

-

WGM53

WGM52

CS52

CS51

CS50

R/W 0

R/W 0

R

0

R/W 0

R/W 0

R/W 0

R/W 0

R/W 0

Все модели

ATmega64x/128x ATmega 162х

ATmega640x/1280x/1281x ATmega2560x/2561x

ATmega640x/1280x/1281x ATmega2560x/2561x

ATmega640x/1280x/1281x ATmega2560x/2561x

Puc. 7.20. Формат регистров TCCRIB (a), TCCR3B (6), TCCR4B (в) и TCCR5B (г)



0 ... 117 118 119 120 121 122 123 ... 195