当前文档版本为 v1.0.0,您可以访问当前页面的 开发中 版本以获取最近可能的更新。

09_ble_longrange 蓝牙长距离模式例程

1. 简介

本例程演示了如何使用PAN211x模块实现 BLE Long Range 模式。

2. BLE Long Range 模式介绍

BLE Long Range 模式也称为 Coded PHY 模式,在蓝牙 5 协议版本中引入,其目的是为了满足蓝牙应用在长距离通信上的需求。

原始的蓝牙协议支持1Mbps和2Mbps通信速率。长距离模式在1Mbps的基础上经过编码,每个数据位由2或8个符号表示,也就是S2或S8编码模式。编码后的速率变成了500Kbps或250kbps,如下表:

下图反映了这种编码模式在帧格式上如何体现:

alt text

图中,FEC Block 1 始终使用 S8 编码。CI(编码指示符)用于指示在 FEC 块 2 中使用哪种编码方案(S=2 或 S=8)。FEC Block 2 根据 CI 的配置使用 S2 或 S8 编码。

PAN211 在发射模式的1Mbps和250kbps下都支持S2和S8编码,在接受模式下,只要开启了相应的配置,硬件自动识别编码标识符,可以同时接收S2或S8的数据包。

3. 应用代码说明

基于 07_ble_beacon 例程和 08_ble_filter 例程,通过修改.S2S8Mode参数,我们可以很容易的实现 BLE Long Range 模式。

4. 例程演示

例程位置:01_SDK/example/09_ble_longrange

确保pan211_port.h中的EASY_RF宏定义为0,即#define EASY_RF 0

打开工程,编译后分别下载到两个PAN211x开发板上。

TX端日志:

CPU @ 64000000Hz
SPI-3LINE
Tx[1]
Tx[2]
Tx[3]

RX端日志:

CPU @ 64000000Hz

CPU @ 64000000Hz irq flag:0x01 Rx done[1] Header:0x42 RxLen:0x13 Payload:cc cc cc cc cc cc 06 09 50 41 4e 54 48 05 ff 58 58 aa bb irq flag:0x01 Rx done[2] Header:0x42 RxLen:0x13 Payload:cc cc cc cc cc cc 06 09 50 41 4e 54 48 05 ff 58 58 aa bb irq flag:0x01 Rx done[3] Header:0x42 RxLen:0x13 Payload:cc cc cc cc cc cc 06 09 50 41 4e 54 48 05 ff 58 58 aa bb