BLE iBeacon Scan example for NNN40
Dependencies: BLE_API BLE_iBeacon_Scan mbed-dev nRF51822
main.cpp
00001 #include "mbed.h" 00002 #include "BLE.h" 00003 #include "iBeaconScan.h" 00004 00005 Serial pc(TX_PIN_NUMBER, RX_PIN_NUMBER); 00006 DigitalOut led1(LED1); 00007 union unionType u; 00008 00009 void AdvertisementReportCallback(const Gap::AdvertisementCallbackParams_t *params) 00010 { 00011 led1 = !led1; 00012 uint8_t i; 00013 00014 if (memcmp(params->advertisingData,iBeaconPrefix,sizeof(iBeaconPrefix)) != 0) 00015 return; 00016 00017 memset(u.rawData, 0 , sizeof(u.rawData)); 00018 memcpy(u.rawData, params->advertisingData,params->advertisingDataLen); 00019 00020 pc.printf("uuid:"); 00021 for( i = 0; i < 16; i++) 00022 pc.printf("%02x ",u.iBeaconPayload_m.uuid[i]); 00023 pc.printf("\r\n"); 00024 pc.printf("majorNumber:%02x %02x\r\n",u.iBeaconPayload_m.majorNumber[0], u.iBeaconPayload_m.majorNumber[1]); 00025 pc.printf("minorNumber:%02x %02x\r\n",u.iBeaconPayload_m.minorNumber[0], u.iBeaconPayload_m.minorNumber[1]); 00026 pc.printf("txPower:%02x\r\n",u.iBeaconPayload_m.txPower); 00027 } 00028 00029 int main(void) 00030 { 00031 led1 = 0; 00032 pc.baud(115200); 00033 pc.printf("Hello\n"); 00034 00035 iBeaconInit(); 00036 iBeaconStartScan(); 00037 wait(10); 00038 iBeaconStopScan(); 00039 00040 while(1) { 00041 } 00042 }
Generated on Fri Jul 15 2022 07:12:30 by 1.7.2