微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > CC2541连接微信的精简协议和完整协议

CC2541连接微信的精简协议和完整协议

时间:10-02 整理:3721RD 点击:

CC2541连接微信的精简协议和完整协议


微信精简协议规定:
设备需要广播包带上微信的service,并在manufature data里带上mac地址。
微信Service uuid:0xFEE7
manufature specific data:需以MAC地址(6字节)结尾。并且manufaturespecific data长度需大于等于8字节(最前两个字节为company id,没有的话随便填)。
微信service下面需包含一个读特征值,uuid为:0xFEC9,内容为6字节MAC地址(ios系统其他软件连上设备之后,微信会去读该特征值,以确定设备MAC地址)。
精简协议和完整协议是一样的。
adverData 和 scanResponseData 如下:
[html] view plain copy 在CODE上查看代码片派生到我的代码片
// GAP Profile - Name attribute for SCAN RSP data  
static uint8 scanResponseData[]=  
{  
    0x0E,   // length of this data  
    GAP_ADTYPE_LOCAL_NAME_COMPLETE,                                 //0X09  
    'W',  
    'P',  
    'I',  
    'A',  
    'T',  
    'U',  
    '_',  
    'W',  
    'e',  
    'c',  
    'h',  
    'a',  
    't',  
    0x05,   // length of this data  
    GAP_ADTYPE_SLAVE_CONN_INTERVAL_RANGE,                           //0X12  
    //MIN  
    LO_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),   // 100ms  
    HI_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),  
    //MAX  
    LO_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),   // 1s  
    HI_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),  
    0x02,   // length of this data  
    //TX Power Level  
    GAP_ADTYPE_POWER_LEVEL,                                         //0x0A  
    0       // 0dBm  
};  
#define ADVERT_MAC_ADDR         11  
uint8 advertData[]=  
{  
    // Flags; this sets the device to use limited discoverable  
    // mode (advertises for 30 seconds at a time) instead of general  
    // discoverable mode (advertises indefinitely)  
    0x02,   // length of this data  
    GAP_ADTYPE_FLAGS,                                               //0x01  
    DEFAULT_DISCOVERABLE_MODE | GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED,  
    // service UUID, to notify central devices what services are included  
    // in this peripheral  
    0x03,   // length of this data  
    //some of the UUID's, but not all  
    GAP_ADTYPE_16BIT_MORE,                                          //0x02  
    LO_UINT16( WECHAT_SERV_UUID ),  
    HI_UINT16( WECHAT_SERV_UUID ),  
    0x09, // length of this data (9 Bytes )  
    GAP_ADTYPE_MANUFACTURER_SPECIFIC,                               //0xFF  
    /*TI Pre-Amble*/  
    0x0D,  
    0x00,  
    /*Device MAC (6 Bytes)*/  
    0,0,0,0,0,0  
};  
微信协议要在广播包里加 MAC 地址,所以要在后面加一个度 MAC 地址的程序。
注:微信精简协议微信已经不主推了,所以也不要做了,AirSync 协议还是很流行的

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top