关于CC2541 电池检测问题误差问题
时间:10-02
整理:3721RD
点击:
程序代码如下:
// Configure ADC and perform a read HalAdcSetReference( HAL_ADC_REF_125V ); AdcValue = HalAdcRead(HAL_ADC_CHANNEL_VDD, HAL_ADC_RESOLUTION_10);
VDD电压3V 。测试结果

按照说明应该是 AD 值409.但现在是432 .偏高0.2V左右。 请问是什么原因那 ? 如何解决那 ?
试试在ADC的输入管脚挂一个大一点的电容,因为ADC采集的时候会抽电流,试试看效果会不会好一点。如果采样不对,把采样率放低试试
谢谢回复!
但我现在是使用内部参考1.25V 和 VDD/3(VDD是标准3V).. 出现这个问题。 好郁闷!
我的意思是ADC输入口。
那个测试过了。 也有误差。
但测量电池电压应该会更加准确的。
我以前在一个客户那里有同样的情况,也是内部参考,后来输入端加了个1uf的电容,可以了。前提是客户电池电压是足够的,而且采样速率要求不高。
因为我现在测试电池容量。就不同。 我怀疑硬件是否不正常。
使用电源供电:3V 2A
测试电池容量 3V 不是409. 我现在去掉CCDEBUGGER 。 发送数据 0X1B5.437 . 基准源都不准。 才是我担心的。
不准原因:
1. 内部参考 1.25V 不准确 不敢怀疑
2.VDD电压不是3V 万用表测试过
3.ADC 本身不准 不敢怀疑。
是否还有其它思路?
1、测试一下PIN30脚的电压,如果你接电阻的话
2、采样可以采用一定的滤波算法,比如采样多次,去掉最大值,去掉最小值再平均,还有其它滤波算法,网上有,多查一下
3、如果省电模式开启的话,每次唤醒后延时一定时间再采样,会更准确一些,这个可以在仿真中看出来
好吧,先说这些吧,希望可以帮到你!
