this is program how build nRF51822 to get ADXL345 data

Dependencies:   BLE_API mbed nRF51822

Fork of ADXL345_I2C by Peter Swanson

Revision:
11:a60e398f9032
Parent:
10:e5ee9515f4a2
Child:
12:58823c0cdf99
--- a/main.cpp	Sat Dec 09 02:06:19 2017 +0000
+++ b/main.cpp	Sat Dec 09 03:13:24 2017 +0000
@@ -41,9 +41,6 @@
     if ((uartServicePtr != NULL) && (params->handle == uartServicePtr->getTXCharacteristicHandle())) {
         uint16_t bytesRead = params->len;
         DEBUG("received %u bytes %s\n\r", bytesRead,params->data);
-        /*uint16_t bytesRead = params->len;
-        DEBUG("received %u bytes\n\r", bytesRead);
-        ble.updateCharacteristicValue(uartServicePtr->getRXCharacteristicHandle(), params->data, bytesRead);*/
     }
 }
 
@@ -53,9 +50,9 @@
 }
 
 int threshold =80;
-int xval[100]={0};
-int yval[100]={0};
-int zval[100]={0};
+int xval[10]={0};
+int yval[10]={0};
+int zval[10]={0};
 int xavg;
 int yavg;
 int zavg;
@@ -66,14 +63,14 @@
    int readings[3] = {0, 0, 0};
    led1=1;
    long int sum1  = 0;
-   for (int i=0; i<100; i++)
+   for (int i=0; i<10; i++)
    {
        accelerometer.getOutput(readings);
        xval[i]=(readings[0]);  //nilai x adxl345
-       sum1 = xval[i]+sum1;
+       sum1 = yval[i]+sum1;
    }
    
-   xavg=sum1/100.0;
+   xavg=sum1/10.0;
 
    led1=0;     
    return xavg;
@@ -83,13 +80,13 @@
    int readings[3] = {0, 0, 0};
    led1=1;
    long int sum2 = 0;
-   for (int i=0; i<100; i++)
+   for (int i=0; i<10; i++)
    {
        accelerometer.getOutput(readings);
         yval[i]=(readings[1]); //nilai y adxl345
        sum2 = yval[i]+sum2;
    }
-   yavg=sum2/100.0;
+   yavg=sum2/10.0;
    led1=0;     
    return yavg;
 }
@@ -99,14 +96,14 @@
     
    led1=1;
    long int sum3 = 0;
-   for (int i=0; i<100; i++)
+   for (int i=0; i<10; i++)
    {
        accelerometer.getOutput(readings);
         zval[i]=(readings[2]); //nilai z adxl345
        sum3 = zval[i]+sum3;
    }
    
-   zavg=sum3/100.0;
+   zavg=sum3/10.0;
    led1=0;     
    return zavg;
 }
@@ -137,11 +134,21 @@
        
        // Test Daata
        memset(&buffer, 0, sizeof(buffer));
+/*       int16_t reading_1= 0;
+       int16_t reading_2= 0;
+       int16_t reading_3= 0;
+       int16_t avg_1= 0;
+       int16_t avg_2= 0;
+       int16_t avg_3= 0;*/
+       
+       int16_t lang     = 0;
        int16_t perc     = 0;
        int16_t kec      = 0;
        int16_t jar      = 0;
        int16_t ting     = 0;
-       snprintf(buffer, 20, "data: %d,%d,%d,%d\n",(int16_t)perc,(int16_t)kec,(int16_t)jar,(int16_t)ting);
+       snprintf(buffer, 20, "data: %d,%d,%d,%d,%d\n",(int16_t)lang,(int16_t)perc,(int16_t)kec,(int16_t)jar,(int16_t)ting);
+/*       snprintf(buffer, 20, "data: %d,%d,%d,%d,%d,%d\n",(int16_t)reading_1,(int16_t)reading_2,(int16_t)reading_3,(int16_t)avg_1,(int16_t)avg_2,(int16_t)avg_3);*/
+
        
     led1 = 1;
     uart1.baud(9600);
@@ -197,7 +204,14 @@
          wait(0.1);
          accelerometer.getOutput(readings);
          uart1.printf("%i, %i, %i\n", (int16_t)readings[0], (int16_t)readings[1], (int16_t)readings[2]);
+/*         memset(&buffer, 0, sizeof(buffer));
+         snprintf(buffer, 20, "data: %d,%d,%d\n\n", (int16_t)readings[0],(int16_t)readings[1],(int16_t)readings[0]);
+         ble.updateCharacteristicValue(uartServicePtr->getRXCharacteristicHandle(), (uint8_t*)buffer, sizeof(buffer), false);*/
+         
          uart1.printf("%i, %i, %i\n", (int16_t)avg1, (int16_t)avg2, (int16_t)avg3);
+/*         memset(&buffer, 0, sizeof(buffer));
+         snprintf(buffer, 20, "data: %d,%d,%d\n\n", (int16_t)avg1,(int16_t)avg2,(int16_t)avg3);
+         ble.updateCharacteristicValue(uartServicePtr->getRXCharacteristicHandle(), (uint8_t*)buffer, sizeof(buffer), false);*/
          wait(0.1);
          
          
@@ -255,8 +269,9 @@
          if (totave[i] < threshold && flag == 1)
              {flag=0;}
              uart1.printf("steps: %i\n", (int16_t)steps);
-             ble.updateCharacteristicValue(uartServicePtr->getRXCharacteristicHandle(), (uint8_t*)steps, sizeof(steps), false);
-  
+             memset(&buffer, 0, sizeof(buffer));
+             snprintf(buffer, 20, "steps: %d\n", (int16_t)steps);
+             ble.updateCharacteristicValue(uartServicePtr->getRXCharacteristicHandle(), (uint8_t*)buffer, sizeof(buffer), false);
              
         }
     }