Firefly开源社区

12
发表新贴
打印 上一主题 下一主题

电池电量检测

53

积分

0

威望

0

贡献

游客

积分
53

电池电量检测

发表于 2015-5-19 11:40:50      浏览:15476 | 回复:14        打印      只看该作者   [复制链接] 楼主
自带的电池电量检测的profile用哪个AD口(IO口)采样的?
回复

使用道具 举报

21

积分

0

威望

0

贡献

技术小白

积分
21
发表于 2015-7-22 10:05:35        只看该作者  推荐
找到了
adc_clock_off();
adc_power_off();
加上去就好了
回复

使用道具 举报

53

积分

0

威望

0

贡献

游客

积分
53
发表于 2015-5-19 12:01:13        只看该作者  沙发
BATT,               /*!< Battery detector channel */这个BATT是哪个通道?
回复

使用道具 举报

151

积分

0

威望

0

贡献

技术小白

积分
151
发表于 2015-5-19 14:26:13        只看该作者  板凳
A battery monitor is integrated by connecting supply voltage (VDD/4) to the ADC input,which would use the internal regulated reference for the conversion
回复

使用道具 举报

53

积分

0

威望

0

贡献

游客

积分
53
发表于 2015-5-19 19:46:13        只看该作者  地板
FireBLE_blue 发表于 2015-5-19 14:26
A battery monitor is integrated by connecting supply voltage (VDD/4) to the ADC input,which would us ...

我填加了电量的profile,发现运行时bass_create_db_req_handler这个函数没有进去,自己添加的profile就不成功了,不知道为什么此函数没运行?
回复

使用道具 举报

151

积分

0

威望

0

贡献

技术小白

积分
151
发表于 2015-5-21 11:20:49        只看该作者  5#
你上面提供的信息,我还不能够根据你提供的信息判断为什么不能调用bass_create_db_req_handler这个函数,建议把问题描述得详细一点,有步骤地描述你是怎么添加profile,在什么基础上改的,都改动了那些代码,改动后你觉得那里的运行结果与你想象的不符,我们大家才能根据你提供的详细信息给你提示。
回复

使用道具 举报

400

积分

0

威望

0

贡献

注册会员

Rank: 8Rank: 8

积分
400
QQ
发表于 2015-5-21 14:43:38        只看该作者  6#
thong 发表于 2015-5-19 12:01
BATT,               /*!< Battery detector channel */这个BATT是哪个通道?

电池检测采用的是专用内部通道,对外部不公开的,所以外部的AD口都还是可以继续采样 的。
没个性,不签名!
回复

使用道具 举报

53

积分

0

威望

0

贡献

游客

积分
53
发表于 2015-5-21 15:47:46        只看该作者  7#
FireBLE_blue 发表于 2015-5-21 11:20
你上面提供的信息,我还不能够根据你提供的信息判断为什么不能调用bass_create_db_req_handler这个函数,建 ...

已经找到问题了,任务冲突了
回复

使用道具 举报

21

积分

0

威望

0

贡献

技术小白

积分
21
发表于 2015-7-21 18:43:54        只看该作者  8#
请问量测电池电量之后
是不是要关闭通道

我发现进SLEEP_NORMAL
会有17uA的耗电
但不执行底下的程式
进SLEEP_NORMAL
只有3.6uA
是要修改哪边?       


battery_monitor_enable(MASK_ENABLE);
        int16_t battv;
        adc_init(ADC_SINGLE_WITH_BUF_DRV, ADC_CLK_15625, ADC_INT_REF, ADC_12BIT);
   
               
        adc_done = 0;
       
        adc_read_configuration read_cfg;
    read_cfg.trig_src = ADC_TRIG_SOFT;
    //read_cfg.mode = BURST_MOD;
        read_cfg.mode =  CONTINUE_MOD;
       
        read_cfg.start_ch = BATT;
    read_cfg.end_ch = BATT;
    adc_read(&read_cfg, &battv, 1, adc_test_cb);
    while (adc_done == 0);
   
               
        int jj = 4 * ADC_RESULT_mV(battv);
        Now_Battery_State = jj / 100;
               
        battery_monitor_enable(MASK_DISABLE);


回复

使用道具 举报

151

积分

0

威望

0

贡献

技术小白

积分
151
发表于 2015-7-24 10:28:10        只看该作者  10#
ffl86 发表于 2015-7-22 10:05
找到了
adc_clock_off();
adc_power_off();

是的,测量后要把相应的adc模块关闭,以降低功耗,你的提问后,又能把解决方法贴出以结贴,非常好的习惯,赞一个
回复

使用道具 举报

返回列表
12
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表