CC2541 上微信与AirSync的验证服务与特征值



在做 CC2541 上微信的时候,最好配合 AirSyncDebugger 软件使用,这个软件只有安卓版本,下载地址:http://iot.weixin.qq.com/download.html;所有的相关资料都可以在这里下载,里面有个 Demo 程序,是基于 Nordic nRF51822 平台的。

在过 AirSyncDebugger 验证的时候,第一二步前面有说,这里说第三步。第三步主要是验证服务和特征值。wechatIOTAttrTbl[] 程序如下所示:

static gattAttribute_t wechatIOTAttrTbl[] =  
{  
    // wechatIOT Service  
    {  
        { ATT_BT_UUID_SIZE, primaryServiceUUID } ,  /* type */  
        GATT_PERMIT_READ ,                          /* permissions */  
        0 ,                                         /* handle */  
        (uint8 *)&wechatService                     /* pValue */  
    } ,  
    //  
    // Indicate  
    //  
    // 1. Characteristic Declaration  
    {  
        { ATT_BT_UUID_SIZE, characterUUID },  
        GATT_PERMIT_READ,  
        0,  
        &wechatIndicateProps  
    },  
    // 2. Characteristic Value  
    {  
        { ATT_BT_UUID_SIZE, wechatIndicateUUID },  
        0, //return READ_NOT_PERMITTED  
        0,  
        &wechatIndicate  
    },  
    // 3.Characteristic Configuration  
    {  
        { ATT_BT_UUID_SIZE, clientCharCfgUUID },  
        GATT_PERMIT_READ | GATT_PERMIT_WRITE,  
        0,  
        (uint8 *)&wechatIndicateConfig  
    },  
    //  
    // Write  
    //  
    // 4.Characteristic Declaration  
    {  
        { ATT_BT_UUID_SIZE, characterUUID },  
        GATT_PERMIT_READ,  
        0,  
        &wechatWriteProps  
    },  
    // 5.Characteristic Value  
    {  
        { ATT_BT_UUID_SIZE, wechatWriteUUID },  
        GATT_PERMIT_READ | GATT_PERMIT_WRITE,  
        0,  
        &wechatWrite[0]  
    },  
    //  
    // Read  
    //  
    // 6.Characteristic Declaration  
    {  
        { ATT_BT_UUID_SIZE, characterUUID },  
        GATT_PERMIT_READ,  
        0,  
        &wecharReadProps  
    },  
    // 7.Characteristic Value  
    {  
        { ATT_BT_UUID_SIZE, wecharReadUUID },  
        GATT_PERMIT_READ ,  
        0 ,  
        &ownAddress[0]  
    } ,  

} ;  


这里是 BLE 设备与 微信 连接的关键部分,只有这里对了,才能正确的连接和数据交换。当然还有写其他的地方,都不是重点,就不再这里写了。

这一块如果不熟悉的话理解起来还是比较麻烦的,我也是先做了一年多的蓝牙,把 CCC2541 的所有重要的地方都熟悉过了,在看上微信的程序才很容易,但是后面的封包、认证的程序就理解起来很困难,因为根本没有接触过。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值