Для зменшення енергоспоживання таймер 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
Включити РСР у режимі ШИМ
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.