捕获/比较模式寄存器,共有四组。
通道可用于输入(捕获模式)或输出(比较模式),通道的方向由相应的 CCnS 位定义。该寄存器其它位的作用在输入和输出模式下不同。OCxx 描述了通道在输出模式下的功能,ICxx 描述了通道在输入模式下的功能。因此必须注意,同一个位在输出模式和输入模式下的功能是不同的。
一、在通道配置为比较输出模式时:
OCnCE:输出比较 n 清零使能。该位用于使能使用 PWMETI 引脚上的外部事件来清通道 n 的输出信号(OCnREF)(n=1,5)
0:OCnREF 不受 ETRF 输入的影响;
1:一旦检测到 ETRF 输入高电平,OCnREF=0。
OCnM[2:0]:输出比较 n 模式。该 3 位定义了输出参考信号 OCnREF 的动作,而 OCnREF 决定了 OCn的值。OCnREF 是高电平有效,而 OCn 的有效电平取决于 CCnP 位。(n=1,5)
注 1:一旦 LOCK 级别设为 3(PWMn_BKR 寄存器中的 LOCK 位)并且 CCnS=00(该通道配置成输出)则该位不能被修改。
注 2:在 PWM 模式 1 或 PWM 模式 2 中,只有当比较结果改变了或在输出比较模式中从冻结模式切换到 PWM 模式时,OCnREF 电平才改变。
注 3:在有互补输出的通道上,这些位是预装载的。如果 PWMn_CR2 寄存器的 CCPC=1,OCM 位只有在 COM 事件发生时,才从预装载位取新值。
OCnPE:输出比较 n 预装载使能(n=1,5)
0:禁止 PWMn_CCR1 寄存器的预装载功能,可随时写入 PWMn_CCR1 寄存器,并且新写入的数值立即起作用。
1:开启 PWMn_CCR1 寄存器的预装载功能,读写操作仅对预装载寄存器操作,PWMn_CCR1 的预
装载值在更新事件到来时被加载至当前寄存器中。
注 1:一旦 LOCK 级别设为 3(PWMn_BKR 寄存器中的 LOCK 位)并且 CCnS=00(该通道配置成输出)则该位不能被修改。
注 2:为了操作正确,在 PWM 模式下必须使能预装载功能。但在单脉冲模式下(PWMn_CR1 寄存器的 OPM=1),它不是必须的。
OCnFE:输出比较 n 快速使能。该位用于加快 CC 输出对触发输入事件的响应。(n=1,5)
0:根据计数器与 CCRn 的值,CCn 正常操作,即使触发器是打开的。当触发器的输入有一个有效沿时,激活 CCn 输出的最小延时为 5 个时钟周期。
1:输入到触发器的有效沿的作用就象发生了一次比较匹配。因此,OC 被设置为比较电平而与比较结果无关。采样触发器的有效沿和 CC1 输出间的延时被缩短为 3 个时钟周期。OCFE 只在通道
被配置成 PWMA 或 PWMB 模式时起作用。
CC1S[1:0]:捕获/比较 1 选择。这两位定义通道的方向(输入/输出),及输入脚的选择
CC5S[1:0]:捕获/比较 5 选择。这两位定义通道的方向(输入/输出),及输入脚的选择
注:CC1S 仅在通道关闭时(PWMA_CCER1 寄存器的 CC1E=0)才是可写的。
注:CC5S 仅在通道关闭时(PWM5_CCER1 寄存器的 CC5E=0)才是可写的。
二、在通道配置为比较输入模式时:
ICnF[3:0]:输入捕获 n 滤波器选择,该位域定义了 TIn 的采样频率及数字滤波器长度。(n=1,5)
注:即使对于带互补输出的通道,该位域也是非预装载的,并且不会考虑 CCPC(PWMn_CR2 寄存器)的值
ICnPSC[1:0]:输入/捕获 n 预分频器。这两位定义了 CCn 输入(IC1)的预分频系数。(n=1,5)
00:无预分频器,捕获输入口上检测到的每一个边沿都触发一次捕获
01:每 2 个事件触发一次捕获
10:每 4 个事件触发一次捕获
11:每 8 个事件触发一次捕获
CC1S[1:0]:捕获/比较 1 选择。这两位定义通道的方向(输入/输出),及输入脚的选择
CC5S[1:0]:捕获/比较 5 选择。这两位定义通道的方向(输入/输出),及输入脚的选择
注:CC1S 仅在通道关闭时(PWMA_CCER1 寄存器的 CC1E=0)才是可写的。
注:CC5S 仅在通道关闭时(PWM5_CCER1 寄存器的 CC5E=0)才是可写的。
其它介个寄存器的说明,参照CCMR1的说明。
在例程中:
PWMB_CCMR1 = 0x60; //通道模式配置
PWMB_CCMR2 = 0x60;
PWMB_CCMR3 = 0x60;
PWMB_CCMR4 = 0x60;
即OC5CE = 0 : OCnREF 不受 ETRF 输入的影响
OC5M=110 : PWM模式1。
当PWMn_CNT<PWMn_CCR1时,OCnREF输出高,
否则OCnREF输出低
OC5PE=0 : 禁止 PWMn_CCR1 寄存器的预装载功能,
可随时写入 PWMn_CCR1 寄存器,并且新写入的数值立即起作用。
OC5FE=0 : 根据计数器与 CCRn 的值,CCn 正常操作,即使触发器是打开的。
当触发器的输入有一个有效沿时,激活 CCn 输出的最小延时为 5 个时钟周期。
CC5S=00 : 输出方向
OCnREF 不受 ETRF 输入的影响