Part Number:CC2640R2L
1、在SimplePeripheral工程添加了内部的电压检测功能,初始化的时候使能AONBatMonEnable();
2、在GAP_DEVICE_INIT_DONE_EVENT 事件内使用AONBatMonBatteryVoltageGet()读取到电压值后,并使用AONBatMonDisable()函数关闭。
问题就出现在这个AONBatMonDisable()函数调用与否上。
测试现象如下:
- AONBatMonBatteryVoltageGet()读取后,不调用AONBatMonDisable()关闭,就是一直开着。手机扫描蓝牙信号都是正常的,能扫描到且发包间隔显示正常。
- AONBatMonBatteryVoltageGet()读取后,调用AONBatMonDisable()关闭,也就是读取一次后就关掉。手机扫描蓝牙信号断断续续的,甚至部分型号的手机搜不到。上频谱仪和示波器看,发出来了,波形正常的,频偏正常。 这是最诡异的地方????
以上问题,是不是函数使用问题,望官方给出正确的使用方法以及注意点。
第二个问题,我测试了AONBatMonDisable(),调用与不调用2种情况下的休眠功耗(关与不关),发现开启的情况下还是会大一点,几百nA,问下这个功耗有没有明确参数,能不能提供下?
盼复!
Yolande Wang:
您好,
问题可能出现在函数的调用时机上,这个函数的作用是关闭电池电压检测功能。
在你的应用程序逻辑中,根据需要开启和关闭电池电压检测功能,而不是在初始化之后立即关闭,你可能在初始化时开启该功能,并在需要时关闭。这样可以确保在扫描蓝牙信号时,仍然可以正常进行电压检测。
,
user5318699:
都试过,一种是初始化后读取电压值里面关闭;另一种是初始化后定时器500ms后读取电压值再关闭,效果一样的。
,
Yolande Wang:
好的,我将您的问题升级问下