BLE CC2540之自定义广播数据

BLE在从机模式下,可以向外发送广播。

首先先了解一下,BLE广播相关信息。

广播相关的参数大致有以下几种:

1.Advertising interval  (广播间隔)

2.Advertising_Type (广播类型)

3.Own_Address_Type(自身地址类型)

4.Direct_Address_Type(定向地址类型)

5.Direct_Address(定向地址)

6.Advertising_Channel_Map(广播信道)

7.Advertising_Filter_Policy(广播过滤策略)(白名单)

8.Advertising Data(广播数据)

9.ScanReponse Data(扫描回应数据)


广播一个包31个字节,第一个字节表示有几个有效数据。第二个字节表示数据类型AD Type之后才是数据。

广播间隔,是两次广播事件之间的最小时间间隔,一般值范围在 20ms~10.24s 之间。



// GAP - SCAN RSP data (max size = 31 bytes)
static uint8 scanRspData[] =
{
	// complete name
	0x11,	// length of this data
	GAP_ADTYPE_LOCAL_NAME_COMPLETE,
	0x42,	// 'B'
	0x6c,	// 'l'
	0x65,	// 'e'
	0x42,	// 'B'
	0x6c,	// 'l'
	0x65,	// 'e'
	0x65,	// 'e'
	0x6C,	// 'l'
	0x6C,	// 'l'
	0x00,	  
	
  // connection interval range
  0x05,   // length of this data
  GAP_ADTYPE_SLAVE_CONN_INTERVAL_RANGE,
  LO_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),   // 100ms
  HI_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),
  LO_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),   // 1s
  HI_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),

  // Tx power level
/*  0x02,   // length of this data
  GAP_ADTYPE_POWER_LEVEL,
  0       // 0dBm
  */
};

// GAP - Advertisement data (max size = 31 bytes, though this is
// best kept short to conserve power while advertisting)
static uint8 advertData[] =
{
	// Flags; this sets the device to use limited discoverable     最大广播31个字节
	// mode (advertises for 30 seconds at a time) instead of general
	// discoverable mode (advertises indefinitely)
	0x02,   // length of this data
	GAP_ADTYPE_FLAGS,
	DEFAULT_DISCOVERABLE_MODE | GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED,

	0x09,                      //
	GAP_ADTYPE_MANUFACTURER_SPECIFIC ,
	0x00,//6 mac
	0x00,
	0x00,
	0x00,
	0x00,
	0x00,
	0x01,//从机
	0xA5,//正常状态,5A--配对状态

	0x03,   // length of this data  数据长度
	GAP_ADTYPE_16BIT_MORE,      // some of the UUID's, but not all
	LO_UINT16( SIMPLEPROFILE_SERV_UUID ),
	HI_UINT16( SIMPLEPROFILE_SERV_UUID ) 

};


    GAPRole_SetParameter( GAPROLE_SCAN_RSP_DATA, sizeof ( scanRspData ), scanRspData );	
    GAPRole_SetParameter( GAPROLE_ADVERT_DATA, sizeof( advertData ), advertData );



  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值