CC2640获取手机RSSI
初始条件
-
手机设置
安卓手机安装 nRF Connect,工作在central模式,可连接多个Ble peripheral -
CC2640
使用 simplelink_cc2640r2_sdk_1_40_00_45 ,作为Ble peripheral与手机连接
代码修改
sdk中仅有蓝牙 central获取信号强度的代码,而需求是实现多个CC2640能够获取同时获取一部手机的信号强度,因此有以下两种方式选择:
可连接方式 | 不可连接方式 |
---|---|
手机:central | 手机:broadcast |
设备:peripheral | 设备:observer |
由于过程需要识别的是一部特定手机,采用不可连接方式不易实现,因此选择采用可连接的方式,绑定过程暂且不处理,先来实现信号获取过程。
网上能查到cc2540 peripheral模式获取信号强度的一些文章,通过修改simple_peripheral.c设置GAPROLE_RSSI_READ_RATE并添加读取rssi的回调来实现,GAPRole_SetParameter(GAPROLE_RSSI_READ_RATE,sizeof(uint16),&desired_rssi_rate);
查阅深层