Основні особливості архітектури мікроконтролерів PlCmicro. Організація пам'яті програм. Непряма адресація, регістри INDF й FSR, страница 20

Для зменшення енергоспоживання таймер TMR2 може бути виключений скиданням біта TMR2ON (T2CON<2>) в '0'.

 Сигнал TMR2

Сигнал переповнення TMR2 (до вихідного дільника) передається в:

•     Вихідний дільник TMR2,

·      Модуль SSP для управления скоростью передачи данных.

Чотири керуючі біта встановлюють коефіцієнт вихідного дільника (від 1:1 до 1:16 включно). Після переповнення вихідного дільника встановлюється в '1' прапор переривання TMR2IF. Ця функція використається для спрощення програмного забезпечення, оскільки переривання будуть виникати тільки після переповнення вихідного дільника.

          Сигнал переповнення TMR2 також надходить у модуль SSP  для програмного вибору швидкості  передачі.

 Модуль РСР.

Кожен модуль РСР містить 16-розрядний регістр, що може використовуватися в якості:

•      16-розрядного регістра захвата даних,

•      16-розрядного регістра порівняння,

•     Двох 8-розрядних (ведучий і ведомих) регістрів ШИМ.

Режим захвата

При виникненні подій захвата 16-розрядне значення лічильника TMR1 листується в регістри CCPRx:CCPRx модулі Сррх. Подією захвата може бути

·  Кожен задній фронт сигналу на вході Ссрх     

·  Кожен передній фронт сигналу на вході Ссрх   

·  Кожен 4-й передній фронт сигнала  на вході Ссрх    

·  Кожен 16-й передній фронт сигналу на вході Ссрх.

Тип події захвата встановлюється бітами Ссрхмз:Ссрхмо в регістрі CCPxCо. Після виконання захвата встановлюється прапор переривання CCPxl в '1', що повинен бути скинутий програмно. Якщо відбувається події захвата до того, як попередні дані були прочитані, старе значення буде загублено.

Примітка. У режимі захвата TMR1 повинен працювати в режимі таймера або синхронізованого лічильника. У режимі асинхронного лічильника операція захвата не працює

Операція захвата даних не скидає 16-розрядний регістр TMR1 (див малюнок 14-1). TMR1 може використатися як базовий таймер для інших операцій. Проміжок часу між двома операціями захвата даних може бути легко обчислена (різниця між значенням першого й другого захвата). При переповненні TMR1 установлюється прапор переривання TMR1IF в '1', і якщо, дозволено, відбудеться перехід на обробку переривань, що дозволяє програмно реалізувати таймер розрядністю більше чим 16 біт.

Настроювання виводу модуля РСР

У режимі захвата порт уведення/виводу Ссрх повинен бути настроєний на вхід установкою біта TRIS в '1'.


Вхідний предделитель може використатися, щоб одержати гарну пропускну спроможність, щодо постійній частоті вхідного сигналу. Наприклад, якщо частота вхідного сигналу постійний і  коефіцієнт предделителья дорівнює 1:16, то помилка виміру протягом 16 періодів вхідного сигналу дорівнює 1TCY. У цьому випадку розв'язна здатність дорівнює TCY/16  (при тактовій частоті 20МГц пропускна спроможність 12,5 нс). Використати цю методику доцільно  коли частота вхідного сигналу не змінюється в проміжку 16 періодів.

 Режим порівняння.

У цьому режимі 16-розрядний регістр CCPRx рівняється зі значенням TMR1. Як тільки значення в регістрах стають однакові, модуль РСР змінює стан виводу Ссрх:

§  Установлює високий рівень сигналу;

§  Установлює низький рівень сигналу

§  На вивід не впливає.


Дія при збігу може бути обрано  бітами Ссрхмз:Ссрхмо (Ссрхсо<З:0>). У момент зміни стану виводу встановлюється прапор переривання CCPxIF в  '1'.

Режим ШИМ.

У ШИМ режимі модуля РСР вивід Ссрх використається як вихід 10-розрядного ШИМ Т к вивід Ссрх мультиплицирован із цифровим каналом порту уведення/виводу  відповідний біт направленна TRIS повинен бути скинутий в 'О'

Примітка. Очищення регістра CCPxCON змусять перевести вивід Ссрх у низький логічний рівень. 


На малюнку 14-3 показана структурна схема модуля Ссрх у ШИМ режимі.

Послідовність настроювання модуля РСР у ШИМ режимі

Рекомендована послідовність включення модуля РСР у ШИМ режимі:

1.    Установити період ШИМ у регістрі PR2,

2.    Установити тривалість імпульсу в бітах DCx9 DCxBO;

3.  Настроїти вивід Ссрх як вихід, скинувши відповідний біт TRIS,

4.  Настроїти предделитель і включити TMR2 у регістрі T2CON

Включити РСР у режимі ШИМ