使用 RT1170 EVKB + IW612 进行 BLE 吞吐量测量
此应用程序演示了使用无线模块 IW612 在 RT1170 上进行 BLE 吞吐量测量。
主板:MIMXRT1170-EVKB
类别:无线连接
外设:UART
工具链:MCUXpresso IDE
目录
1.软件
2.硬件
3. 设置
3.1 导入示例
- 打开 MCUXpresso IDE,在快速启动面板中,选择从应用程序代码中心导入
- 在搜索栏中输入演示名称。
- 点击复制GitHub链接,MCUXpresso IDE将自动检索项目属性,然后单击下一步>。
- 选择主分支然后点击Next>,选择MCUXpresso工程,点击Finish按钮完成导入。
3.2 构建和烧写
- 连接WIFI IW612 BOARD MURATA 2EL M2模块。
- 使用 USB 电缆连接 PC 主机和目标板上的调试 USB 端口。
- 使用以下设置打开串行终端:
- 115200波特率
- 8个数据位
- 无奇偶校验
- 一个停止位
- 无流量控制
- 构建应用程序。
- 将程序刷入目标板。
- 按下重置按钮。
3.3 运行演示
- 应用程序启动
开机后,应用程序初始化并开始宣传自定义 GATT 服务(UUID:0x1AA1)。
控制台输出:
- 设备连接
使用兼容 BLE 的设备(Android/iOS)扫描附近的 BLE 外设。选择并连接到已发布的自定义 GATT 服务,或通过名称“BLEThroughputDemo”进行搜索。
注意:要更改广告名称,请更新 source/appbluetoothconfig.h 中分配给 CONFIGBTDEVICE_NAME 的字符串。 - 探索 GATT 服务
连接后,使用 BLE 扫描仪应用程序发现可用的 GATT 服务及其特性。 - 将 MTU 设置为 517
建立连接后,使用 BLE 扫描器应用程序或相应的 API 将 MTU 更新为 517。此操作对于确保应用程序正常运行并达到预期吞吐量至关重要。如果 MTU 设置失败,可能会导致帧数和吞吐量读数为零,如“结果”部分所示。
注意:请将“Ser Preferred PHY”更改为 1M PHY 或 2M PHY,以观察不同 PHY 级别的吞吐量差异。
- 订阅通知
订阅特性 (UUID 0xAABB) 的通知。启用通知并设置 MTU 后,连接的对等体将开始从自定义特性接收定期更新。在串行控制台输出中观察实时帧和吞吐量更新。
- 写入特征
将值写入可写特性 (UUID 0xCCDD)。确保值写入成功,特性也会相应更新。
- 读取特征
访问可读特性(UUID 0xAABB 或 0xEEFF)并检索其值。值会动态更新,可在应用中查看。
- 指示特征更新
订阅特征 (UUID 0xEEFF) 的指示。观察设备对更新的确认。
打开日志屏幕观察数据。
4.结果
运行固件后,观察到以下结果:
- 通知:订阅自定义特性的 Notify 属性,BLE 扫描器或连接的对等设备将自动接收定期更新。串行控制台中的输出将显示实时帧和吞吐量更新。预期输出如下所示:
已连接到对等方:49:D4:EC:4B:31:6D(随机) 49:D4:EC:4B:31:6D(随机)的密钥:048657 安全性已更改:F8:1A:2B:3F:31:04(公共)级别 4(错误 0) LE 数据长度更新已启动 已启用特性 1 的通知 帧:171(吞吐量 701kbps) 帧:100(吞吐量 410kbps) 帧:104(吞吐量 426kbps) 帧:117(吞吐量 480kbps)
注意:连接成功后,必须将 MTU 设置为 517 才能正常运行。如果 MTU 设置不正确,输出将显示零帧和吞吐量:
frames: 0(throughput 0kbps)?
frames: 0(throughput 0kbps)?
5. 常见问题解答
No FAQs have been identified for this project.
6. 支持
No URL
项目元数据
来源:恩智浦appcodehub
阅读全文