Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

424 Микроконтроллеры AVR от азов программирования... Если в регистр OCROA записать значение МАХ, то это приведет к тому, что на выходе будет постоянно присутствовать либо высокий, либо низ ­ кой логический уровень (в зависимости от значения битов СОМ0А1:0). Частота выходного сигнала в режиме fast PWM (при уровне регулирова ­ ния 50 %) может быть достигнута, если заставить регистр ОСОх переклю ­ чать свой логический уровень при каждом совпадении (СОМ0х1:0 =1). Сформированный таким образом сигнал будет иметь максимальную частоту f oco = f dk 1/о /2 в том случае, когда в регистр OCROA записан ноль. Эта особенность позволяет переключать регистр ОСОА таким же обра ­ зом, как в режиме СТС, но при этом использовать все преимущества двойной буферизации, которая применяется в режиме fast PWM. ШИМ, корректный по фазе (Phase Correct PWM) Режим phase correct PWM (WGM02:0 = 1 или 5). Формирование сиг ­ нала ШИМ происходит с большим коэффициентом пересчета и коррект ­ ного по фазе. Корректность по фазе обеспечивается благодаря работе счетчика в режиме пилообразного сигнала с двухсторонним наклоном. Счетчик периодически изменяет направление своего счета. Сначала он считает от BOTTOM до ТОР, затем направление счета меняется, и счетчик считает ТОР до BOTTOM. Затем направление пересчета снова меняется, и все повторяется сначала. Значение ТОР равно OxFF при WGM2:0 = 1 и определяется регистром OCROA при WGM2:0 - 5. В режиме неинвертирующего вывода сигнал на выходе ОСОх сбра ­ сывается в ноль в момент совпадения содержимого регистров TCNT0 и OCROx, если счетчик работает в прямом направлении (на увеличение). Значение устанавливается в единицу в момент совпадения, если счетчик работает на уменьшение. В режиме инвертированного вывода картина меняется на противо ­ положную. Режим двухстороннего наклона характеризуется более низ ­ кой максимальной частотой выходного сигнала по сравнению с пред ­ ыдущим случаем, где применяется пила с односторонним наклоном. Благодаря симметричности по фазе при двустороннем наклоне такие режимы предпочитаются при создании систем управления электродви ­ гателями. В режиме phase correct PWM значение счетчика увеличивается, пока не достигнет значения ТОР. Когда значение счетчика достигает ТОР, направление счета изменяется. Содержимое TCNT0 будет равно ТОР в течение одного периода тактового сигнала таймера. Флаг переполнения таймера/счетчика (TOVO) устанавливается каждый раз, когда счетчик достигает значения BOTTOM. Флаг прерывания может использоваться

RkJQdWJsaXNoZXIy MTExODQxMg==