Thread 中讨论的其他器件:SysConfig
我的工作方式与 GAP 绑定管理器和 LE 安全连接中的图90类似—SimpleLink CC13XX/CC26XX SDK BLE5-Stack 用户指南2.02.07.00文档
使用 simplelink_cc13xx_cc26xx_sdk_6_30_00_84。
使用 project_zero_CC26X2R1_LAUNCHXL_tirtos7_ticlang
按如下方式修改 PROJECT_ZERO
uint8_t peerDeviceAddr[B_ADDR_LEN];
GAP_Peer_Addr_Types_t pPeerAddrType;
gapBondRec_t pSaveBondRec;
gapBondLTK_t pLocalLtk;
gapBondLTK_t pPeerLtk;
uint8_t pPeerIRK[KEYLEN];
uint8_t pPeerSRK[KEYLEN];
uint32_t pPeerSignCount;
gapBondCharCfg_t charCfg;
空 GetBondInformation();
案例 GAP_LINK_established 事件: 在 void ProjectZero_processGapMessage (gapEventHdr_t * pMsg)中
memcpy (peerDeviceAddr、pPkt->devAddr、B_ADDR_LEN);
pPeerAddrType=(GAP_Peer_Addr_Types_t)(pPKT->devAddrType & MASK_ADDRTYPE_ID);
案例 GAPBOND_Pairing_State_Bond_Saved: In void ProjectZero_processPairState (pzPairStateData_t * pPairData)
if (status ==成功)
{
LOG_info0 ("债券储蓄成功");
GetBondInformation();
}
空 GetBondInformation()
{
uint8_t readStatus=故障;
pPeerSignCount = 0;
int i;
readStatus = gapBondMgrReadBondRec (pPeerAddrType、
peerDeviceAddr、
pSaveBondRec (&P)、
pLocalLtk (&P)、
&pPeerLtk,
pPeerIRK、
pPeerSRK、
pPeerSignCount、
charCfg);
if (readStatus =成功)
{
log_info0 ("gapBondMgrReadBondRec 成功\n");
#if 0
log_info0("Addr :");
for (i=0;i < 6;i++)
{
LOG_Info1 ("0x%x "、pSaveBondRec.addr[i]);
}
log_info0("addrType :");
log_info1 ("%d "、pSaveBondRec.addrType);
log_info0("stateFlags:");
log_info1 ("%d "、pSaveBondRec.stateFlags);
LOG_info0("local LTK :");
for (i=0;i < KEYLEN;i++)
{
LOG_Info1 ("0x%x "、pLocalLtk.LTK[i]);
}
log_info1 (" DIV:0x%x "、pLocalLtk.div);
log_info1 (" keysize:0x%x "、pLocalLtk.keysize);
log_info0("random:");
for (i=0;i < 8;i++)
{
LOG_Info1 ("0x%x "、pLocalLtk.rand[i]);
}
log_info0("peer LTK:");
for (i=0;i < KEYLEN;i++)
{
LOG_Info1 ("0x%x "、pPeerLtk.LTK[i]);
}
log_info1 (" DIV:0x%x "、pPeerLtk.div);
log_info1 (" keysize:0x%x "、pPeerLtk.keysize);
log_info0("random:");
for (i=0;i < 8;i++)
{
LOG_Info1 ("0x%x "、pPeerLtk.rand[i]);
}
log_info0("peer irk :");
for (i=0;i < KEYLEN;i++)
{
LOG_Info1 ("0x%x "、pPeerIRK[i]);
}
log_info0 ("对等 SRK:");
for (i=0;i < KEYLEN;i++)
{
LOG_Info1 ("0x%x "、pPeerSRK[i]);
}
log_info1 (" attattHandle:0x%04x "、charCfg.attattHandle);
log_info1 ("值:0x%02x "、charCfg.value);
#endif
}否则{
log_info0 ("gapBondMgrReadBondRec Failed \n");
}
}
绑定后、 我的手机将无法连接。
当多个低功耗蓝牙器件作为外设使用 gapBondMgrReadBondRec 和 gapBondMgrImportBond API 时、如何实现它以保持稳定。 我正在处理一个文件。 您能检查一下吗?
e2e.ti.com/.../project_5F00_zero_5F00_CC26X2R1_5F00_LAUNCHXL_5F00_tirtos7_5F00_ticlang.zip
此致、
否