1. 介绍
主控: STM32H743VIH6
软件:STM32CubeMX + STM32CubeIDE
由于此型号H7没有内置的HS USB PHY, 所以使用了外置芯片: USB3300
STM32H7的选型我是根据下帖进行选择的,需要注意的是 1. 不同封装对应的最高采样速率不同;
2. 不同通道所能达到的最高采样率也不同。
STM32H7中ADC功能被ST玩出花,现在分直接通道,快速通道和慢速通道,不同封装最高速不同, LQFP封装速度最低 - STM32H7 - 硬汉嵌入式论坛 - Powered by Discuz!
根据数据手册 和 参考手册:
可以看出 此型号H7的14bit最高采样率为单通道4M, 同时高速通道为每个ADC的 channel0 ~ 5;
本来我是打算通过3 个ADC交替达到12M的, 但是ADC3仅有的高速通道还都被 USB的ULPI接口占用了,所以退而使用 2个ADC交替, 刚好 ADC1 和 ADC2 可以使用H7自带的 interleaved mode。
所以,接下来的实现方案为使用 STM32H7 自带的 交替采样模式来实现。
2. CubeMX配置
首先是M7 内核的配置, 这个我也不是很懂, 在我的试验中,就是一定要打开DCache, 无论是USB 还是 ADC, 如果不打开DChache,就会出现各种各样的问题。
时钟配置, 主频480M, ADC 72M, USB 48M: