互补输出带死区控制
比如说,高级控制定时器(TIM1 和 TIM8)可以输出两路互补信号,并管理输出的关断与接通瞬间。这段时间通常称为死区,由于硬件设备的延迟和一些设备转换的用时,这时候进行操作可能会导致比如短路等的故障。用户必须根据与输出相连接的器件及其特性(电平转换器的固有延迟、开关器件产生的延迟…)来调整死区时间。
每路输出可以独立选择输出极性(主输出 OCx 或互补输出 OCxN)。可通过对 TIMx_CCER寄存器中的 CCxP 和 CCxNP 位执行写操作来完成极性选择。
比如在该信号里,由于死区控制,下面的互补输出的变化会有延时。比如在H桥电路里,不会让两边的直线电路短路导致电路烧坏,保证三极管的变化是成对且有错开的。
接下来介绍死区控制的时间的公式。fDTS=Ft/2^CKD(Ft=72M)。CKD为时钟分频因子,比如当输入CKD为00时候,则tDTS=tCK_INT;如果输入CKD为10,则tDTS=4*tCK_INT。我们一般用4分频。
接下来判断DTG[7:5],选择计算公式。计算公式如图,举例:如果输入DTG:000/001/010/011,这些都得到的是Tdtg=TDTS*1;如果输入DTG101/100得到的是Tdtg=2*TDTG。
举一个综合的例子:(以4分频为例,一般都是4分频)
DTG[7:0] = 250,即二进制的1111 1010,DT = (32 + 26) * 16 * (1 / (72M / 4)) = 51.56 us。
---------------------------------------------------------------------------
刹车断路功能
使能刹车功能:将TIMx_BDTR的BKE位置1,刹车输入小信号极性由BKP位设置。
无论何时,OCx和OCxN输入都不能同时处在有效电平。
发生刹车后,会发生:
1、MOE位被清零,OCx和OCxN为无效、空闲或复位状态(OSSI位选择)。
2、OCx和OCxN的状态:由相关控制位状态决定;
当使用互补输出时:根据情况自动控制输出电平。
3、BIF置1,如果使能BIE位,还会产生刹车中断;如果使能TDE位,会产生DMA请求。
4、如果AOE置1,在下一个更新时间UEV时,MOE自动置1。