14.2 捕捉/比较通道TIM1具有4个独立的通道每个通道都可以配置成输入捕捉、输出比较、PWM或单脉冲输出功能。其中3个通道具有互补输出功能当启用了互补输出后可以设定死区时间控制功能。14.2.1 捕捉/比较通道结构每一个捕捉/比较通道都包括一个捕捉/比较寄存器TIM1_CCRx包含影子寄存器、一个捕捉输入部分数字滤波、多路复用和预分频器和一个输出部分比较器和输出控制。其中输入部分用于采样相应的TIx输入信号并产生一个滤波后的信号TIxF。然后一个带极性选择的边沿检测器依据检测结果生成TIxFPx信号用于从模式控制器的输入触发或捕捉控制该信号被预分频后进入捕捉寄存器ICxPS。捕捉/比较通道1的输入部分如图14-13所示。捕捉/比较寄存器TIM1_CCRx由捕捉比较预装载寄存器和捕捉比较影子寄存器组成对TIM1_CCRx寄存器的读写过程仅操作预装载寄存器。在捕捉模式下当一个有效的捕捉事件发生时计数器的值复制到影子寄存器上然后再复制到预装载寄存器中。在比较模式下预装载寄存器的内容被复制到影子寄存器中然后影子寄存器的内容和计数器进行比较。捕捉/比较通道的寄存器部分如图14-14所示。捕捉/比较通道的输出部分产生一个中间波形OCxRef高电平为有效电平OCxRef作为末极输出的基准信号最终输出信号的极性还取决于相关寄存器的设置。捕捉/比较通道的输出部分如图14-15和图14-16所示。14.2.2 输入捕捉模式在输入捕捉模式下当检测到ICx信号上有相应的边沿跳变时计数器的当前值被锁存到捕捉/比较寄存器TIM1_CCRx中。当发生了捕捉事件时TIM1_SR寄存器的CCxIF标志被置1如果开启了中断或DMA则产生中断或DMA请求。如果在发生捕捉事件时CCxIF标志已经置1那么TIM1_SR寄存器上的重复捕捉标志CCxOF将被置1。软件对CCxIF写0或对TIM1_CCRx寄存器的读操作可以清除CCxIF标志软件对CCxOF写0可清除该标志。编程向导 配置TI1输入捕捉要在TI1输入信号的上升沿捕捉计数器的值到TIM1_CCR1寄存器中可以参考以下步骤1编程TIM1_CCR1寄存器的“CC1S01”通道被配置为输入TI1链接到TIM1_CCR1并且TIM1_CCR1寄存器变为只读。2编程TIM1_CCMRx寄存器中的ICxF位配置输入滤波器的带宽。例如假设输入信号在最多5个内部时钟周期的时间内抖动可以配置滤波器的带宽长于5个时钟周期即以fDTS频率采样且连续采样8次以确认在TI1上一次新的边沿变换即在TIM1_CCMR1寄存器中写入IC1F0011。3编程TIM1_CCER寄存器的CC1P和CC1NP位选择TI1通道的有效转换边沿。本例中为上升沿因此CC1P0、CC1NP0。4编程TIM1_CCMR1寄存器“IC1PS00”禁用输入预分频器。5编程TIM1_CCER寄存器的CC1E1允许捕捉计数器的值到捕捉寄存器中。6如果需要可以设置TIM1_DIER寄存器的CC1IE位和CC1DE位使能中断或DMA请求。7将TIM1_CR1寄存器的CEN位置1使能计数器。当上述步骤设置完成后在TI1输入端产生有效的电平转换时计数器的值被锁存到TIM1_CCR1寄存器中并且CC1IF标志被置1。如设置了CC1IE或CC1DE位还会产生中断或DMA请求。14.2.3 PWM输入模式PWM输入模式是捕捉模式的一个特例用于测量PWM信号的周期和占空比。它将捕捉功能与定时器从模式控制功能相结合将同一个输入通道产生的信号分别用于两个通道的捕捉一个通道捕捉上升沿一个通道捕捉下降沿。同时输入通道的信号还用于定时器的复位以清除上一次的计数值。编程向导 测量PWM信号的周期和占空比如果要测量输入到TI1上PWM信号的周期保存在TIM1_CCR1寄存器和占空比保存在TIM1_CCR2寄存器可以采用以下步骤1编程TIM1_CCMR1寄存器的CC1S01将TI1配置为TIM1_CCR1的输入端。2编程TIM1_CCER寄存器的CC1P0选择TI1FP1的有效极性为上升沿用来捕捉数据到TIM1_CCR1寄存器并清除计数器。3编程TIM1_CCMR1寄存器的CC2S10将TI1同样配置为TIM1_CCR2的输入端。4编程TIM1_CCER寄存器的CC2P1选择TI1FP2的有效极性为下降沿用来捕捉数据到TIM1_CCR2。5编程TIM1_SMCR寄存器的TS101选择TI1FP1为定时器有效的触发输入信号。6编程TIM1_SMCR寄存器的SMS100配置从模式控制器为复位模式。7将TIM1_CCER寄存器的CC1E和CC2E位置1使能捕捉功能。8将TIM1_CR1寄存器的CEN位置1使能计数器。通过TI1测量PWM信号的周期和占空比的PWM输入模式时序如图14-17所示。14.2.4 强制输出模式在通道被配置成输出模式TIM1_CCMRx寄存器的CCxS00时输出比较信号OCxREF以及相应的OCx/OCxN信号能够直接由软件强制为有效或无效状态而不依赖于输出比较寄存器和计数器之间的比较结果。设置TIM1_CCMRx寄存器OCxM101可以将输出比较信号OCxREF/OCx强制为有效状态OCxREF被强制为高电平如果此时TIM1_CCER寄存器CCxP0OCx为高电平有效那么OCx被强制为高电平。同样如果设置TIM1_CCMRx寄存器的OCxM100可强制OCxREF信号为低电平后续输出端的动作与上述例子相反。在强制输出模式下TIM1_CCRx影子寄存器和计数器之间的比较仍然在进行相应的标志也会被修改中断和DMA请求也仍然会产生。14.2.5 输出比较模式输出比较功能用来产生一个输出波形也用来指示一段给定的时间已经到达。输出比较模式寄存器TIM1_CCMRx的OCxM位用于定义比较匹配时输出引脚的动作。当比较匹配时输出引脚可以保持它的电平OCxM000、设置为有效电平OCxM001、设置为无效电平OCxM010或进行电平翻转OCxM011。捕捉/比较使能寄存器TIM1_CCER的CCxP位用于定义的输出到对应的引脚上的电平值。当匹配发生时中断状态寄存器TIM1_SR的CCxIF位会置1如果TIM1_DIER寄存器中的CCxIE位也置1则会产生一个中断。如果软件对TIM1_DIER寄存器的CCxDE位和TIM1_CR2寄存器的CCDS位进行了相应设定并使能了DMA则会产生一个DMA请求。TIM1_CCMRx寄存器的OCxPE位用于选择是否启用预装载功能。如果禁用了TIM1_CCRx寄存器的预装载功能OCxPE0可以随时写入TIM1_CCRx寄存器并且写入的新值会立即参与比较如果启用了预装载功能OCxPE1TIM1_CCRx寄存器的预装载值会在下一个更新事件UEV到来时生效。编程向导 输出比较模式的配置1选择计数器时钟内部、外部及设置预分频比。2将相应的数值写入TIM1_ARR和TIM1_CCRx寄存器中。3如果要产生一个中断请求设置CCxIE位。4选择输出模式·如果需要计数器与CCRx匹配时翻转OCx的输出引脚则设置OCxM011。·置OCxPE0禁用预装载功能。·置CCxP0选择极性为高电平有效。·置CCxE1使能输出。5设置TIM1_CR1寄存器的CEN位启动计数器。输出比较模式的工作时序示例如图14-18所示。图中该模式设置为比较匹配时输出翻转当计数器TIM1_CNT的值达到“003Ah”时与比较值TIM1_CCR1的值相匹配OC1输出电平翻转之后软件写入“B201h”至TIM1_CCR1中由于该寄存器的预装载功能被禁用写入的新值立即参与比较并在下一次达到比较匹配时将OC1的输出电平再次翻转。14.2.6 PWM模式脉冲宽度调制PWM模式可以产生一个由TIM1_ARR寄存器决定频率、由TIM1_CCRx寄存器决定占空比的输出信号。通过将TIM1_CCMRx寄存器的OCxM位域写入“110”或“111”可以使能PWM模式1或2。在PWM模式下TIM1_CNT和TIM1_CCRx始终在进行比较根据TIM1_CR1寄存器中CMS位域的状态定时器能够产生边沿对齐或中央对齐的PWM信号每个OCx输出通道都能够独立地输出一路PWM信号。要使用PWM模式必须设置TIM1_CCMRx寄存器的OCxPE位使能相应的预装载寄存器还要设置TIM1_CR1寄存器的ARPE位以使能自动重装载寄存器的预装载功能。在完成上述设置后只有当更新事件UEV产生时预装载寄存器的内容才能被传送到其影子寄存器中。为了初始化设置在计数器开始计数之前必须通过软件设置TIM1_EGR寄存器中的UG位来更新具有预装载功能的寄存器。OCx的极性可以通过软件在TIM1_CCER寄存器的CCxP位设置输出状态可以通过CCxE、CcxNE以及TIM1_BDTR寄存器的MOE、OSSI和OSSR位的组合来控制。1.PWM边沿对齐模式·向上计数配置当TIM1_CR1寄存器中的DIR位为0时计数器执行向上计数。在PWM模式1时当TIM1_CNTTIM1_CCRx时PWM参考信号OCxREF为高电平否则为低电平。如果TIM1_CCRx中的比较值大于自动重装载值TIM1_ARR则OCxREF保持为高。如果TIM1_CCRx中的比较值为0则OCxREF保持为低。当TIM1_ARR8、CCRx为不同取值时边沿对齐的PWM输出波形如图14-19所示。·向下计数配置当TIM1_CR1寄存器的DIR位为1时计数器执行向下计数。在PWM模式1时当TIM1_CNTTIM1_CCRx时参考信号OCxREF为低电平否则为高电平。如果TIM1_CCRx中的比较值大于TIM1_ARR中的自动重装载值则OCxREF保持为高。向下计数模式下不能产生占空比为0的PWM波形。2.PWM中央对齐模式当TIM1_CR1寄存器中的CMS位域不为“00”时PWM设置为中央对齐模式。按照CMS位域的设置不同比较标志位可以在计数器向上、向下或向上和向下计数时被置1。在此模式下TIM1_CR1寄存器的方向位DIR由硬件更新无须软件干预。当TIM1_ARR8、CMS01时PWM模式1的输出波形如图14-20所示。在进入中央对齐模式时计数开始的方向取决于TIM1_CR1寄存器DIR位的当前值软件不能同时修改DIR和CMS位。使用中央对齐模式时在启动计数器之前需要软件产生一个更新事件设置UG位以初始化各寄存器在计数进行过程中禁止软件修改计数器的值。14.2.7 互补输出和死区控制1.互补输出TIM1的OC1、OC2和OC3通道都具有互补输出功能每一个通道都能够输出两路互补的PWM信号用于驱动功率器件的开启和关断。TIM1_CCER寄存器的CCxE和CCxNE位用于使能主输出OCx和互补输出OCxN。CCxP和CCxNP位用于配置OCx和OCxN的输出极性TIM1_BDTR寄存器的MOE位是主输出控制用于使能OCx和OCxN的输出。OSSR位和OSSI位分别用于定义主输出使能或禁止且定时器停止工作时的互补输出状态。TIM1_CR2寄存器的OISx、OISxN位用于定义主输出禁止MOE0时互补通道的输出状态。互补输出通道的控制位功能详见表14-2。表14-2 互补输出通道OCx和OCxN的控制2.死区控制在使用互补通道驱动功率器件时为了避免通道接通和关断的瞬间产生大电流冲击在通道电平转换的初期加入了适当的延时以允许根据OCx和OCxN输出端所连接的输出器件特性来调整死区时间特性。当TIM1_CCER寄存器的CCxE和CCxNE位均为1时将自动插入死区。每一个通道的OCxREF参考信号可以生成OCx和OCxN两路输出如果OCx和OCxN均设置为高电平有效当死区插入时OCx输出信号与OCxREF参考信号相同但上升沿相对于参考信号的上升沿有一个延迟而OCxN输出信号与参考信号相反上升沿相对于参考信号的下降沿有一个延迟。插入死区时参考信号与互补输出信号的相位关系如图14-21所示。定时器每一个通道的死区延时时间都是相同的都由TIM1_BDTR寄存器中的DTG位域进行配置。死区时间的计算基于定时器采样时钟“TDTS”该时钟由定时器时钟CK_INT经TIM1_CR1寄存器的CKD[10]位域定义的分频器分频而来。死区时间的计算可以参考以下方法当DTG[75]0xx时死区时间DTG[70]×TdtgTdtgTDTS当DTG[75]10x时死区时间(64DTG[50])×TdtgTdtg2×TDTS当DTG[75]110时死区时间(32DTG[40])×TdtgTdtg8×TDTS当DTG[75]111时死区时间(32DTG[40])×TdtgTdtg16×TDTS如果配置的死区延时时间大于当前有效的输出宽度OCx或者OCxN则相应的通道上不会产生输出脉冲。死区延时时间大于正、负脉冲持续时间时通道输出状态如图14-22和图14-23所示。
STM32F0实战:基于HAL库开发【3.0】
14.2 捕捉/比较通道TIM1具有4个独立的通道每个通道都可以配置成输入捕捉、输出比较、PWM或单脉冲输出功能。其中3个通道具有互补输出功能当启用了互补输出后可以设定死区时间控制功能。14.2.1 捕捉/比较通道结构每一个捕捉/比较通道都包括一个捕捉/比较寄存器TIM1_CCRx包含影子寄存器、一个捕捉输入部分数字滤波、多路复用和预分频器和一个输出部分比较器和输出控制。其中输入部分用于采样相应的TIx输入信号并产生一个滤波后的信号TIxF。然后一个带极性选择的边沿检测器依据检测结果生成TIxFPx信号用于从模式控制器的输入触发或捕捉控制该信号被预分频后进入捕捉寄存器ICxPS。捕捉/比较通道1的输入部分如图14-13所示。捕捉/比较寄存器TIM1_CCRx由捕捉比较预装载寄存器和捕捉比较影子寄存器组成对TIM1_CCRx寄存器的读写过程仅操作预装载寄存器。在捕捉模式下当一个有效的捕捉事件发生时计数器的值复制到影子寄存器上然后再复制到预装载寄存器中。在比较模式下预装载寄存器的内容被复制到影子寄存器中然后影子寄存器的内容和计数器进行比较。捕捉/比较通道的寄存器部分如图14-14所示。捕捉/比较通道的输出部分产生一个中间波形OCxRef高电平为有效电平OCxRef作为末极输出的基准信号最终输出信号的极性还取决于相关寄存器的设置。捕捉/比较通道的输出部分如图14-15和图14-16所示。14.2.2 输入捕捉模式在输入捕捉模式下当检测到ICx信号上有相应的边沿跳变时计数器的当前值被锁存到捕捉/比较寄存器TIM1_CCRx中。当发生了捕捉事件时TIM1_SR寄存器的CCxIF标志被置1如果开启了中断或DMA则产生中断或DMA请求。如果在发生捕捉事件时CCxIF标志已经置1那么TIM1_SR寄存器上的重复捕捉标志CCxOF将被置1。软件对CCxIF写0或对TIM1_CCRx寄存器的读操作可以清除CCxIF标志软件对CCxOF写0可清除该标志。编程向导 配置TI1输入捕捉要在TI1输入信号的上升沿捕捉计数器的值到TIM1_CCR1寄存器中可以参考以下步骤1编程TIM1_CCR1寄存器的“CC1S01”通道被配置为输入TI1链接到TIM1_CCR1并且TIM1_CCR1寄存器变为只读。2编程TIM1_CCMRx寄存器中的ICxF位配置输入滤波器的带宽。例如假设输入信号在最多5个内部时钟周期的时间内抖动可以配置滤波器的带宽长于5个时钟周期即以fDTS频率采样且连续采样8次以确认在TI1上一次新的边沿变换即在TIM1_CCMR1寄存器中写入IC1F0011。3编程TIM1_CCER寄存器的CC1P和CC1NP位选择TI1通道的有效转换边沿。本例中为上升沿因此CC1P0、CC1NP0。4编程TIM1_CCMR1寄存器“IC1PS00”禁用输入预分频器。5编程TIM1_CCER寄存器的CC1E1允许捕捉计数器的值到捕捉寄存器中。6如果需要可以设置TIM1_DIER寄存器的CC1IE位和CC1DE位使能中断或DMA请求。7将TIM1_CR1寄存器的CEN位置1使能计数器。当上述步骤设置完成后在TI1输入端产生有效的电平转换时计数器的值被锁存到TIM1_CCR1寄存器中并且CC1IF标志被置1。如设置了CC1IE或CC1DE位还会产生中断或DMA请求。14.2.3 PWM输入模式PWM输入模式是捕捉模式的一个特例用于测量PWM信号的周期和占空比。它将捕捉功能与定时器从模式控制功能相结合将同一个输入通道产生的信号分别用于两个通道的捕捉一个通道捕捉上升沿一个通道捕捉下降沿。同时输入通道的信号还用于定时器的复位以清除上一次的计数值。编程向导 测量PWM信号的周期和占空比如果要测量输入到TI1上PWM信号的周期保存在TIM1_CCR1寄存器和占空比保存在TIM1_CCR2寄存器可以采用以下步骤1编程TIM1_CCMR1寄存器的CC1S01将TI1配置为TIM1_CCR1的输入端。2编程TIM1_CCER寄存器的CC1P0选择TI1FP1的有效极性为上升沿用来捕捉数据到TIM1_CCR1寄存器并清除计数器。3编程TIM1_CCMR1寄存器的CC2S10将TI1同样配置为TIM1_CCR2的输入端。4编程TIM1_CCER寄存器的CC2P1选择TI1FP2的有效极性为下降沿用来捕捉数据到TIM1_CCR2。5编程TIM1_SMCR寄存器的TS101选择TI1FP1为定时器有效的触发输入信号。6编程TIM1_SMCR寄存器的SMS100配置从模式控制器为复位模式。7将TIM1_CCER寄存器的CC1E和CC2E位置1使能捕捉功能。8将TIM1_CR1寄存器的CEN位置1使能计数器。通过TI1测量PWM信号的周期和占空比的PWM输入模式时序如图14-17所示。14.2.4 强制输出模式在通道被配置成输出模式TIM1_CCMRx寄存器的CCxS00时输出比较信号OCxREF以及相应的OCx/OCxN信号能够直接由软件强制为有效或无效状态而不依赖于输出比较寄存器和计数器之间的比较结果。设置TIM1_CCMRx寄存器OCxM101可以将输出比较信号OCxREF/OCx强制为有效状态OCxREF被强制为高电平如果此时TIM1_CCER寄存器CCxP0OCx为高电平有效那么OCx被强制为高电平。同样如果设置TIM1_CCMRx寄存器的OCxM100可强制OCxREF信号为低电平后续输出端的动作与上述例子相反。在强制输出模式下TIM1_CCRx影子寄存器和计数器之间的比较仍然在进行相应的标志也会被修改中断和DMA请求也仍然会产生。14.2.5 输出比较模式输出比较功能用来产生一个输出波形也用来指示一段给定的时间已经到达。输出比较模式寄存器TIM1_CCMRx的OCxM位用于定义比较匹配时输出引脚的动作。当比较匹配时输出引脚可以保持它的电平OCxM000、设置为有效电平OCxM001、设置为无效电平OCxM010或进行电平翻转OCxM011。捕捉/比较使能寄存器TIM1_CCER的CCxP位用于定义的输出到对应的引脚上的电平值。当匹配发生时中断状态寄存器TIM1_SR的CCxIF位会置1如果TIM1_DIER寄存器中的CCxIE位也置1则会产生一个中断。如果软件对TIM1_DIER寄存器的CCxDE位和TIM1_CR2寄存器的CCDS位进行了相应设定并使能了DMA则会产生一个DMA请求。TIM1_CCMRx寄存器的OCxPE位用于选择是否启用预装载功能。如果禁用了TIM1_CCRx寄存器的预装载功能OCxPE0可以随时写入TIM1_CCRx寄存器并且写入的新值会立即参与比较如果启用了预装载功能OCxPE1TIM1_CCRx寄存器的预装载值会在下一个更新事件UEV到来时生效。编程向导 输出比较模式的配置1选择计数器时钟内部、外部及设置预分频比。2将相应的数值写入TIM1_ARR和TIM1_CCRx寄存器中。3如果要产生一个中断请求设置CCxIE位。4选择输出模式·如果需要计数器与CCRx匹配时翻转OCx的输出引脚则设置OCxM011。·置OCxPE0禁用预装载功能。·置CCxP0选择极性为高电平有效。·置CCxE1使能输出。5设置TIM1_CR1寄存器的CEN位启动计数器。输出比较模式的工作时序示例如图14-18所示。图中该模式设置为比较匹配时输出翻转当计数器TIM1_CNT的值达到“003Ah”时与比较值TIM1_CCR1的值相匹配OC1输出电平翻转之后软件写入“B201h”至TIM1_CCR1中由于该寄存器的预装载功能被禁用写入的新值立即参与比较并在下一次达到比较匹配时将OC1的输出电平再次翻转。14.2.6 PWM模式脉冲宽度调制PWM模式可以产生一个由TIM1_ARR寄存器决定频率、由TIM1_CCRx寄存器决定占空比的输出信号。通过将TIM1_CCMRx寄存器的OCxM位域写入“110”或“111”可以使能PWM模式1或2。在PWM模式下TIM1_CNT和TIM1_CCRx始终在进行比较根据TIM1_CR1寄存器中CMS位域的状态定时器能够产生边沿对齐或中央对齐的PWM信号每个OCx输出通道都能够独立地输出一路PWM信号。要使用PWM模式必须设置TIM1_CCMRx寄存器的OCxPE位使能相应的预装载寄存器还要设置TIM1_CR1寄存器的ARPE位以使能自动重装载寄存器的预装载功能。在完成上述设置后只有当更新事件UEV产生时预装载寄存器的内容才能被传送到其影子寄存器中。为了初始化设置在计数器开始计数之前必须通过软件设置TIM1_EGR寄存器中的UG位来更新具有预装载功能的寄存器。OCx的极性可以通过软件在TIM1_CCER寄存器的CCxP位设置输出状态可以通过CCxE、CcxNE以及TIM1_BDTR寄存器的MOE、OSSI和OSSR位的组合来控制。1.PWM边沿对齐模式·向上计数配置当TIM1_CR1寄存器中的DIR位为0时计数器执行向上计数。在PWM模式1时当TIM1_CNTTIM1_CCRx时PWM参考信号OCxREF为高电平否则为低电平。如果TIM1_CCRx中的比较值大于自动重装载值TIM1_ARR则OCxREF保持为高。如果TIM1_CCRx中的比较值为0则OCxREF保持为低。当TIM1_ARR8、CCRx为不同取值时边沿对齐的PWM输出波形如图14-19所示。·向下计数配置当TIM1_CR1寄存器的DIR位为1时计数器执行向下计数。在PWM模式1时当TIM1_CNTTIM1_CCRx时参考信号OCxREF为低电平否则为高电平。如果TIM1_CCRx中的比较值大于TIM1_ARR中的自动重装载值则OCxREF保持为高。向下计数模式下不能产生占空比为0的PWM波形。2.PWM中央对齐模式当TIM1_CR1寄存器中的CMS位域不为“00”时PWM设置为中央对齐模式。按照CMS位域的设置不同比较标志位可以在计数器向上、向下或向上和向下计数时被置1。在此模式下TIM1_CR1寄存器的方向位DIR由硬件更新无须软件干预。当TIM1_ARR8、CMS01时PWM模式1的输出波形如图14-20所示。在进入中央对齐模式时计数开始的方向取决于TIM1_CR1寄存器DIR位的当前值软件不能同时修改DIR和CMS位。使用中央对齐模式时在启动计数器之前需要软件产生一个更新事件设置UG位以初始化各寄存器在计数进行过程中禁止软件修改计数器的值。14.2.7 互补输出和死区控制1.互补输出TIM1的OC1、OC2和OC3通道都具有互补输出功能每一个通道都能够输出两路互补的PWM信号用于驱动功率器件的开启和关断。TIM1_CCER寄存器的CCxE和CCxNE位用于使能主输出OCx和互补输出OCxN。CCxP和CCxNP位用于配置OCx和OCxN的输出极性TIM1_BDTR寄存器的MOE位是主输出控制用于使能OCx和OCxN的输出。OSSR位和OSSI位分别用于定义主输出使能或禁止且定时器停止工作时的互补输出状态。TIM1_CR2寄存器的OISx、OISxN位用于定义主输出禁止MOE0时互补通道的输出状态。互补输出通道的控制位功能详见表14-2。表14-2 互补输出通道OCx和OCxN的控制2.死区控制在使用互补通道驱动功率器件时为了避免通道接通和关断的瞬间产生大电流冲击在通道电平转换的初期加入了适当的延时以允许根据OCx和OCxN输出端所连接的输出器件特性来调整死区时间特性。当TIM1_CCER寄存器的CCxE和CCxNE位均为1时将自动插入死区。每一个通道的OCxREF参考信号可以生成OCx和OCxN两路输出如果OCx和OCxN均设置为高电平有效当死区插入时OCx输出信号与OCxREF参考信号相同但上升沿相对于参考信号的上升沿有一个延迟而OCxN输出信号与参考信号相反上升沿相对于参考信号的下降沿有一个延迟。插入死区时参考信号与互补输出信号的相位关系如图14-21所示。定时器每一个通道的死区延时时间都是相同的都由TIM1_BDTR寄存器中的DTG位域进行配置。死区时间的计算基于定时器采样时钟“TDTS”该时钟由定时器时钟CK_INT经TIM1_CR1寄存器的CKD[10]位域定义的分频器分频而来。死区时间的计算可以参考以下方法当DTG[75]0xx时死区时间DTG[70]×TdtgTdtgTDTS当DTG[75]10x时死区时间(64DTG[50])×TdtgTdtg2×TDTS当DTG[75]110时死区时间(32DTG[40])×TdtgTdtg8×TDTS当DTG[75]111时死区时间(32DTG[40])×TdtgTdtg16×TDTS如果配置的死区延时时间大于当前有效的输出宽度OCx或者OCxN则相应的通道上不会产生输出脉冲。死区延时时间大于正、负脉冲持续时间时通道输出状态如图14-22和图14-23所示。