APM32F003一共有9个ADC通道: 8个多功能的外部输入通道和1个内部通道.
ADC缓冲寄存器ADC_DATABUF,有点类似DMA的简化版,提高了ADC时的工作效能.
需要注意缓冲寄存器ADC_DATABUF仅用于单通道连续转换模式和扫描模式,并且两种模式储存到缓冲寄存器的方式是有微小的差异.以下我们介绍一下各自的差异点
单通道连续转换模式的时候,ADC每一次的转换结果都会逐一地存储到缓冲寄存器.当缓冲寄存器被填满后可以产生中断.
下图是单通道扫描模式中断后读取到的缓冲寄存器的值
多通道扫描模式的时候,ADC转换结果会按照通道与缓冲寄存器逐一对应,如下图,是CH0~CH2的3通道的扫描模式,当最后一个通道转换完成后,可以产生中断
同时需要注意多通道扫描模式:只能从通道0->1->2...按照通道的顺序逐一进行扫描.
下图是多通道扫描模式中断后读取到的缓冲寄存器的值
具体测试程序请参考官方SDK包Examples/ADC/ADC_MultiChannelScan,该例程是启用了ADC_DATABUF的3通道扫描模式
|