C8051F021 ADC0问题。

[复制链接]
2227|2
 楼主| kama_ya 发表于 2013-3-19 21:25 | 显示全部楼层 |阅读模式
系统时钟25M,输入电压2.34V, 每次一执行 (AD0BUSY=1;//起动转换) AD0INT立马变成1,提示转换完成,可是ADC0H 和ADC0L均为0,哪位用过,请指教。 谢谢

配置程序如下:
     REF0CN=0x03;     //配置ADC0的参考电压
     ADC0CF= 0x40;//PGA=1
     ADC0CN= 0x80; //AD0EN = 1
     AMX0CF=0x00;//AIN0-7是单端输入
     AMX0SL=0x07; //选择7号通道
     ADC0L=0;
     ADC0H=0;
     EIE2 |= 0x02;
     EA = 1;

采集程序如下:
   AD0INT=0;
   AD0BUSY=1;//起动转换
   while(!AD0INT);
   NTC_Voltage = ADC0H;
   NTC_Voltage = (ADC0H<<8)+ADC0L;
   NTC_Voltage = (float)NTC_Voltage*243/4095;
南宫云明 发表于 2013-3-20 08:33 | 显示全部楼层
就这样没法看呀。。。看看交叉开关的配置。。。。。是不是根本就配置成AD模式或DA模式
ayb_ice 发表于 2013-3-20 08:37 | 显示全部楼层
对应的IO要配置成模拟输入才行的

建议用配置向导产生初始化代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:浑浑噩噩又一年。

120

主题

551

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部