nrf51822 --- 固定广播通道
来源:互联网 发布:男生帽子 知乎 编辑:程序博客网 时间:2024/06/05 16:51
1.目的
是蓝牙广播固定在一个通道上面广播。
2.分析
蓝牙4.0共有3个广播信道和37个数据信道,3个广播信道分散在ISM频段的不同区域,如果他们集中在某个频段,则可能因为这个频段的深度衰弱而造成所有广播无法进行。因 此,各个广播信道直接至少相差24mhz
其中3个固定广播通道为:37, 38, 39,
3.平台:
协议栈版本:SDK10.0.0
编译软件:keil 5.14
硬件平台:nrf51822最小系统
例子:SDK 10.0.0\examples\ble_peripheral\ble_app_uart\pca10028\s110\arm4
4.步骤
ble_gap.h中
/**@brief Channel mask for RF channels used in advertising and scanning. */ typedef struct{ uint8_t ch_37_off : 1; /**< Setting this bit to 1 will turn off advertising on channel 37 */ uint8_t ch_38_off : 1; /**< Setting this bit to 1 will turn off advertising on channel 38 */ uint8_t ch_39_off : 1; /**< Setting this bit to 1 will turn off advertising on channel 39 */} ble_gap_adv_ch_mask_t;
可以看到设置为1为关闭,设置为0 为打开
在#include "ble_advertising.h"中
uint32_t ble_advertising_start(ble_adv_mode_t advertising_mode)
中添加如下代码
memset(&adv_params, 0, sizeof(adv_params)); adv_params.type = BLE_GAP_ADV_TYPE_ADV_IND; adv_params.p_peer_addr = NULL; adv_params.fp = BLE_GAP_ADV_FP_ANY; adv_params.p_whitelist = NULL; adv_params.channel_mask.ch_37_off = 0 ; //打开37通道 adv_params.channel_mask.ch_38_off = 1 ; //关闭38通道 adv_params.channel_mask.ch_39_off = 1 ; //关闭39通道
0 0
- nrf51822 --- 固定广播通道
- nrf51822 --- 广播间隔
- nrf51822 --- 广播的类型
- NRF51822 连续广播
- nrf51822-广播模式
- NRF51822通道设置的理解
- BLE-NRF51822教程8-动态广播
- BLE-NRF51822教程9-动态广播
- BLE-NRF51822教程8-动态广播
- BLE-NRF51822教程8-动态广播
- NRF51822
- nRF51822
- nrf51822 串口透传广播数据抓包讲解
- nrf51822教程 第一课 BLE Advertising 蓝牙广播
- 【BLE】CC2541之修改广播通道
- cvThreshold对单通道数组元素进行固定阈值操作
- Threshold 对单通道数组应用的固定阈值操作
- 广播与P2P通道(上) -- 问题与方案
- java深度复制 xjh 亲测 两种方法
- [iOS]按钮setBackgroundImage与setImage区别
- Android中notifyDataSetInvalidated()和notifyDataSetChanged()有什么区别
- sql笔记
- android MediaScanner 扫出来的ID3 MP3文件演唱者信息 乱码
- nrf51822 --- 固定广播通道
- 编译器一:程序设计语言、编译器和开发环境之间的关系
- iOS 上传文件
- equals VS ==
- mac 10.9下安装jdk8
- 继承JPanel的类不显示
- 读取流Demo
- 三层架构(MVC)实现简单登陆注册验证(含验证码)
- android枚举用法