ния может вырабатываться и при переполнении таймера-счетчика.
Рисунок 4.2 Модуль выходного сравнения (Output Compare)
Рассмотрим примеры типовых применений модуля CCP в
режиме
выходного сравнения:
1. Формирование сигнала с определенной частотой: формирователь
уровня настраивают на
режим инверсии OCO, управление таймером-
счетчиком в режим сброса по флагу OCF, в
регистр сравнения –
значение, равное полупериоду формируемой частоты. По
каждому
событию сравнения раз в полупериод порт OCO инвертируется и
формируется передний или задний фронт сигнала.
2. Формирование одиночного импульса определенной длительности:
формирователь уровня настраивают на режим установки OCO в «0», в
регистр сравнения – длительность импульса, таймер обнуляем и
одновременно устанавливаем порт OCO в «1» (передний фронт). По
событию сравнения порт обнуляется (задний фронт).
3. Ожидание определенного числа импульсов на счетном входе (сигнал
Fext) таймера-счетчика: таймер настраиваем в
режим счетчика,
обнуляем, в регистр сравнения записываем требуемое число импульсов,
разрешаем прерывание по событию сравнения (по флагу OCF). После
прохождения заданного числа импульсов
будет выработан запрос
прерывания.
4. Делитель входной частоты на заданное число N, кратное двум: таймер-
счетчик переключаем в режим счетчика, устанавливаем обнуление
счетчика по флагу OCF, формирователь уровня настраивают на
режим
инверсии OCO, в регистр сравнения записываем значение N/2.
Достарыңызбен бөлісу: