Сравнение на выходе (Output compare)
Функция таймера, которая сравнивает счётчик с регистром и при совпадении меняет состояние вывода или вызывает прерывание — без участия процессора.
Аппаратный таймер увеличивает счётчик на каждом такте. Output compare добавляет рядом регистр сравнения: когда счётчик достигает этого значения, таймер может установить, сбросить или инвертировать выходной вывод и при желании вызвать прерывание. Момент определяет компаратор в кремнии, а не то, когда обработчик прерывания случайно получит управление.
Это зеркальное отражение захвата входа (input capture); обычно они делят канал и регистр (CCR в STM32). Одно совпадение за период переключает вывод, а переполнение счётчика переключает обратно — это, по сути, и есть ШИМ. Тот же механизм управляет шаговыми двигателями, формирует импульсы для сервоприводов и задаёт моменты выборок АЦП. Кто пробовал делать то же через GPIO и цикл задержки, быстро узнаёт, что такое джиттер.