微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI无线射频设计 > CC2540 蓝牙BLE的控制权

CC2540 蓝牙BLE的控制权

时间:12-23 整理:3721RD 点击:

我现在做BLE的RGB调色灯,手机独占绑定模式防止丢失控制权,不知道这个功能怎么做比较好

 

能不能直接读到手机的BLE唯一的设别ID,进行保存,下次设别,发广播的时候能不能选择可连接的设备?

已经和CC250连接过的手机,下次连接,CC250不发广播包,能不能实现自动连接你?

 

 

还是说连接必须要CC2540发出广播,手机进行配对

CC2540必须要发广播包, 手机才能进行连接.

如果你想绑定连接的手机, 可以在第二次连接的时候用direct的广播包, 让指定的手机才能和CC2540连上.

YAN 有没有相关的例程或者资料?

请问指定的手机,指定的是手机那些信息?是不是下面的地址?这个地址怎么获得,怎么指定?

#define GAPROLE_ADV_DIRECT_ADDR 0x30B //!< Direct Advertisement Address. Read/Write. Size is uint8[B_ADDR_LEN]. Default is NULL.

 

没错. 就是这个地址.

如果手机发送连接请求的广播包里面带的是自己的public物理地址的话, 就能用这个方法.

public物理地址 怎么从连接请求的广播包里面获取?发广播的时候怎么指定?

在连接建立后, 收到 GAP_LINK_ESTABLISHED_EVENT 事件时, 会带对方的地址, 可以从这里获得.

Yan 非常感谢

gapEstLinkReqEvent_t->devAddr[B_ADDR_LEN]; //!< Device address of link

Yan

这个地址好像是随机的,每次关闭IOS蓝牙 重新打开 再连接,没有一次是一样的。

对于IOS是没有办法, 因为IOS用的是随机地址.

好消息是google已经宣称Android要官方支持BLE了, 马上就会出了.

Yan 我看过你的一个帖子,有说是随机的,但是没死心。 我们现在打算用应用的方式来区分了。 谢谢你的耐心回答。

good,

通过应用总会有办法的 :)

gapEstLinkReqEvent_t->devAddr[B_ADDR_LEN];

请问你这个的结构体是什么,我从哪个结构体可以获得手机的mac地址呢?

SimpleBLEPeripheral_ProcessEvent( uint8 task_id, uint16 events )

是这个函数接收的这个事件吗?如果不是是哪个呢?

GAP_LINK_ESTABLISHED_EVENT 这个事件是哪个函数接收的啊?

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

网站地图

Top