- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
cc2640和安卓配对,短时间没输入密码界面就自动消失了?
cc2640和安卓配对,短时间没输入密码界面就自动消失了?
我在用cc2640和安卓手机做配对和绑定实验时,在ProcessPairStateCB()函数中,进入不了GAPBOND_PAIRING_STATE_COMPLETE这个状态,我的安卓手机用的APP是TI的BLE Device Monitor,cc2640用的例程是simpleBLEPeripheral,如下图
另外一个现象是安卓手机的APP界面如果我没有及时输入秘密,待会输入界面就自动消失了.
不知可能的原因是什么?
从原理上分析
//uint8 pairMode = GAPBOND_PAIRING_MODE_WAIT_FOR_REQ;
//除非其中一个配置成GAPBOND_PAIRING_MODE_INITIATE, 如果是central的话会发起pairing request, 如果是peripheral的话会发起slave security request,
//最终会导致central那端收到 GAP_SLAVE_REQUESTED_SECURITY_EVENT, 这个时候如果central也是出于GAPBOND_PAIRING_MODE_WAIT_FOR_REQ,那么还是会发起配对.
//所以, 只要其中一个设置成GAPBOND_PAIRING_MODE_INITIATE, 两边就会配对, 如果都是GAPBOND_PAIRING_MODE_WAIT_FOR_REQ, 那么就没有配对过程.
uint8 pairMode = GAPBOND_PAIRING_MODE_INITIATE;//GAPBOND_PAIRING_MODE_INITIATE一方设置为初始化就可以实现连接 既然没有完成密码配对,自然也进行不到结果判断。
if ( state == GAPBOND_PAIRING_STATE_COMPLETE )/*当主机提交密码后,会进入完成*/