打印

gd32E定时器频率动态更新的问题

[复制链接]
1289|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 wahaha95 于 2022-10-5 20:01 编辑

        你好,我使用gd32E503要实现两路pwm功能,要求载波相位错开180度,频率可动态设置。        我使用timer0和timer7采用  增计数模式 实现,tim0和tim7都设置car和ch0cv的影子寄存器开启,tim7使用ch3比较事件触发dma,当ch3比较事件发生时,dma往tim0的swevg里写入0x01,即触发up事件,使得tim0复位cnt值,且更新car和ch0cv,以此来实现相位动态变化。
       测试使用25kHz定时器任务周期,同时更新tim0和tim7的car与ch0cv,每个周期100kH与200kHz来回变化。实际波形大部分时间相位和频率正确,但是偶尔会出现 频率不一致的情况。思考的很多天没理解为啥 同一时刻更新的car,但是实际会出现周期错位的情况。
       请问这是什么原因呢?

微信图片_20221005195053.jpg (441.08 KB )

微信图片_20221005195053.jpg

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝