Микропроцессоры и микроконтроллеры

 
 
 
«Человеку свойственно ошибаться, но для нечеловеческих ошибок нужен компьютер»
Русский | Українська


Микропроцессоры и микроконтроллеры :: Каналы ввода-вывода на основе МК51 :: Принципы аппаратной реализации выходных ШИМ-сигналов

Принципы аппаратной реализации выходных ШИМ-сигналов

Для управления исполнительными устройствами, особенно двигателями постоянного тока, широко используются ШИМ-сигналы. Формировать такие сигналы можно аппаратными средствами:

·        построением внешних схем ШИМ-формирователей на основе двоичного кода;

·        использованием аппаратных ШИМ-генераторов в составе микроконтроллеров; например, в микроконтроллерах AVR для этого используются таймеры.

Подавляющее большинство микроконтроллеров семейства MCS-51 не имеют встроенных ШИМ-генераторов. Поэтому приходится строить внешние схемы и подключать их к портам МК (это может потребоваться и для МК AVR, если таймеры заняты для других задач).

Функциональная схема одного из возможных вариантов внешнего ШИМ-формирователя представлена на рис. 23.1. Генератор G формирует непрерывную последовательность импульсов с частотой FG. Эти импульсы подсчитываются счетчиком Ст разрядностью NC. Состояние счетчика (код СС) дискретно линейно изменяется от 0 до . В качестве формирователя ШИМ применен цифровой многоразрядный компаратор. Группа входов А принимает двоичный код от МК – СМК, соответствующий величине управления, а группа В – двоичный код от счетчика СС. Разрядность компаратора также равна NC.

Структура внешнего ШИМ-генератора

Рис. 23.1 Структура внешнего ШИМ-генератора

Если СМК > СС , то выход компаратора Out = 1,

если СМК < СС , то выход компаратора Out = 0.

Разрядность счетчика NC и выходного кода от МК NМК должны совпадать.

Частота формируемого ШИМ-сигнала , а период

Точность формирования управления составляет

Для программной реализации формирование ШИМ состоит в выдаче управляющего кода СМК в порт или порты, подключенные к внешнему ШИМ-генератору.

В качестве источника импульсов для счетчика Ст можно использовать даже выходные импульсы ALE, формируемые микроконтроллером. Их частота составит
FG = FALE= FТ /6, где FТ – тактовая частота микроконтроллера.