восьмібітних таймери

РегістрTCNTn - вважає кількість імпульсів надійшли на вхід таймера. При включень, регістр містить 00 (Н). При досягненні значення FF (Н), регістр скидається в нуль, встановлюючи прапор переривання TOV0 (TOV2) регістра TIFR. Дозвіл переривання здійснюється установкою в 1 розряду TOIE0 (TOIE2) регістра TIMSK (прапор I = 1 в регістрі SREG).

Регістри сравненіяOCR0 (OCR2). Під час роботи таймера виробляється порівняння цього регістра з регістром TCNTn. Якщо вміст регістрів одно, встановлюється прапор OCF0 (OCF2) регістра TIFR і генерується переривання. Крім того, при настанні цієї події може змінить стану висновків ОС0 (ОС2), якщо ця зміна задано битами COMn1 і COMn0 регістра TCCRn.

Режими роботи таймерів Т0 і Т2.

По кожному імпульсу тактового сигналу відбувається інкремент рахункового регістра TCNTn. При переході через значення FF (H) виникає переповнення, і рахунок продовжується зі значення 00 (Н). У тому ж такті, встановлюється в 1 прапор переповнення TOVn.

У разі рівного розподілу рахункового регістра TCNTn і регістра порівняння OCRn встановлюється прапор переривання OCFn і, якщо розряд OCIFn регістра TIMSK встановлений в 1, генерується переривання. Поряд з установкою прапора переривання, змінюється стан виведення ОС0 (ОС2) мікроконтролера.

Управління висновком ОС0 (ОС2) в режимі Normal і CTC.

Таймер Tn відключений від виходу OСn

Стан виведення інвертується

Висновок скидається в 0

Висновок встановлюється в 1

2. Режим СТС (скидання при збігу).

В цьому режимі рахунковий регістр функціонує як суммирующий лічильник. При досягненні значення, що зберігається в регістрі порівняння OCRn, рахунок триває з значення 00 (Н). При обнулення лічильника, встановлюється прапор переривання TOV0 (TOV2) регістра TIFR.

При досягненні лічильником максимального значення, встановлюється прапор OCF0 (OCF2) регістра TIFR. Одночасно з установкою прапора може змінюватися стан виведення ОС0 (ОС2) мікроконтролера. Поведінка виведення визначається розрядами СOMn1 і COMn0 відповідно до наведеної вище таблиці.

Режим може використовуватися для генерації заданої частоти. Для цього в розрядах СOMn1, COMn0 записують значення 01.

Частота вихідного сигналу визначається виразом:

, де N - коефіцієнт розподілу предделителя,

ОСRn - число в регістрі порівняння.

3. РежімFastPWM (швидкий ШІМ)

Рахунковий регістр функціонує в цьому режимі як суммирующий лічильник, значення якого циклічно змінюються від 00 (Н) до FF (H). Також як і в попередніх двох випадках, генеруються переривання по рівності та переповнення лічильника.

Частота генерується сигналу:

, де N - коефіцієнт розподілу предделителя.

Особливістю режиму є те, що запис нового значення в регістр OCR0 (OCR2) проводиться тільки в момент досягнення лічильником максимального значення FF (Н), для виключення перешкод на виведенні Ocn ШІМ.

Поведінка виведення ОС0 (ОС2) визначається бітами COMn1, COMn0 регістра

Схожі матеріали

Інформація про роботу

Схожі статті