想用CUBE配置然后用HAL库实现F407 3ADC交替采样实现7.2MSPS采样率,网上查了很多资料,3adc交替采样的资料很少,有用寄存器配置的,但是用HAL库的基本上没有找到,只能自己摸索。
首先是Pinout,值得注意的是3ADC 交替通常用到一样的通道,我用的是0通道。

然后是时钟的配置ADC最快时钟是36MHz,所以系统最快只能在144MHz,要做相应的更改

然后是ADC设置,这里面要选择模式是Triple interleaved Mode, DMA mode 2, delay设置为5cycle,ADC采样3cycle,Clock 要选择div2,这样能才能达到最快速度。

ADC2,3 配置相类似就略过
然后是DMA配置,只需要配置ADC1的DMA就可以了。
长度要选WORD, mode注意了我选的是Normal,因为选了circule 之后数据不对,估计是中断时时候数据还没有处理完数据就已经被覆盖了。没有细究。

然后主程序里面添加以下关键代码
HAL_ADC_Start(&hadc3);
HAL_ADC_Start(&hadc2);
HAL_ADCEx_MultiMode

本文介绍了如何使用STM32 F407的3个ADC交替采样,以实现7.2Msps的高速采样率。内容涉及PIN配置、时钟设定、ADC与DMA模式选择以及中断处理策略。通过实验验证,达到了预期的采样速度。
最低0.47元/天 解锁文章

8458

被折叠的 条评论
为什么被折叠?



