在 GAP_DEVICE_INFO_EVENT
#if 0
{
//读广播包或扫描应答包的某个数据段
uint8 adType = GAP_ADTYPE_FLAGS; //需要扫描的类型数据
uint8 adTypeData_index = 0; //数据段在数据包中的偏移值
uint8 adTypeData_len = 0; //数据段的长度
bool status = FALSE;
status = Get_Adtype_Data( adType,
pEvent->deviceInfo.pEvtData,
pEvent->deviceInfo.dataLen,
&adTypeData_index,
&adTypeData_len);
if(status == TRUE)
{
NPI_PrintString("GAP_ADTYPE_FLAGS:");
NPI_WriteTransport((uint8 *)(Hex_To_Str(pEvent->deviceInfo.pEvtData + adTypeData_index)),
adTypeData_len*2);
NPI_PrintString("\r\n");
NPI_PrintValue("size:", adTypeData_len, 10);
NPI_PrintString("\r\n");
}
}
#else
//读广播包或扫描应答包的某个数据段
uint8 adType = GAP_ADTYPE_16BIT_MORE; //需要扫描的类型数据
uint8 adTypeData_index = 0; //数据段在数据包中的偏移值
uint8 adTypeData_len = 0; //数据段的长度
bool status = FALSE;
status = Get_Adtype_Data( adType,
pEvent->deviceInfo.pEvtData,
pEvent->deviceInfo.dataLen,
&adTypeData_index,
&adTypeData_len);
if(status == TRUE)
{
char str[20];
g_SensorValue[per_index-1][0] = *(pEvent->deviceInfo.pEvtData + adTypeData_index+2);
g_SensorValue[per_index-1][1] = *(pEvent->deviceInfo.pEvtData + adTypeData_index+3);
g_SensorValue[per_index-1][2] = *(pEvent->deviceInfo.pEvtData + adTypeData_index+4);
g_SensorValue[per_index-1][3] = *(pEvent->deviceInfo.pEvtData + adTypeData_index+5);
g_adc[per_index-1] = 256* (*(pEvent->deviceInfo.pEvtData + adTypeData_index+6)) + *(pEvent->deviceInfo.pEvtData + adTypeData_index+7);
sprintf(str, "[%d]:%d.%d,%d.%d,%d",per_index,g_SensorValue[per_index-1][0], g_SensorValue[per_index-1][1],g_SensorValue[per_index-1][2], g_SensorValue[per_index-1][3],g_adc[per_index-1]);
NPI_PrintString(str);
NPI_PrintString("\r\n");
LCD_WRITE_STRING( str, HAL_LCD_LINE_1+per_index );
}
#endif
|