已经通过adc采集上报了,每次删除设备重新添加才会更新电量,请教下上报的频率是多久,电量递减才会上报已经屏蔽。
您好,默认代码是10s上报一次,如您的截图。电量是可以通过notify上报的,更新频率与notify的频率一致,可以在battNotifyCB()接口最开头加个串口打印,监控下什么时候上报成功,上报成功会进battNotifyCB这个回调函数。
按如下代码块添加一个事件,可以在发完鼠标hid报表之后再发送一包notify数据来更新电池电量,便于观察鼠标移动和电量更新是否同步。可以将BLE_BUFF_NUM和BLE_TX_NUM_EVENT两个宏配置大些,保证notify包可以发出去。
battLevel这个变量一定要用到,要将本来的static修饰改为extern修饰。
好的,谢谢,问题已经解决了,还有关于低功耗的问题,已经将HAL_SLEEP 设置为 TURE,电流还是在1~2ma,还有什么比较好的将功耗方式吗,用于PC或者安卓的多功能遥控器使用,
板子是否是使用的我们的DEMO板,sleep模式下的功耗正常不会达到那么高。
首先确认芯片有没有睡下去,测量的电流是否是休眠下的平均电流。是否有额外耗电的器材。可以将程序中TMOS事件循环都关掉,将GPIO休眠期间的外部电平接近的输入上拉/输入下拉,固定电平以减小漏电。未接出的引脚配置为输入上拉即可。或者使用shutdown模式,此模式下电流更低。