mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-02 03:00:34 +03:00
docs(ble): Replaced BLE with Bluetooth LE
This commit is contained in:
@@ -8,13 +8,13 @@
|
||||
低功耗模式下的时钟源选择
|
||||
--------------------------------------------
|
||||
|
||||
在低功耗蓝牙应用场景中,由于协议要求休眠时钟精度需在 500 PPM 以内,light-sleep 和 modem-sleep 模式下所用的时钟源必须满足该要求。如果时钟精度不足,可能会出现 ACL 连接失败或超时断开等问题。**因此在使用前请确保所选时钟源及其精度满足 BLE 要求。**
|
||||
在低功耗蓝牙应用场景中,由于协议要求休眠时钟精度需在 500 PPM 以内,light-sleep 和 modem-sleep 模式下所用的时钟源必须满足该要求。如果时钟精度不足,可能会出现 ACL 连接失败或超时断开等问题。**因此在使用前请确保所选时钟源及其精度满 要求。**
|
||||
|
||||
|
||||
选择主晶振
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
要选择主晶振作为 BLE 内部时钟源,请配置以下选项:
|
||||
要选择主晶振作为低功耗蓝牙内部时钟源,请配置以下选项:
|
||||
|
||||
.. only:: esp32 or esp32c3 or esp32s3
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
选择 32kHz 外部晶振
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
要使用 32kHz 外部晶振作为 BLE 内部时钟源,请配置以下选项:
|
||||
要使用 32kHz 外部晶振作为低功耗蓝牙内部时钟源,请配置以下选项:
|
||||
|
||||
.. only:: esp32 or esp32c3 or esp32s3
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
|
||||
- \ (X) External 32 kHz crystal
|
||||
|
||||
**注意:** 即使在 menuconfig 中选择了 32kHz 外部晶振,如果 BLE 初始化时未检测到外部晶振,系统会自动切换为主晶振,可能导致 light-sleep 电流高于预期。
|
||||
**注意:** 即使在 menuconfig 中选择了 32kHz 外部晶振,如果低功耗蓝牙初始化时未检测到外部晶振,系统会自动切换为主晶振,可能导致 light-sleep 电流高于预期。
|
||||
|
||||
|
||||
选择 136 kHz RC 振荡器
|
||||
@@ -91,7 +91,7 @@
|
||||
|
||||
.. only:: esp32c3 or esp32s3
|
||||
|
||||
要使用 136 kHz 内部 RC 振荡器作为 BLE 内部时钟源,请配置以下选项:
|
||||
要使用 136 kHz 内部 RC 振荡器作为低功耗蓝牙内部时钟源,请配置以下选项:
|
||||
|
||||
**配置路径:**
|
||||
|
||||
@@ -101,15 +101,15 @@
|
||||
|
||||
- \ (X) Internal 136kHz RC oscillator
|
||||
|
||||
一般来说,136 kHz RC 振荡器难以满足 BLE 的精度要求,仅适用于对时钟精度要求不高的场景,如传统广播 (ADV) 或扫描 (SCAN)。它不支持以中心角色或外设角色建立连接。
|
||||
一般来说,136 kHz RC 振荡器难以满足低功耗蓝牙的精度要求,仅适用于对时钟精度要求不高的场景,如传统广播 (ADV) 或扫描 (SCAN)。它不支持以中心角色或外设角色建立连接。
|
||||
|
||||
.. only:: esp32
|
||||
|
||||
**注意:** ESP32 不支持 136 kHz RC 振荡器作为 BLE 时钟源。
|
||||
**注意:** ESP32 不支持 136 kHz RC 振荡器作为低功耗蓝牙时钟源。
|
||||
|
||||
.. only:: esp32c2 or esp32c6 or esp32h2 or esp32c5 or esp32c61
|
||||
|
||||
要使用 136 kHz 内部 RC 振荡器作为 BLE 内部时钟源,请配置以下选项:
|
||||
要使用 136 kHz 内部 RC 振荡器作为低功耗蓝牙内部时钟源,请配置以下选项:
|
||||
|
||||
**配置路径 1:**
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
|
||||
- \ (X) Internal 136 kHz RC oscillator
|
||||
|
||||
对于需要低功耗且没有 32kHz 外部晶振的场景下,可以选择 136 kHz R C振荡器。然而这个时钟无法满足 BLE 的 500PPM 的休眠时钟精度需求。不过如果对端设备使用的是 ESP 芯片,仍能支持 BLE 行为。但是如果对端设备并非使用 ESP 芯片,则使用下面 BLE 行为将无法支持:
|
||||
对于需要低功耗且没有 32kHz 外部晶振的场景下,可以选择 136 kHz R C振荡器。然而这个时钟无法满足低功耗蓝牙的 500PPM 的休眠时钟精度需求。不过如果对端设备使用的是 ESP 芯片,仍能支持低功耗蓝牙行为。但是如果对端设备并非使用 ESP 芯片,则使用下面低功耗蓝牙行为将无法支持:
|
||||
|
||||
1. 作为连接的 Central 方
|
||||
2. 作为 Periodic Advertising 的广播方
|
||||
@@ -146,12 +146,12 @@
|
||||
**注意:** 使用 136 kHz RC 振荡器可能偶发连接断开或连接失败。
|
||||
|
||||
|
||||
**如何确认当前 BLE 使用的时钟源**
|
||||
**如何确认当前低功耗蓝牙使用的时钟源**
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
可通过 BLE 初始化时的日志判断当前时钟源:
|
||||
可通过低功耗蓝牙初始化时的日志判断当前时钟源:
|
||||
|
||||
.. list-table:: BLE 初始化日志与时钟源对应关系
|
||||
.. list-table:: 低功耗蓝牙初始化日志与时钟源对应关系
|
||||
:widths: 50 50
|
||||
:header-rows: 1
|
||||
|
||||
@@ -170,10 +170,10 @@
|
||||
常见问题
|
||||
--------------------------------------
|
||||
|
||||
**1. BLE ACL 连接在低功耗模式下建立失败或断开**
|
||||
**1. 低功耗蓝牙 ACL 连接在低功耗模式下建立失败或断开**
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
如时钟源选择部分所述,ACL 连接建立失败或断开时,请首先检查当前时钟源是否满足 BLE 精度要求。
|
||||
如时钟源选择部分所述,ACL 连接建立失败或断开时,请首先检查当前时钟源是否满足低功耗蓝牙精度要求。
|
||||
|
||||
|
||||
**2. 实测 light-sleep 电流高于预期**
|
||||
@@ -181,11 +181,11 @@
|
||||
|
||||
如时钟源选择部分所述,若主晶振为时钟源,light-sleep 模式下主晶振持续供电,电流消耗高于其他时钟源。
|
||||
|
||||
平均电流可能会因具体应用而异,并取决于 BLE 的配置以及处于 light-sleep 模式的时间周期。某些应用的平均电流可能会更大,这是因为 BLE 在其中花费了更高比例的时间进行发射和接收。
|
||||
平均电流可能会因具体应用而异,并取决于低功耗蓝牙的配置以及处于 light-sleep 模式的时间周期。某些应用的平均电流可能会更大,这是因为低功耗蓝牙在其中花费了更高比例的时间进行发射和接收。
|
||||
|
||||
**3. 无法进入 light-sleep 模式**
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
启用 Auto light-sleep 后,若设备无法进入 light-sleep,通常是 IDLE 时间不足,未满足自动进入条件。
|
||||
|
||||
这可能由日志过多或 BLE 配置导致 IDLE 时间过短(如连续扫描)引起。
|
||||
这可能由日志过多或低功耗蓝牙配置导致 IDLE 时间过短(如连续扫描)引起。
|
||||
|
||||
Reference in New Issue
Block a user