• 单片机A/D转换工作原理及优缺点分析方案
  • 单片机A/D转换工作原理及优缺点分析方案

    单片机A/D转换工作原理及优缺点分析方案
     
     
      单片机应用于工业控制等方面时,经常要将电流、电压、温度、位移、转速等模拟量转换成数字量,然后在单片机内作进一步运算和处理,完成相应的数据存储、数据传输和数据输出,达到分析和控制的目的。随着大规模集成电路的不断发展,很多单片机都有内置A/D模块,因此,单片机的A/D转换可以用内置A/D模块也可以用外置A/D电路完成,现谈谈单片机A/D转换的工作原理及优缺点,并分析提高A/D转换精度的方法。1A/D转换的工作原理及优缺点(1)单片机片内A/D转换单片机片内A/D转换是利用单片机的内置A/D模块,通过选择不同的模拟量通道进行A/D转换。可以将模拟量直接输入到单片机对应的输入脚,外围电路简单。转换后的数据直接保存在片内寄存器中,数据提取方便。但大多数单片机的内置A/D模块只有8位和10位,无法进行高精度的A/D转换。
     
      单片机片外A/D转换单片机外置A/D转换是单片机通过一定的逻辑电路控制外置A/D转换电路进行A/D转换,外围电路相对复杂。单片机将转换结果通过一定的时序读取到单片机中,按要求通过选择A/D转换电路,可以实现高精度的A/D转换(可以达到14位、16位、22位甚至更高),原理如图2所示。2提高A/D转换精度的方法要提高A/D转换的精度,选用高精度的外部A/D转换器当然可以达到要求,除此之外,有没有其他方法呢?答案是肯定的。以下介绍几种利用片内A/D转换模块提高转换精度的方法。①以采集电压为例,假设需要采集0.0~400.0V直流电压,单片机A/D模块的基准电压VREF+取5.0V,VREF-取0V,需要采集的电压经过衰减,变成0.0~5.0V,连接电路如图3所示。显然,如果要达0.1V的精度,则A/D转换的分辨率必须小于1/4000,而片内A/D模块一般为10位,分辨率仅为1/1024,达不到要求。由于模拟量(O~400V电压)输入大多不是稳定值,会有波动,为了得到更高精度的数据,可以将多次采集的数据累加后再取平均值其实即使分辨率达到要求的A/D转换也要经过累加再取平均值,以得到更稳定的数据。
     
      如果模拟量输入值非常稳定,每间隔一定时间采集的10位数据Di都相同,以上方法就达不到要求了。②如果在A/D转换过程中要得到局部更高精度的数据,例如检测蓄电池充放电过程中的电压,电压范围是0~18V,一般精度达到0.02V即可,但用户更关心8~13V的电压,8~13V内精度要达到0.01V。为了解决这个问题,设计了原理如图4所示的电路。
      单片机有内置10位A/D模块,Ui(0~20V)电压经过R1、R2、P1衰减得到0~5V的电压,该电压直接送到单片机的AN1输入口,即VAN1=Ui/4。U2A接成减法运算电路,即U2A1端电压VU2A1=VAN1-2V=Ui/4-2V=(Ui-8V)/4。U2B接成4倍放大电路,U2B7端的电压VU2B7=VU2A×4=Ui-8V。AN2输入并联一只5V稳压二极管,以保证当输入电压大于8V时,单片机AN2可以得到O~5V电压。单片机先采集AN1的数据,通过采集的数据判断输入电压是否在8~13V之间,如果不在8~13V,则采集到的数据就是模拟量(U)对应的数字量(D:000H~3FFH),精度为20V/2010=20V/1024≈0.02V,电压数据U=D×0.02V;如果采集的数据在8~13V之间,单片机再采集AN2的数据,采集到的数据加上8V就是模拟量(U)对应的数字量(D:000H~3FFH),精度为(13-8)V/210=5V/1024≈0.005V,电压数据U=8V+D×0.005V。这样,在8~13V之间的A/D转换精度就大大提高了。

    更多型号芯片解密可致电北京致芯科技24小时服务热线:13466687255 010-57436217

    点击这里给我发消息 点击这里给我发消息

      Copyright © 2004-2012 致芯科技 版权所有