主要用来输出PWM波形。
输出比较简介
•OC(Output Compare)输出比较
•输出比较可以通过比较CNT(计数器)与CCR(捕获/比较寄存器,输入捕获和输出比较共用)寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率和占空比的PWM波形
•每个高级定时器和通用定时器都拥有4个输出比较通道
•高级定时器的前3个通道额外拥有死区生成和互补输出的功能
PWM简介
•PWM(Pulse Width Modulation)脉冲宽度调制
•在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用于电机控速等领域
•PWM参数:
频率 = 1 / TS
占空比 = TON / TS
分辨率 = 占空比变化步距
占空比越大,等效电压越趋近于高电平;占空比越小,等效电压越趋近于低电平。
输出比较通道(通用)

左侧是CNT计数器和CCR1第一路捕获/比较寄存器,进行比较。
当CNT>CCR1或者CNT=CCR1时,就会给输出模式控制器传一个信号,然后输出模式控制器会改变它的输出OC1REF的高低电平(参考信号的高低电平)。
REF信号可以前往主模式控制器,可以映射到主模式的TRGO输出上去。
也可以到达极性选择,选择是否把高低电平反转,到输出使能电路,选择要不要输出。
输出比较通道(高级)

输出比较模式
| 模式 | 描述 |
|---|---|
| 冻结 | CNT=CCR时,REF保持为原状态 |
| 匹配时置有效电平 | CNT=CCR时,REF置有效电平(置高电平) |
| 匹配时置无效电平 | CNT=CCR时,REF置无效电平(置低电平) |
| 匹配时电平翻转 | CNT=CCR时,REF电平翻转,可以输出频率可调,占空比为50%的PWM |
| 强制为无效电平 | CNT与CCR无效,REF强制为无效电平(置低电平),暂停波形输出,暂停期间保持低电平 |
| 强制为有效电平 | CNT与CCR无效,REF强制为有效电平(置高电平),暂停波形输出,暂停期间保持高电平 |
| PWM模式1 | 向上计数:CNT<CCR时,REF置有效电平,CNT≥CCR时,REF置无效电平 向下计数:CNT>CCR时,REF置无效电平,CNT≤CCR时,REF置有效电平 |
| PWM模式2 | 向上计数:CNT<CCR时,REF置无效电平,CNT≥CCR时,REF置有效电平 向下计数:CNT>CCR时,REF置有效电平,CNT≤CCR时,REF置无效电平 |
PWM的基本结构

参数计算
•PWM频率: Freq = CK_PSC / (PSC + 1) / (ARR + 1)
•PWM占空比: Duty = CCR / (ARR + 1)
•PWM分辨率: Reso = 1 / (ARR + 1)