【PB-03F-kit】收发广播包

[复制链接]
查看219 | 回复5 | 前天 10:18 | 显示全部楼层 |阅读模式
本帖最后由 东东3 于 2024-12-2 11:47 编辑

一、蓝牙广播基本概念
蓝牙广播是指蓝牙设备通过发送广播数据包来向外传递信息,而无需与其他设备建立连接。这种方式广泛应用于智能家居、可穿戴设备、位置服务和医疗健康等领域。蓝牙低功耗(BLE)设备通过这种方式可以被其他设备(如手机、中央设备)发现和识别。
广播包收发的例程在SDKPhyPlusPhy目录下,以smart_nrf为例介绍使用方法。需准备两个蓝牙模块,一个配置为发送端一个为接收端,烧录程序后可使用接收端串口查看发送端发送的数据。

二、收发模式选择
初始化函数中共有两个部分,分别为配置蓝牙广播基本配置与收发模式的选择
  1. void osalInitTasks( void )
  2. {
  3.     uint8 taskID = 0;
  4.     tasksEvents = (uint16*)osal_mem_alloc( sizeof( uint16 ) * tasksCnt);
  5.     osal_memset( tasksEvents, 0, (sizeof( uint16 ) * tasksCnt));
  6.     /* Application */
  7.     PhyPlusPhy_Init( taskID++ );//参数配置
  8.     Smart_nRF_Init(taskID++);//选择收发模式
  9. }
复制代码
系统默认使用检测P0端口电平配置收发模式,高为发送、低为接收,在进行二开时可根据自己需求直接配置相应模式
1.png
三、广播包发送
在参数配置函数中可中有设置广播报文格式:
s_pubAddr为接收需要匹配的校验字段
s_pktCfg.pduLen广播数据长度
advHead为设置广播数据帧头标识与数据长度
2.png
Smart_nRF_ProcessEvent事件处理任务中用户可根据实际需要修改advertData内容,再调用phy_rf_start_tx();函数发送一次广播。
3.png
四、广播包接收
接收部分处理官方已经为我们处理好了,直接追到phy_plus_phy.c文件下,数据会存储在pData数组中,在接收后可新建一个缓存BUFF将刚播数据存储起来。
接收的数据格式为:包头+校验+数据
除此之外还包括了数据信号值、频率及字符宽度
4.png




回复

使用道具 举报

爱笑 | 前天 10:24 | 显示全部楼层
不错不错~
用心做好保姆工作
回复

使用道具 举报

干簧管 | 前天 11:18 | 显示全部楼层
太深奥了,没看懂
回复 支持 反对

使用道具 举报

东东3 | 前天 11:49 | 显示全部楼层
干簧管 发表于 2024-12-2 11:18
太深奥了,没看懂

相当于不用建立连接的无线透传模块,自带了休眠模式功耗很低
回复 支持 反对

使用道具 举报

大猫的鱼 | 前天 11:58 | 显示全部楼层
回复

使用道具 举报

bzhou830 | 前天 14:50 | 显示全部楼层
那就是两个模组可以做个遥控加一个小车,好玩
选择去发光,而不是被照亮
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则