新闻  |   论坛  |   博客  |   在线研讨会
2430的A/D程序
0750long | 2009-07-15 13:46:09    阅读:1910   发布文章

2430的A/D程序

 

有朋友问2430的AD初始化及数据处理.重复回答很辛苦,就在这里贴出来吧.
如果对你有帮助,请记得顶一下.

/****************************************************************
*函数功能 :初始化ADC      *
*入口参数 :无                      *
*返 回 值 :无                      *
*说    明 :参考电压AVDD,转换对象是1/3AVDD                                        *
****************************************************************/
void InitialAD(void)
{
 ADCH &= 0X00;  //清EOC标志 
 ADCCON3=0xbf;  //单次转换,参考电压为电源电压,对1/3 AVDD进行A/D转换
      //14位分辨率
 ADCCON1 = 0X30;  //停止A/D

 ADCCON1 |= 0X40; //启动A/D

//因没有取外部电压作为A/D输入,所在没有配置ADCCFG

}

数据处理

INT16U readadc(void){

   temp[1] = ADCL;         //取AD值
   temp[0] = ADCH;
   ADCCON1 |= 0x40;    //开始下一转换

   temp[1] = temp[1]>>2;
   temp[1] |= temp[0]<<6;

   temp[0] = temp[0]>>2; //数据处理
   //temp[0] &= 0x3f;       //排错时写的,没有用

   result = (temp[0]*256+temp[1])*3.3/8192;  //有一位符号位,取2^13;

}

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客