Ранее я рассказывал о быстродействующем ШИМ, который может быть реализован с помощью таймера (то есть является одним из режимов работы таймера). Но у такого ШИМ есть один недостаток: при изменении длительности импульсов меняется и их фаза. Центр каждого импульса как бы сдвигается во времени.
Во многих случаях это не страшно. Однако, например, при управлении электродвигателем такое поведение фазы нежелательно. Поэтому в микроконтроллерах AVR предусмотрен еще один режим ШИМ. Это режим с точной фазой (Phase Correct PWM).
Тут, возможно, как в прошлый раз, кто-то обвинит меня в плохом знании английского, и, конечно, попробует как-нибудь оскорбить. Но таким ребятам я скажу, что я давно в Интернете, и на злобных троллей внимание не обращаю. Так что не тратьте своё время - проходите мимо.
Отличие режима “ШИМ с точной фазой” от режима “Быстродействующий ШИМ” заключается в режиме работы счетчика. Сначала счетчик считает так же, как и в режиме “Быстродействующий ШИМ” (от каждого входного импульса его значение увеличивается на единицу). Достигнув своего наибольшего значения, счетчик не сбрасывается в ноль, а переключается в режим реверсивного счета.
Теперь уже от каждого входного импульса содержимое счётчика уменьшается на единицу. В итоге пилообразная кривая, отображающая содержимое счетного регистра TCNTn, становится симметричной, как показано на рисунке:
Система совпадения работает так же, как и в режиме “Быстродействующий ШИМ”. Благодаря симметричности сигнала на таймере, фаза выходных импульсов в процессе регулирования скважности не изменяется. Середина каждого импульса строго привязана к точке смены направления счета таймера.
Недостатком режима “ШИМ с точной фазой” можно считать в два раза меньшую частоту выходного сигнала. Это ощутимо уменьшает скорость регулирования. Кроме того, при использовании внешних фильтров для преобразования импульсного сигнала ШИМ в аналоговый, схема с более низкой частотой потребует применения электронных компонентов с большими габаритами и массой.
На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить…