ADC 工作不正常

[复制链接]
3602|20
 楼主| tian111 发表于 2012-4-18 21:48 | 显示全部楼层 |阅读模式
79f166  adc工作不正常,转换的数据和输入的电压没有一点的比例关系,外部参考2.5v  我第一次使用这颗芯片,是不是程序问题啊?
huwr 发表于 2012-4-18 21:52 | 显示全部楼层
参考电压已输入到IC脚上了
 楼主| tian111 发表于 2012-4-18 21:54 | 显示全部楼层
chenho 发表于 2012-4-18 21:56 | 显示全部楼层
代码看看
 楼主| tian111 发表于 2012-4-18 22:01 | 显示全部楼层
AD_MAIN:
  MOV ADCON,#0X90
  MOV ADCH,#00000001B  //选择AD通道0
  MOV AD_MAIN_BUFF_H,0X00 //清AD缓冲寄存器
  MOV AD_MAIN_BUFF_L,0X00 //清AD缓冲寄存器
  MOV ADDL,#0X00
  MOV ADDH,#0X00
  MOV R7,#10D    //转换10次
  MOV ADT,#01100011B     //转换时间=112US
AD_MAIN1:
  MOV ADCON,#0X90        //外部参考,比较功能关闭,通道0
  ORL ADCON,#0X01    //启动AD转换
AD_MAIN2:
  NOP
  NOP      
  NOP
  MOV A,ADCON
  JB ACC.0,AD_MAIN2  //等待AD转换完成
  NOP
  NOP
  DJNZ R7,AD_MAIN1  //抛弃前10次转换结果
  MOV R7,#0X0A   //转换10次
AD_MAIN3:
  MOV ADCON,#0X90        //外部参考,比较功能关闭,通道0
  ORL ADCON,#0X01   //启动AD转换
  NOP
  NOP
  LCALL DATA_ZL   //调用AD转换数据整理子程序(整理后的数据存入        AD_MAIN_BUFF_H和AD_MAIN_BUFF_L中)
  NOP
wenfen 发表于 2012-4-18 22:09 | 显示全部楼层
什么对不上?
 楼主| tian111 发表于 2012-4-18 22:10 | 显示全部楼层
转换结果寄存器ADDL和ADDH的值和输入电压对不上
wenfen 发表于 2012-4-18 22:12 | 显示全部楼层
转换的AD值稳定吗?
 楼主| tian111 发表于 2012-4-18 22:14 | 显示全部楼层
很稳定,是不是IC坏掉了
wenfen 发表于 2012-4-18 22:17 | 显示全部楼层
确实奇怪啊
 楼主| tian111 发表于 2012-4-18 22:19 | 显示全部楼层
ADDL和ADDH已经经过合并处理了,好像转换结果比实际值低好几倍,所以。。
chenho 发表于 2012-4-18 22:21 | 显示全部楼层
外部电压稳定吗,转换时有没有干扰
happy_10 发表于 2012-4-18 22:24 | 显示全部楼层
将通道0接地和接vref,是否为0和3ff?
冰清玉洁 发表于 2012-4-18 22:27 | 显示全部楼层
估计是程序问题,楼主好好看看吧
 楼主| tian111 发表于 2012-4-18 22:30 | 显示全部楼层
嗯,我也估计是
 楼主| tian111 发表于 2012-4-18 22:30 | 显示全部楼层
先结贴了
osesemi 发表于 2012-4-19 09:30 | 显示全部楼层
ycafeeling1 发表于 2012-4-19 12:06 | 显示全部楼层
先问下FAE啊:lol,他们经验多点,可能一下就解决了
306727413 发表于 2012-4-19 17:23 | 显示全部楼层
不错啊 2# huwr
306727413 发表于 2012-4-19 17:27 | 显示全部楼层
真不错
您需要登录后才可以回帖 登录 | 注册

本版积分规则

797

主题

8878

帖子

7

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