请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:CC2640 您好!
我想从启用绑定的已连接设备(智能手机)更改 simpleBLEperipheral 上的默认密钥。 我的 GAP 绑定管理器配置初始化如下:
//设置 GAP 绑定管理器 { uint32_t 密钥= 123456;// 6位密钥"000000" uint8_t pairMode = GAPBOND_Pairing_mode_initiate;//GAPBOND_Pairing_mode_initiate;//GAPBOND_Pairing_mode_wait_for_Req; uint8_t MIPTM = true; uint8_t ioCap = GAPBOND_IO_CAP_DISPLAY_ONLY; uint8_t 绑定= true; GAPBondMgr_SetParameter (GAPBOND_DEFAULT_PASSONE、sizeof (uint32_t)、和 PASSKEY); GAPBondMgr_SetParameter (GAPBOND_Pairing_mode、sizeof (uint8_t)、&pairMode); GAPBondMgr_SetParameter (GAPBOND_MITM_protection、sizeof (uint8_t)、&MIPTM); GAPBondMgr_SetParameter (GAPBOND_IO_Capabilities、sizeof (uint8_t)、&ioCap); GAPBondMgr_SetParameter (GAPBOND_BUSIONIND_ENABLED、sizeof (uint8_t)、&bonding); }
但是、当我通过属性从 Android 设备发送新的32位密钥并将其传递给以下函数时:
GAPBondMgr_SetParameter (GAPBOND_DEFAULT_PASSONE、sizeof (uint32_t)、和 PASSKEY);
。 然后系统崩溃,代码卡在此处:
/ //* 中止-异常程序终止。 当前只是暂停执行。 */ ********* / void abort (void) { loader_exit(); 对于(;;);/*永久旋转*/ }
是否可以通过这种方式更新密钥,或者是否需要自己添加一个层来管理用户定义的密钥? 我的项目基于 ble_sdk_2_02_01_18
提前感谢您的帮助
此致、
Robin B.