在F4 DISCOVERY 开发板上使用 ADC 三个通道,并且使用 DMA。
遇到两个问题:
1、使用多通道时模式选择 hadc1.Init.ScanConvMode = ENABLE; //This mode is used to scan a group of analog channels. ,
如果选择错误读到的都是第一个通道的值。
2、刚开始我数组使用了 uint32_t ,但是 DMA 的配置字宽为 half_word ,导致三个采集到的数据分布在 uhADCxConvertedValue[0] 和 uhADCxConvertedValue[1] 的高 16位。
所以数组的类型必须和 DMA 的字宽 匹配。