爱随缘 发表于 2018-1-23 21:26:36

紧急求助STM8S003 TIM1高级定时器输出互补带死区方波

TIM1高级定时器输出带死区方波已经实现,但是我的设备是上下管都为高的时候,才是关闭,和正常的低电平死区不太一样,大家帮我看一下哈,谢谢了,我要实现右侧高电平死区,

wenyangzeng 发表于 2018-1-23 21:47:46

上下管占空比设相同,上管用PWM1,下管用PWM2试看看

爱随缘 发表于 2018-1-23 21:57:23

wenyangzeng 发表于 2018-1-23 21:47
上下管占空比设相同,上管用PWM1,下管用PWM2试看看

不是上下用哪个的问题,是死区插入的问题,正常死区是同时为低电平几个US,我的设备上下管死区为高几个US不知道怎么修改,用反相器可以实现,但是PCB不够了。

toofree 发表于 2018-1-23 23:21:25

可以换一种思维方式,直接就是把上面的占空比调大,下面的调小。具体调多少,自己知道是怎么回事就可以了。要想停机的话,切换到IO方式,直接置高电平。

爱随缘 发表于 2018-1-23 23:22:48

toofree 发表于 2018-1-23 23:21
可以换一种思维方式,直接就是把上面的占空比调大,下面的调小。具体调多少,自己知道是怎么回事就可以了。 ...

这个应该不行吧,因为设置好一组后,另外一组是直接反向的,

Bryan 发表于 2018-1-23 23:53:38

两个PWM设置的极性反转一下,不OK么?

爱随缘 发表于 2018-1-23 23:58:03

Bryan 发表于 2018-1-23 23:53
两个PWM设置的极性反转一下,不OK么?

这个我还没测试,按道理说应该是不行,死区插入,就是上下PWM=0,延时多少US,原理就是这样,反相器是可以的,死区为低的时候,反向出来是高的,这个测试过的

hxydj 发表于 2018-1-24 10:34:16

TIM1_CCER1 = 0x05;      //CC1为输出 OC1高电平有效 开启OC1N OC1N高电平有效
    //TIM1_CCER1=0x0f;      //CC1为输出 OC1低电平有效 开启OC1N OC1N低电平有效
通过设置OC1的高电平有效或者低电平有效可以调整死区是高电平还是低电平。

す疯Ⅱ恒す 发表于 2018-1-24 13:36:58

直接设置输出oc1与oc1n反相即可。即设置无效电平为高电平。

爱随缘 发表于 2018-1-24 22:27:51

hxydj 发表于 2018-1-24 10:34
TIM1_CCER1 = 0x05;      //CC1为输出 OC1高电平有效 开启OC1N OC1N高电平有效
    //TIM1_CCER1=0x0f;    ...

厉害哈,果然可以,当时只是想想没有实际测试,感谢感谢哈
页: [1]
查看完整版本: 紧急求助STM8S003 TIM1高级定时器输出互补带死区方波