BLE iBeacon Scan example for NNN40

Dependencies:   BLE_API BLE_iBeacon_Scan mbed-dev nRF51822

BLE iBeacon Scan example for NNN40

Revision:
0:17c37c570285
diff -r 000000000000 -r 17c37c570285 main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Nov 26 06:05:32 2015 +0000
@@ -0,0 +1,42 @@
+#include "mbed.h"
+#include "BLE.h"
+#include "iBeaconScan.h"
+
+Serial pc(TX_PIN_NUMBER, RX_PIN_NUMBER);
+DigitalOut led1(LED1);
+union unionType u;
+
+void AdvertisementReportCallback(const Gap::AdvertisementCallbackParams_t *params)
+{
+  led1 = !led1;
+  uint8_t i;
+  
+  if (memcmp(params->advertisingData,iBeaconPrefix,sizeof(iBeaconPrefix)) != 0)
+    return;
+  
+  memset(u.rawData, 0 , sizeof(u.rawData));
+  memcpy(u.rawData, params->advertisingData,params->advertisingDataLen);
+
+  pc.printf("uuid:");
+  for( i = 0; i < 16; i++)
+    pc.printf("%02x ",u.iBeaconPayload_m.uuid[i]);
+  pc.printf("\r\n");  
+  pc.printf("majorNumber:%02x %02x\r\n",u.iBeaconPayload_m.majorNumber[0], u.iBeaconPayload_m.majorNumber[1]);
+  pc.printf("minorNumber:%02x %02x\r\n",u.iBeaconPayload_m.minorNumber[0], u.iBeaconPayload_m.minorNumber[1]);
+  pc.printf("txPower:%02x\r\n",u.iBeaconPayload_m.txPower);
+}
+
+int main(void)
+{   
+    led1 = 0;
+    pc.baud(115200);
+    pc.printf("Hello\n"); 
+    
+    iBeaconInit();
+    iBeaconStartScan();
+    wait(10);
+    iBeaconStopScan();
+    
+    while(1) { 
+    }
+}