电池测量问题

8个帖子/ 0新
最后一篇
Joacimwe.
离线
最后一次露面:1年3个月前
格鲁鲁
加入:2014-01-14 06:45
电池测量问题

您好,我对电池驱动程序/ ADC有一些问题

首先,我想问一下你是否可以解释你如何提出来测量电池电量的方法,特别是这一行:
BATT_LVL =(ADC_SAMPLE - 1137)* 100/568;

我们不打算使用CR2032电池,因此您对不同尺寸的硬币细胞进行电池测量有任何建议吗?

最后,你的建议是什么什么时候采用ADC样品进行电池测量?我的意思是,这是根据您拍摄样本时会获得非常不同的结果。例如,在LED导通的同时取样将为您提供更低的样本,如果从长时间睡眠后醒来后直接完成。那么获得最逼真的电池水平的首选方法是什么?

谢谢

Joacimwe.
离线
最后一次露面:1年3个月前
格鲁鲁
加入:2014-01-14 06:45
一个小澄清:

一个小澄清:

我知道,1705-1137 = 568所以前面提到的代码只是计算1137和1705之间的百分比(线性)。但是我关于如何首先计算这些价值的问题。而且还使用样本使用的原因:
ADC_SAMPLE >> = 4;
adc_sample << = 4;

je_dialog.
离线
最后一次露面:10小时27分钟前
员工
加入:2013-12-05 14:02
你好joacimwe,

你好joacimwe,

我目前正在为您进行检查:等待设计团队的反馈,以了解这些值如何从一开始就计算这些值。道歉延迟,

BR JE_DIALOG.

Joacimwe.
离线
最后一次露面:1年3个月前
格鲁鲁
加入:2014-01-14 06:45
有关此问题的任何消息?我是

有关此问题的任何消息?我真正想知道的只是下面的代码是否有任何逻辑,或者如果这是一个试验和错误问题:

//1705=3.0V,1137 = 2V
if(adc_sample> = 1137)
BATT_LVL =(ADC_SAMPLE - 1137)* 100/568;
其他
batt_lvl = 0;

je_dialog.
离线
最后一次露面:10小时27分钟前
员工
加入:2013-12-05 14:02
你好joacimwe,是的,我只是

你好Joacimwe,是的,我刚刚收到了昨天数字背后的魔力(假期意味着异常延迟)。

以下是原始的计算方式:

BATT_CAL_CR2032()功能将在ADC模块中测量的值转换为CR2032电池剩余寿命的粗略估计。在功能的参数中,通过了两个ADC样本的总和(差分模式和一个单个结束模式)。该方法以及最大/最小限制(1705 = 3.0V,1137 = 2V)

数字的其余部分(1584&1360)分别是ADC样品总和的2.8和2.4V的值,并且用于根据CR2032的放电模型计算剩余电池寿命的估计。

BR JE_DIALOG.

Joacimwe.
离线
最后一次露面:1年3个月前
格鲁鲁
加入:2014-01-14 06:45
谢谢!

谢谢!

yterasaki.
离线
最后一次露面:4年5个月前
加入:2015-05-08 09:28
敬启者,

敬启者,

我现在正在使用D14580评估板并与这款邮件链相关,我想知道“总结两次ADC输出”的含义。
我认为此评论来自以下代码。你能告诉我一个用不同的adc_init(...)添加两次ADC输出的目的吗?

adc_init(gp_adc_se,gp_adc_sign);
if(batt_type == batt_aaa_single_allaline)
ADC_ENABLE_CHANNEL(ADC_CHANNEL_VBAT1V);
其他
ADC_ENABLE_CHANNEL(ADC_CHANNEL_VBAT3V);
adc_sample = adc_get_sample();

adc_init(gp_adc_se,0);
if(batt_type == batt_aaa_single_allaline)
ADC_ENABLE_CHANNEL(ADC_CHANNEL_VBAT1V);
其他
ADC_ENABLE_CHANNEL(ADC_CHANNEL_VBAT3V);
adc_sample + = adc_get_sample();

yama_dialog
离线
最后一次露面:4年9月前
员工
加入:2014-10-27 08:47
你好yterasaki,

你好yterasaki,

获得两个样本值的目的与ADC校准有关。实际上我们应该计算否定校准设置并将它们配置为校准HW寄存器。
对于每个校准设置,我们得到一个样本,那么这两个样本的平均值最准确。我希望这会回答你的问题

最好的祝福,

yama_dialog