111
новки) регистра OCnx вместе со сбросом счетчика (переход с верхнего предела
на нижний предел).
Запись предельных значений в регистр OCRnx связана с особыми слу-
чаями в генерации ШИМ-импульсов. Если OCRnx установить равным нижнему
пределу (0×0000), то на выходе будет возникать короткий импульс каждый
(ВП+1)-ый такт синхронизации таймера. Запись в OCRnx значения равного
верхнему
пределу приведет к установке постоянного уровня лог. 1 или 0 на вы-
ходе (зависит от выбранной с помощью бит COMnx1: 0 полярности выходного
сигнала).
Если требуется генерация меандра (прямоугольные импульсы со скваж-
ностью 2 или заполнением 50%) высокой частоты, то необходимо использовать
режим быстрой ШИМ с установкой бит COMnA1:0 = 0b01, которая вызывает
переключение (инвертирование) логического уровня на выходе OCnA при
каж-
дом совпадении. Данное применимо в том случае, если OCRnA используется
для задания верхнего предела (WGMn3-0 = 0b1111). Максимальная генерируе-
мая частота меандра в этом случае fOCnA = fclk_I/O/2, если OCRnA = 0×0000.
Данная особенность аналогична переключению OCnA в режиме СТС за исклю-
чением двойной буферизации, которая имеется в режиме быстрой ШИМ.
Режим широтно-импульсной модуляции с фазовой коррекцией. Ре-
жим
широтно-импульсной модуляции с фазовой коррекцией (ШИМ ФК)
(WGMn3-0 = 0b0001, 0b010, 0b0011, 0b1010 или 0b1011) предназначен для ге-
нерации ШИМ сигнала с фазовой коррекцией и высокой разрешающей способ-
ностью. Режим ШИМ ФК основан на двунаправленной работе таймера-
счетчика. Счетчик циклически выполняет счет в направлении от нижнего пре-
дела (0x0000) до верхнего предела, а затем обратно от верхнего
предела к ниж-
нему пределу. Если задан неинвертирующий режим выхода формирователя им-
пульсов, то выход OCnx сбрасывается/устанавливается при совпадении значе-
ний TCNTn и OCRnx во время прямого/обратного счета. Если задан инверти-
рующий режим выхода, то, наоборот, во время прямого счета происходит уста-
новка, а во время обратного – сброс выхода OCnx. При двунаправленной работе
максимальная частота ШИМ-сигнала меньше, чем при однонаправленной рабо-
те, однако, за счет такой особенности, как симметричность в режимах ШИМ с
двунаправленной работой, данные режимы предпочитают использовать при
решении задач управления приводами.
Разрешающая способность ШИМ в данном режиме может быть либо
фиксированной (8, 9 или 10 разрядов), либо задаваться с помощью регистра
ICRn или
OCRnA. Минимальная разрешающая способность равна 2-м разрядам
(ICRn или OCRnA = 0x0003), а максимальная – 16-ти разрядам (ICRn или
OCRnA =0xFFFF). Если задан верхний предел, то разрешающая способность
ШИМ в данном режиме определяется следующим образом:
В режиме ШИМ ФК счетчик инкрементируется пока не достигнет одного
из фиксированных значений 0x00FF, 0x01FF или 0x03FF (соответственно для
WGMn3-0 = 0b0001, 0b0010 или 0b0011), а также значения равного ICRn (если
WGMn3-0 = 0b1010)
или OCRnA (если WGMn3:0 = 0b1011). Далее, при дости-