精确对齐的关键在于利用TIM的更新事件(Update Event)作为DAC转换触发源,并让DMA在TIM触发时同步搬运数据。首先,配置TIM为PWM模式或触发模式,设置好周期和占空比,确保更新事件频率等于波形采样率。DMA配置为循环模式,数据从内存到DAC的DHR寄存器,方向为外设到内存(或内存到外设,视具体型号),并启用DMA传输完成中断。对齐的核心是:在TIM更新事件触发DAC转换的同时,DMA自动将下一个采样点写入DHR,这样DMA完成中断(当传输完一个完整波形缓冲区)会发生在最后一个采样点被DAC锁存之后。为了精确对齐,建议在DMA中断中读取TIM的CNT寄存器,确认中断时刻与TIM周期的相位关系,必要时调整DMA的FIFO或突发传输设置。实操中,可先用逻辑分析仪测量DAC输出和TIM触发信号,微调TIM的ARR和CCR值,确保每个采样点严格对应一个TIM周期。另外,考虑使用DMA的半传输中断(Half Transfer)来预加载下一段数据,避免中断延迟影响连续性。
mcuku 阿沐 · 2026-08-27