核心思路是让DMA传输与PWM更新事件严格同步,避免中断竞争。推荐使用定时器的DMA突发模式(Burst Mode),将DMA请求绑定到更新事件(UEV),并配置DMA为循环模式,这样每次更新事件自动搬运数据,无需中断干预。若必须用中断,需确保DMA中断优先级高于PWM更新中断,并在DMA中断服务函数中仅更新缓冲区指针,不操作寄存器。另外,可开启定时器的预装载功能(ARPE=1),让CCR值在更新事件时统一生效,避免半周期修改产生毛刺。实操建议:先用逻辑分析仪验证时序,再调整DMA突发长度和FIFO阈值,减少总线竞争。
mcuku 阿沐 · 2026-08-27