【求助】ZTLC5模组怎么设置PWM死区?

Zigbee 子设备开发


Post Reply
pocket525
Posts: 19

【求助】ZTLC5模组怎么设置PWM死区?
在涂鸦SDK3.6版本中,可以设置PWM互补吗?PWM互补和PWM死区怎么设置?

doufu
Posts: 21

Re: 【求助】ZTLC5模组怎么设置PWM死区?

ZTLC5不支持硬件死区时间设置,需要用户自己使用PWM实现。
ZTLC5要实现互补有两种方式,
第一种是使用TAL层接口,初始化两路PWM,采用极性相反,设置的占空比数值互补,这种方法是应用层实现,需要用到两个PWM通道,调用tal_pwm_start时入参需要为0xFF,这样才会同时启动,保障两路PWM没有相位差。
第二种是使用泰凌微原厂接口,初始化一路PWM,设置一个IO为PWM,另一个IO为PWM_N,设置这一路PWM占空比即可实现两个IO输出的是互补的PWM信号,具体代码请参考泰凌微的数据手册及驱动demo。

pocket525
Posts: 19

Re: 【求助】ZTLC5模组怎么设置PWM死区?

你好,请问一下,如果使用tal_pwm_start(0XFF)设置两路PWM同时开始来实现相位对齐,在设置色温,亮度,开关后相位会一直保持对齐吗?

如果采用这种方式设置死区,如何同时设置两端的死区呢?见附件

微信图片_20240612103623.jpg
doufu
Posts: 21

Re: 【求助】ZTLC5模组怎么设置PWM死区?

如果使用tal_pwm_start(0XFF)设置两路PWM同时开始来实现相位对齐,在设置色温,亮度,开关后相位会一直保持对齐。
设置死区的技术方案及软件代码实现需要你这边自己实现。

pocket525
Posts: 19

Re: 【求助】ZTLC5模组怎么设置PWM死区?

如果使用tal_pwm_start(0),tal_pwm_start(1),pwm1比pwm2稍微延时一点开始的话,PWM1和PWM2的相位会一直保持开始的时候的状态吗?

doufu
Posts: 21

Re: 【求助】ZTLC5模组怎么设置PWM死区?

这个需要你结合各种情况去实测一下了,我这边没有特意去测试过各种情况下是否能保持稳定的相位差。不过通过这种方式去实现死区不是很可靠。

pocket525
Posts: 19

Re: 【求助】ZTLC5模组怎么设置PWM死区?

好的谢谢。

pocket525
Posts: 19

Re: 【求助】ZTLC5模组怎么设置PWM死区?

你好,我对比了一下公版的pwm波形,我发现公版的波形周期的起始位置在固定的,调节色温/亮度 波形的周期起点和终点不会变化。
我使用TUYASDK自定义开发在调整亮度的时候,通道二周期的起点和终点位置会发生改变,请问这个可以调整吗?波形的视频我放到了附件。

使用TUYASDK的版本如下
"tuyaosVersion": "3.6.0",
"sdkVersion": "3.0.6",
其中通道1的极性为TUYA_PWM_NEGATIVE,通道2极性为TUYA_PWM_POSITIVE

Attachments
PWM问题.zip
(4.93 MiB) Downloaded 23 times
Post Reply