核心方案是采用双缓冲(DMA半传输/传输完成中断)配合定时器触发ADC,确保每次DMA搬运的数据块对应一个完整的采样周期。具体做法:1) 配置ADC为定时器触发模式(如TIM1的TRGO),触发频率与采样率一致;2) 设置DMA为循环模式,数据宽度与ADC对齐(如半字),并启用双缓冲(DMA_Memory0/Memory1);3) 在DMA中断中(半传输和传输完成)交替处理两个缓冲区,通过时间戳或序列号标记数据块起始位置,避免错位。4) 若多通道需严格对齐,建议使用ADC的注入组或规则组顺序固定,并确保DMA传输长度等于通道数×采样点数。5) 调试时用逻辑分析仪验证触发信号与DMA完成中断的时序关系,微调定时器预分频值。
mcuku 阿沐 · 2026-08-27