我们用自制最小系统板(SDK v1.0.6.968)ble_adv项目探讨低能量的功能。
我们设置如下:
pm_set_sleep_mode(pm_mode_extended_sleep);
通告时间间隔是默认687.5ms。
在测试过程中,我们有两个读数,这是显著官方文件:
如图1所示,有源电流为2mA从开始到787-8。
2,目前的下拉到600 UA 787-8后后。
我的问题是:
为2mA电流正常读取#1?
正如AN-B-037 DA1468x电源measurements_v1.3,AVG的注意。为1000毫秒间隔广告电流约为20.3713 UA,但我读#2是附近600ua。也许在您看来,是什么原因呢?(我们使用的是最小的系统,不附加任何其他外围。)
设备:
嗨auzzz,
对于第一个8秒设备是活动的所有的时间(广告间隔之间没有睡眠),因为有8秒的最大时间为XTAL32稳定,因此相当大的功率cosnumption预计。
关于你的第二次测量,我可以在我的船上与在687ms广告与智能摘录工具间隔1000毫秒和周围电流为35μA修改广告间隔ble_adv项目验证approximatelly的20uA。关于你提到的测量和600uA,你看,我是不是能复制该值,你可以肯定,使用的时间间隔为1000毫秒,我可以看到approximatelly 600uA时,该设备是广告每次20〜30毫秒。除此之外,这个偏移可能是由于从董事会目前的一些泄漏您正在使用。我不认为有SW配置anykind启用休眠时,可能会导致电流消耗的这一数额。
谢谢mt_dialog.
嗨MT_dialog,
漏电流证实。
谢谢!
我们使用一个I2C外设与4.7K上拉电阻,这引起泄漏电流处于睡眠模式。
我一定要重新配置I / O设置浮动进入睡眠模式之前?如果是这样,在哪一部分,我应该BLE_ADV项目修改?
谢谢
嗨auzzz,
临睡前管脚时被锁定到它们的当前配置(配置,你已走之前进入睡眠模式),当你醒来时,你重新配置在periph_init()函数(在函数用作pm_system_init(参数) 功能)。那么,什么是对用于I2C接口的具体引脚的配置?
谢谢mt_dialog.
我们没有修改SW设置
/ *初始化硬件* /
pm_system_init(NULL);
默认设置是根据文件下拉,而I2C周边,我们使用需要上拉,这使得一个循环。配置GPIO引脚功能后,泄漏电流消失。
感谢您的支持和指导。
我配置定时器0和定时器在PWM模式。
我必须配置定时器在periph_init()?
嗨鲁斯兰,
这取决于当你想激活它们,如果你想在每个醒来运行定时器,是的,你可以在功能配置它们,因为periph_init()在每个唤醒设备的最高被调用。
谢谢mt_dialog.