Курсовая работа: Работа периферийных устройств

Таймер-счетчик Т/СХ (X = 0, 1, 2 - цифра в имени таймера-счетчика) любого типа содержит базовый счетчик TCNTX, имеющий восемь или шестнадцать разрядов, и восьмиразрядный регистр управления TCCRX. Кроме того, в состав таймера-счетчика входят один или несколько разрядов регистра запросов, прерывания TIFR (№ $38, у МК типа 128 - № $05) и столько же разрядов регистра маскирования прерываний TIMSK (№ $39, у МК типа t28 - № $06). Регистры TIFR и TIMSK являются общими для всех таймеров-счетчиков микроконтроллера.

Разряд регистра TIFR устанавливается в единичное состояние при формировании в таймере-счетчике определенного запроса прерывания. Запрос прерывания проходит в блок прерываний при единичном состоянии соответствующего разряда регистра TIMSK. Разряд регистра TIFR сбрасывается в нулевое состояние аппаратно при переходе микроконтроллера к выполнению соответствующей прерывающей программы или программно при выполнении команды установки бита в единичное состояние (!).

В состав таймера-счетчика, выполняющего функцию сравнения/PWM, входит регистр сравнения OCRX, а в состав таймера-счетчика, выполняющего функцию захвата, - регистр захвата ICRX. Разрядность регистров OCRX и ICRX равна разрядности базового счетчика TCNTX.

Для записи кода в шестнадцатиразрядный счетчик или регистр сначала выполняется команда записи (OUT) байта в старшую половину разрядов (Н), при этом поступавший из регистра общего назначения старший байт запоминается в регистре временного хранения. Затем выполняется команда записи (OUT) младшего байта в младшую половину разрядов (L), при этом оба байта одновременно записываются в счетчик или регистр.

Для чтения кода из шестнадцатиразрядного счетчика или регистра сначала выполняется команда чтения (IN) байта из младшей половины разрядов (L), при этом считанный младший байт поступает в регистр общего назначения, а старший байт запоминается в регистре временного хранения. Затем выполняется команда чтения байта из старшей половины разрядов (Н), при этом старший байт из регистра временного хранения поступает в указанный в команде регистр общего назначения.

5.1 Таймер-счетчик типа А

Таймер-счетчик типа А есть у микроконтроллеров всех типов кроме микроконтроллера типа тЮЗ. Он имеет имя Т/СО (X = 0). Таймер-счетчик типа А формирует запрос прерывания Т/СО OVF при переполнении восьмиразрядного базового счетчика TCNT0 (№ S32, у МК типа t28 - № $03).

Тактовый сигнал микроконтроллера СК поступает в пересчетную схему (prescaler) ПС, представляющую собой десятиразрядный счетчик, где выполняется деление частоты тактового сигнала на 8, 64, 256 и 1024. Сигналы с четырех выходов пересчетной схемы поступают в схему управления СУ (мультиплексор). При наличии в микроконтроллере таймера-счетчика Т/С1 эти же сигналы поступают в Т/С1.

В схему управления поступают также тактовый сигнал СК и сигнал из внешнего источника, принимаемый на вход ТО. В качестве входа то у микроконтроллеров типа 1200, 2313 и 4433 используется вывод порта PD4, у микроконтроллеров типа 2323, 2343 и серии ATtiny - вывод порта РВ2, а у микроконтроллеров типа 8515, 8535 и m163 - вывод порта РВО.

Схема управления в зависимости от комбинации состояний разрядов CSOO, CS01 и CS02 регистра управления TCCR0 (№$33, у МК тип t28 - № $04) передаст один из поступающих сигналов на счетный вход базового счетчика TCNT0, ведущего счет па сложение. Сигналы, используемые для счета в счетчике TCNT0 при разных комбинациях значений в разрядах регистра TCCR0, указаны в табл.8.


Таблица 8

CS02

CS01

CS00

сигнал

0

0

0

нет

0

0

1

СК

0

1

0

СК/8

0

1

1

К-во Просмотров: 434
Бесплатно скачать Курсовая работа: Работа периферийных устройств