在和手机配对后,会生成ACI_GAP_PAIRING_COMPLETE_VSEVT事件,然后可以通过aci_gap_get_bonded_devices函数来获取配对后的设备地址:
在app_ble.c中:
/* USER CODE BEGIN ACI_GAP_PAIRING_COMPLETE_VSEVT_CODE*/
/* USER CODE END ACI_GAP_PAIRING_COMPLETE_VSEVT_CODE*/
内添加代码:
if (p_pairing_complete->Status == 0)
{
APP_DBG_MSG(" - Pairing Success \n" );
uint8_t num_devices;
Bonded_Device_Entry_t devices[5]; // 假设最大支持5个设备
tBleStatus status = aci_gap_get_bonded_devices(&num_devices, devices);
if (status == BLE_STATUS_SUCCESS) {
for (int i = 0; i < num_devices; i++) {
APP_DBG_MSG("Device %d Address: %02X -- %02X:%02X:%02X:%02X:%02X:%02X\n",
i+1,
devices[i].Address_Type,
devices[i].Address[5],
devices[i].Address[4],
devices[i].Address[3],
devices[i].Address[2],
devices[i].Address[1],
devices[i].Address[0]);
}
}
}
打印出配对后的白名单地址