本文作者:qiaoqingyi

编程c8051F(编程培训机构哪里好)

qiaoqingyi 04-18 147

  

  与其它逐次逼近式的AD操作类似,有几个点需要主要:1.有8个通道,内部还有一个通道用于测温;2.内部可产生一个1.2V电压基准,并能x2输出到Vref,但必须接到Vref0上,当然也可以外接基准电压;3.有低功耗跟踪方式可供选择;4.内部有运放增益,对微弱信号特别有效

  

  一般采用向ADBUSY写1的方式进行转换,以下是读取AD值的函数:

  uint GetAD0value(uchar channel)//0~7对应AIN0~7,8是温度传感器

  {//AD采样

  uint ad0_value;

编程c8051F(编程培训机构哪里好)

  AMX0SL=channel;

  AD0INT=0;

  AD0BUSY=1;//启动AD转换

  while(!AD0INT);

  {

  ad0_value= ADC0H;

  ad0_value=8;

  ad0_value+=ADC0L;//AD转换结果

  }

  return ad0_value;

  }

  温度的转换利用以下关系式:[2.4*GetAD0value(8)-3177.7]/117;

阅读
分享