ADC10模块问题

[复制链接]
1508|10
 楼主| huanghuac 发表于 2013-8-11 09:28 | 显示全部楼层 |阅读模式
使用ADC10模块,为了提高采样率,使用函数ADC10_ical(int iVal, ADC10_CAL_VBG)校准时,在自带的Excel表格中设置full range counts为256,vdd为   2.5V,得到1.3V为133。但是在c语言代码编译完成后,输入一个小于2.5V电压时,从watch窗口看到ADC10_iGetData的值超过256,在300到500多之间跳变。
happy_10 发表于 2013-8-11 09:30 | 显示全部楼层
程序代码
 楼主| huanghuac 发表于 2013-8-11 09:31 | 显示全部楼层

ADC10_start(ADC10_FULLRANGE);
ADC10_ical(0x84, ADC10_CAL_VBG);
ADC10_startADC();
  
冰清玉洁 发表于 2013-8-11 09:33 | 显示全部楼层
什么意思
 楼主| huanghuac 发表于 2013-8-11 09:35 | 显示全部楼层
上面的代码如果放在循环里,watch窗口看到的ADC10_iGetData值,不论输入多少的电压,只会在500以下跳变
wenfen 发表于 2013-8-11 09:37 | 显示全部楼层
没见过啊没见过
 楼主| huanghuac 发表于 2013-8-11 09:39 | 显示全部楼层
huanghuac 发表于 2013-8-11 09:35
上面的代码如果放在循环里,watch窗口看到的ADC10_iGetData值,不论输入多少的电压,只会在500以下跳变 ...

设置中断观察,其中FULL RANGE COUNT设置为1024。
tian111 发表于 2013-8-11 09:41 | 显示全部楼层
还有吗
 楼主| huanghuac 发表于 2013-8-11 09:43 | 显示全部楼层
在程序中如果不加入
if(b>ADC10_iGetData()>a)
ADC10_iGetData()的值也是不论输入多少的电压,只会在500以下跳变
 楼主| huanghuac 发表于 2013-8-11 09:45 | 显示全部楼层
设置中断观察,其中FULL RANGE COUNT设置为1024
宋倩2010 发表于 2013-8-11 09:46 | 显示全部楼层
感觉很难啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

772

主题

8473

帖子

6

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