TI中文支持网
TI专业的中文技术问题搜集分享网站

请帮忙解决BLE蓝牙低功耗配置问题

例程为SimpleBLEPeripheral   芯片2540

开启POWER_SAVING后调试

断点osal_pwrmgr_device( PWRMGR_BATTERY );程序试行此句后,pwrmgr_attribute.pwrmgr_device变为0x01(PWRMGR_BATTERY )没有问题。

继续向下执行到处理任务events = (tasksArr[idx])( idx, events );时,程序又再次跳转到osal_pwrmgr_device函数,并将0x01改为0x00(PWRMGR_ALWAYS_ON)

导致后面判断if ( pwrmgr_attribute.pwrmgr_device != PWRMGR_ALWAYS_ON )出错,,,无法进入sleep.

我watch执行任务处理函数events = (tasksArr[idx])( idx, events );时,idx=0;events=128

请问为什么会再次跳到osal_pwrmgr_device函数?是哪里问题导致无法进入sleep.

谢谢

bevis:

回复 kqian0327:

您好,我用的是ti的例程。在此基础上有所修改,增加了按键显示处理等应用层程序,增加部分我感觉应该不会影响协议栈。

我想知道的是 为什么 处理任务函数指针events = (tasksArr[idx])( idx, events );会跳转到osal_pwrmgr_device函数?

是因为调用的LL_ProcessEvents函数进入的吗?

赞(0)
未经允许不得转载:TI中文支持网 » 请帮忙解决BLE蓝牙低功耗配置问题
分享到: 更多 (0)