Смекни!
smekni.com

AVR микроконтроллер AT90S2333 фирмы Atmel (стр. 8 из 22)

При работе таймера/счетчика 1 от внешнего сигнала, внешний сигнал синхронизируется с тактовым генератором ЦПУ. Для правильной обработки внешнего сигнала, минимальное время между соседними импульсами должно превышать период тактовой частоты процессора. Сигнал внешнего источни­ка обрабатывается по спадающему фронту тактовой частоты процессора.

16-разрядный таймер/счетчик 1 можно использовать как счетчик с высоким разрешением, так и для точных применений с низким коэффициен­том деления тактовой частоты. Более высокие коэффициенты деления можно использовать для медленных функций или измерения временных интервалов между редкими событиями.

Таймер/счетчик 1 поддерживает функцию совпадения используя ре­гистр совпадения OCR1A в качестве источника для сравнения с содержимым счетчика. Функция совпадения поддерживает очистку счетчика и переклю­чение выхода по совпадению.

Таймер/счетчик 1 можно использовать как 8-, 9- или 10-разрядный широтно-импульсный модулятор. В этом режиме счетчик и регистр OCR1 ра­ботают как защищенный от дребезга независимый ШИМ с отцентрованными импульсами. Подробно эта функция будет описана ниже.

Функция захвата по входу предусматривает захват содержимого тай­мера/счетчика 1 в регистр захвата ICR1 и управляется внешним сигналом на входе захвата - ICP. Работа режима захвата определяется управляющим регистром TCCR1.

При работе захвата по входу, может быть включена схема подавления шума, при этом сигнал захвата возникает только в том случае, если со­бытие управляющее захватом наблюдается на протяжении 4-х машинных цик­лов.

РЕГИСТР A УПРАВЛЕНИЯ ТАЙМЕРОМ/СЧЕТЧИКОМ 1 - TCCR1A

2Fh(4Fh)

7

6

5

4

3

2

1

0

COM1A1

COM1A0

-

-

-

-

PWM11

PWM10

R\W

R\W

R

R

R

R

R\W

R\W

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

0

0

0

0

0

0

0

0

Биты 7,6 - COM1A1, COM1A0: Режим выхода совпадения, биты 1 и 0: Эти управляющие биты задают отклик вывода OC1 процессора на совпадение ре­гистра сравнения и таймера/счетчика 1. Поскольку это альтернативная функция порта, соответствующий бит направления должен устанавливать вывод на выход. Конфигурация управляющих бит показана в таблице 9.

В режиме ШИМ эти биты имеют другие функции, которые будут указаны при рассмотрении работы ШИМ.

При изменении битов COM1A1 и COM1A0 прерывание по совпадению дол­жно быть запрещено, очисткой соответствующего бита в регистре TIMSK. Иначе, прерывание может произойти во время изменения битов.

Биты 5..2 - зарезервированы. В AT90S2313 эти биты зарезервированы и всегда читаются как 0.

Биты 1,0 - PWM11, PWM10: Биты установки ШИМ: Эти биты устанавливают режим работы таймера/счетчика 1 в качестве ШИМ (см. табл. 10). Подроб­нее этот режим будет рассмотрен ниже.

Таблица 9. Установка режима совпадения

COM1A1

COM1A0

Описание

0

0

Таймер/счетчик 1 отключен от вывода OC1

0

1

Переключение выхода OC1

1

0

Сброс (0) вывода OC1

1

1

Установка (1) вывода OC1

Таблица 10. Установка режима работы ШИМ

PWM11

PWM10

Описание

0

0

Работа ШИМ запрещена

0

1

8 разрядный ШИМ

1

0

9 разрядный ШИМ

1

1

10 разрядный ШИМ

РЕГИСТР B УПРАВЛЕНИЯ ТАЙМЕРОМ/СЧЕТЧИКОМ 1 - TCCR1B

2Eh(4Eh)

7

6

5

4

3

2

1

0

ICNC1

ICES1

-

-

CTC1

CS12

CS11

CS10

R\W

R\W

R

R

R\W

R\W

R\W

R\W

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

0

0

0

0

0

0

0

0

Бит7 - ICNC1: Подавитель входного шума входа захвата: Если этот бит сброшен (0), подавление входного шума входа захвата запрещено. При это захват срабатывает по первому заданному (нарастающему или спадающему) фронту сигнала на выводе ICP. При установке бита обрабатываются четы­ре последовательные выборки сигнала на выводе ICP. Для срабатывания захвата все выборки должны соответствовать уровню заданному битом ICES1. Частота выборок равна тактовой частоте процессора.

Бит 6 - ICES1: выбор фронта сигнала захвата: Если бит ICES1 сброшен (0) содержимое таймера/счетчика 1 переписывается в регистр захвата по спадающему фронту сигнала на выводе ICP. Если бит установлен - по на­растающему фронту сигнала.

Биты 5,4 - зарезервированы. В AT90S2333/4433 эти биты зарезервирова­ны и всегда читаются как 0.

Бит 3 - CTC1: Очистка таймера счетчика 1 по совпадению: Если бит ус­тановлен (1), таймер/счетчик 1 устанавливается в 0000h в такте сле­дующем за событием совпадения. Если бит сброшен, таймер/счетчик 1 про­должает считать, совпадение не отражается на состоянии таймера/счетчика. Поскольку совпадение обнаруживается процессором в цикле следующем

за событием совпадения, в следующем после совпадения такте в счетчик запишется число на 1 большее значения регистра совпадения. При коэффи­циенте деления 1, установке регистра совпадения на величину С и уста­новленном бите CTC1, таймер принимает следующие значения:

...С-1,С,С+1,0,1...

при делении тактовой частоты на 8:

...С-1,С-1,С-1,С-1,С-1,С-1,С-1,С-1,С,С,С,С,С,С,С,С, С+1,0,0,0,0,0,0,0,0,1...

В режиме ШИМ этот бит не работает.

Биты 2,1,0 - CS12, CS11, CS10: выбор тактирования: Эти биты определя­ют источник счетных импульсов для таймера/счетчика 1.

Таблица 11. Выбор источника счетных импульсов

CS12

CS11

CS10

Описание

0

0

0

Таймер/счетчик 1 остановлен

0

0

1

CK

0

1

0

CK/8

0

1

1

CK/64

1

0

0

CK/256

1

0

1

CK/1024

1

1

0

Спадающий фронт на выводе T1

1

1

1

Нарастающий фронт на выводе T1

Условие Stop запрещает/разрешает функционирование таймера/счетчи­ка. В режимах деления используется частота тактового генератора. При использовании работы от внешнего источника предварительно должен быть установлен соответствующий бит регистра направления данных (0 - вклю­чает ножку на ввод).

ТАЙМЕР/СЧЕТЧИК 1 - TCNT1H И TCNT1L

TCNT1H

2Dh(4Dh)

7

6

5

4

3

2

1

0

MSB

-

-

-

-

-

-

-

R\W R\W R\W R\W R\W R\W R\W R\W

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

0 0 0 0 0 0 0 0

TCNT1L