ADC介绍
ADC的概念:
即为模拟/数字转换器,ADC可以将引脚上持续变化的模拟电压转换为内存中储存的数字变量,简历模拟电路到数字电路的桥梁。
12位ADC是一种逐次逼近型的模拟数字转换器(0-4095)。
STM32F103C8T6 ADC资源:ADC1、ADC2,10个外部输入通道
ADC工作原理(逐次逼近型)
逐次逼近寄存器经过D/A转换器进入到比较器中 和输入的模拟量进行比较从而不断修正逐次逼近寄存器的值 当再次比较后差距不大则逐次逼近寄存器将数据放在输出缓冲器中
ADC特性参数
ADC的性能指标
量程:能测量的电压范围(0-3.3v)
分辨率:ADC能辨别的最小模拟量,通常以输出二进制的位数,比如8、10、12、16位等;位数越多,分辨率越高,一般来说分辨率越高,转化时间越长。
转化时间(采样时间)从转化开始到获得稳定的数字量输出所需要的时间称为转换时间,转换时间越长,转换结果相对越准确,但是转换速度越慢。
转换时间=采样时间+12.5个周期
12.5个周期是固定的,一般我们设置PCLK=72M,经过ADC预分频(2/6/8/12)且最高为14MHZ,故最大的试重只能是12M,采样周期设置为1.5个周期,算出最短的转换时间为 14/12≈1.15us
ADC的框图
中断及事件
事件标志 使前控制位
①规则通道转换结束 EOC EOCIE
②注入通道转换结束 JEOC JEOCIE
③设置了模拟看门狗状态位 AWD AWDIE
DMA请求(只适用于规则组)
规则组每个通道转换结束后,除了可以产生中断外,还可以产生DMA请求,我们利用DMA及时把转换好的数据传输到指定的内存里,防止数据覆盖。
校准
ADC有一个内置的自校准模式,校准可大幅减小因内部电容组的变化而造成的准精度误差。
单次转换和连续转换
单次转换:只转换一次
多次转换:转换一次后,立马进行下一次的转换
扫描模式
关闭扫描模式:只转换ADC_SQRx或ADC_JSDR选中的第一个通道
打开扫描模式:扫描所有被ADC_SQRx或ADC_JSQR选中的所有通道