找回密码
 立即注册

微信扫码登录

查看: 291|回复: 3

[BLE SDK] 低功耗API的使用以及时间

[复制链接]

8

主题

3

回帖

80

积分

不屈白银

积分
80
发表于 2024-12-26 14:01:06 | 显示全部楼层 |阅读模式
Information
说明:   建议参照本版块置顶帖内容输入必要信息
芯片型号: 8258
SDK及版本: telink_b85m_ble_sdk_v4.0.1.3_2023032

我查阅多连接SDK开发手册时,低功耗管理章节看了两三遍也没太明白,有以下几个问题一直没得以解决,比较困惑,麻烦大神给点指示
进入低功耗好像只有cpu_sleep_wakeup()这个API可以设置进入低功耗的时间,而且还只有200+秒钟,而且只有timer和pad两种唤醒方式;那么

1、等到有master发送连接请求了,再退出sleep,等上5秒之后,如果主机还没发送需要的信号,slave又重新进入sleep,如果发送了就不进入sleep,又应该如何设置呢?
2、如果想设置更长的睡眠时间怎么设置呢?



3、如果用串口唤醒的话,怎么设置呢?

4、以及比如下面这情况,是通过cpu_sleep_wakeup()API设置的吗?,通过这个API设置的tick和这里的sleep时间有关吗?这情况和这个API有什么关系呢?
1735192437960.png

0

主题

27

回帖

136

积分

版主

积分
136
发表于 2024-12-27 10:48:03 | 显示全部楼层
(1)(4) 在Telink BLE Multiple Connection SDK中,如果当前有BLE任务,广播/扫描/连接,睡眠由BLE stack进行管控,用户不需要介入,但是用户可以在app_process_power_management()使用blc_pm_setSleepMask()配置当前是否暂时关闭sleep,比如当前正在按键或进行OTA。
(3) 如果用串口唤醒的话,建议配置UART_Rx_GPIO为低电平唤醒API cpu_set_gpio_wakeup(),在回调BLT_EV_FLAG_SLEEP_ENTER里将UART_Rx_GPIO配置为GPIO模式,在回调BLT_EV_FLAG_SUSPEND_EXIT里将UART_Rx_GPIO配置为UART模式。

当没有BLE任务(广播关闭/扫描关闭/连接断开),BLE stack不进行睡眠管控,程序在main_loop()循环转,这时用户可以使用API cpu_sleep_wakeup()自行管理睡眠时间,(2)当期望睡眠时间大于268秒可以使用API cpu_long_sleep_wakeup_32k_rc()自行管理睡眠时间。

8

主题

3

回帖

80

积分

不屈白银

积分
80
 楼主| 发表于 2025-1-2 20:02:43 | 显示全部楼层
TL_LLJ 发表于 2024-12-27 10:48
(1)(4) 在Telink BLE Multiple Connection SDK中,如果当前有BLE任务,广播/扫描/连接,睡眠由BLE stack进 ...

也就是说,我在多连接SDK里面打开了BLE_APP_PM_ENABLE这个宏定义,并且有 广播/扫描/连接这样的BLE任务,当广播完成后,stack会自动进入sleep状态(就像4问)????  那么进入的是suspend还是deepsleep retention呢???

0

主题

27

回帖

136

积分

版主

积分
136
发表于 2025-1-3 15:50:25 | 显示全部楼层
如果只打开BLE_APP_PM_ENABLE,协议栈在任务空闲时只会进入suspend。如果同时打开BLE_APP_PM_ENABLE和PM_DEEPSLEEP_RETENTION_ENABLE,协议栈在任务空闲时会进入suspend或deepsleep retention,会根据任务空闲的时间来选择进入哪个睡眠模式,空闲时间长进入deepsleep retention,空闲时间短进入suspend,空闲时间的门限是API blc_pm_setDeepsleepRetentionThreshold()设置的,默认配置为95ms。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Telink forum ( 沪ICP备17008231号-1 )

GMT+8, 2025-1-19 20:38 , Processed in 0.092568 second(s), 23 queries .

Powered by Telink 隐私政策

泰凌微电子版权所有 © 。保留所有权利。 2024

快速回复 返回顶部 返回列表