Модуль сравнения (OutputCapture). Режим одиночного переключения с активным низким уровнем. Блок схема модуля сравнения

Страницы работы

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.

Фрагмент текста работы

Перевод выполнил

13. Модуль сравнения (OutputCapture)

13.1. Введение

Этот раздел описываем модуль сравнения и его режимы работы. На рисунке 13-1 показано, как модуль сравнения использует таймер. Модуль сравнивает значение таймера с значением одного или двух регистров сравнения в  зависимости от режима работы модуля. Состояние на выходном выводе изменяется когда значение таймера соответствует значению в регистре сравнения. Модуль сравнения генерирует или одиночный импульс или последовательность импульсов на выходе, изменяя состояние выходного вывода в соответствии с сравниваемом событии. Данный модуль может также сгенерировать прерывание, основанное на событии сравнения.

Ниже приведены режимы работы, в которых может работать модуль сравнения:

- Режим одиночного переключения с активным низким уровнем

- Режим одиночного переключения с активным высоким уровнем

- Режим переключения

- Режим одиночного импульса

- Режим непрерывных импульсов

- ШИМ режим без защиты от ошибки

- ШИМ режим с защитой от ошибки

Примечание

 1:Каждое исполнение dsPIC33F может иметь один или более модулей сравнения. Каждый модуль сравнения может выбирать значение Timer2 или Timer3 для сравнения.

2:‘x’, - используется в обозначении, для того, чтобы обозначить определённый модуль сравнения (x = 1 - 8).

3:‘y’,- используется в обозначении, для того, чтобы обозначить определённый таймер (y = 2 или 3).

Рисунок 13-1. Блок схема модуля сравнения

Примечание: вывод OCFA управляется модулями OC1-OC4. Вывод OCFB управляется модулями OC5-OC8.

13.2 Регистры модуля сравнения

Каждый модуль сравнения имеет нижеперечисленные регистры:

• OCxCON: Регистр управления модулем сравнения

• OCxR: Регистр модуля сравнения

• OCxRS: Второй регистр модуля сравнения

Далее приведено описание регистра управления OCxCON

бит 15-14Не реализован: Читается как ‘0’

бит 13OCSIDL: Останавливать модуль сравнения в режиме Idle (бездействия)

1 = В данном режиме модуль необходимо остановить

0 = в режиме бездействия микроконтроллера модуль сравнения должен продолжить работу.

бит 12-5Неосуществленный: Читается как «0»

бит 4OCFLT: Флаг контроля ошибки PWM

1 = PWM условие ошибки произошло (сбрасывается аппаратно)

0 = PWM условие ошибки не произошло (этот бит используется только когда OCM <2:0> = 111)

бит 3OCTSEL: Бит выбора таймера

1 = Используется Timer3 модулем сравнения x

0 = Используется Timer2 модулем сравнения x

бит 2-0OCM <2:0>: Биты выбора режима работы модуля сравнения

111 = PWM режим с защитой от ошибки. PWM выдаётся на OCx, вывод ошибки включён

110 = PWM режим без защиты от ошибки. PWM выдаётся на OCx, вывод ошибки отключён

101 = Режим непрерывных импульсов. Настройте вывод OCx на низкий уровень, генерирует последовательность импульсов на выводе OCx

100 = Одиночный импульс – быстрый режим. Настройте вывод OCx на низкий уровень, генерируется единственный импульс на выводе OCx

011 = Режим переключения. Событие сравнения переключают значение на выводе OCx

010 = Активный высокий уровень –быстрый режим. Настройте вывод OCx на высоком уровне, случай сравнения сбрасывает состояние вывода OCx в низкий уровень

001 = Активный низкий уровень – быстрый режим. Настройте вывод OCx в вывод на низкий уровень, событие сравнения установит на выводе OCx высокий уровень

000 = Модуль сравнения отключён.

Microchip рекомендует: Если необходимо произвести изменения в регистре управления модулем сравнения, то необходимо модуль сравнения сперва отключить. После установить нужные значения, а в последнюю очередь снова включить модуль сравнения.

13.3 РАБОТА МОДУЛЯ СРАВНЕНИЯ

13.3.1 Выбор Таймера

Модуль сравнения может выбирать с каким таймером он будет связан. Или это будет Timer2 или Timer3. Таймер выбирается с помощью бита OCTSELв регистре управления модулем сравнения (OCxCON <3>).

Выбранный таймер начинает счёт с нуля и ведёт счёт пока не достигнет значения в регистре (PRy). Когда значение периода достигнуто, таймер сбрасывается и начинает счёт заново. Таймеры могут тактироваться как внутренней тактовой частотой, так и из вне импульсами, приходящими на вывод TxCK.

13.3.2 Режимы работы модуля сравнения

Для выбора определённого режима работы модуля сравнения используются биты (OCM <2:0>) регистра управления (OCxCON <2:0>). Таблица 13-1 показывает список различных режимов работы модуля сравнения. Рисунок 13-2 показывает работу модуля сравнения для различных режимов

Похожие материалы

Информация о работе

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.