ADC模数转换器

1.ADC模数转换器是什么?

        ADC,指模/数转换器或者模数转换器。是指将连续变化的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号,例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的数字形式。

2.ADC的分类

        模数转换器的种类很多,按工作原理的不同,可分成间接ADC和直接ADC。间接ADC是先将输入模拟电压转换成时间或频率,然后再把这些中间量转换成数字量,常用的有双积分型ADC。直接ADC则直接转换成数字量,常用的有并联比较型ADC和逐次逼近型ADC。这边要讨论的是逐次逼近型ADC

3.逐次逼近型ADC

3.1原理:逐次逼近型adc由比较器、D/A转换器、缓冲寄存器和若干控制逻辑电路构成。原理是从高位到低位逐位比较,首先将缓冲寄存器各位清零;转换开始后,先将寄存器最高位置1,把值送入D/A转换器,经D/A转换后的模拟量送入比较器,称为 Vo,与比较器的待转换的模拟量Vi比较,若Vo<Vi,缓冲寄存器的最高位1被保留,否则被清0。然后,再置寄存器次高位为1,将寄存器中新的数字量送D/A转换器,输出的 Vo再与Vi比较,若Vo<Vi,该位被保留,否则被清0。循环此过程,直到寄存器最低位,得到数字量的输出。

3.2分辨率

分辨率是ADC可以识别的最小信号变化的能力。12位ADC的分辨率就是12位,或者说分辨率为满刻度的1/(2^12)。
取Vref为5V,12位ADC能分辨输入电压变化最小值是5V/(2^12 )=0.0012V。

3.3精度

adc模块的精度一般有8位、10位、12位、16位、24位。

以5V的ADC模块为例介绍:

8位的精度:把0~5V分成256份,每份表示5/256=0.02V;

10位的精度:把0~5V分成1024份,每份表示5/1024=0.005V;

12位的精度:把0~5V分成4096份,每份表示5/4096=0.0012V;

16位的精度:把0~5V分成65536份,每份表示5/65536=0.000076V;

24位的精度:把0~5V分成16777215份,每份表示5/16777215=0.00000023V;

实际应用:

float temp;
adcx=Get_Adc_Average(ADC_Channel_1,10); //求出的只是ADC值,不是电压值
temp=(float)adcx*(5/4096); //参考电压为5V,根据12位的精度,转换成电压值
 
3.3参考电压
 

        参考电压也叫做基准电压,如果没有基准电压,就无法确定被测信号的准确幅值。例如基准电压为2.5V,则当被测信号达到2.5V时ADC输出满量程读数,使用者就会知道ADC输出的满量程等于2.5V。不同的ADC,有的是外接基准,也有的是内置基准无需外接,还有的ADC外接基准和内置基准都可以用,但外接基准优先于内置基准。

       使用外部参考电压作为ADC参考电压,由于VDD,GND一般和ADC的外部参考电压引脚VREF+,VREF-连接在一起。所以VDD的电压就是ADC的参考电压,由于LDO供给MCU的电压有一定的偏差。所以使用ADC前需要知道VDD的电压为多少,对于十二位的ADC,VDD电压对应的转换出的数值为4096(2^12)

 

  • 6
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值