base program for tilt measurement

Dependencies:   COG4050_ADT7420 ADXL362

Fork of COG4050_adxl355_adxl357-ver2 by ADI_CAC

Files at this revision

API Documentation at this revision

Comitter:
vtoffoli
Date:
Wed Aug 08 11:57:16 2018 +0000
Parent:
3:ee052fdb4331
Child:
5:05af38b6375a
Commit message:
refresh;

Changed in this revision

ADXL35x/ADXL355.cpp Show annotated file Show diff for this revision Revisions of this file
ADXL35x/ADXL355.h Show annotated file Show diff for this revision Revisions of this file
ADXRS290/ADXRS290.cpp Show annotated file Show diff for this revision Revisions of this file
ADXRS290/ADXRS290.h Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/ADXL35x/ADXL355.cpp	Wed Aug 08 08:56:00 2018 +0000
+++ b/ADXL35x/ADXL355.cpp	Wed Aug 08 11:57:16 2018 +0000
@@ -76,7 +76,7 @@
     uint32_t ret_val = 0;
     adxl355.format(8, _SPI_MODE);
     cs = false;
-    adxl355.write(static_cast<uint8_t>(reg<<1) | _READ_REG_CMD);
+    adxl355.write((reg<<1) | _READ_REG_CMD);
     ret_val = adxl355.write(_DUMMY_BYTE);
     ret_val = (ret_val<<8) | adxl355.write(_DUMMY_BYTE);
     ret_val = (ret_val<<8) | adxl355.write(_DUMMY_BYTE);
--- a/ADXL35x/ADXL355.h	Wed Aug 08 08:56:00 2018 +0000
+++ b/ADXL35x/ADXL355.h	Wed Aug 08 11:57:16 2018 +0000
@@ -55,8 +55,8 @@
     typedef enum {
         DRDY_OFF = 0x04,
         TEMP_OFF = 0x02,
-        STANDBY = 0x00,
-        MEASUREMENT = 0x01
+        STANDBY = 0x01,
+        MEASUREMENT = 0x00
     } ADXL355_modes_t;    
     // Activate Threshold - ACT_EN  
     typedef enum {
--- a/main.cpp	Wed Aug 08 08:56:00 2018 +0000
+++ b/main.cpp	Wed Aug 08 11:57:16 2018 +0000
@@ -1,4 +1,5 @@
 #include "mbed.h"
+#include <inttypes.h>
 #include "ADXL355.h"
  
 Serial pc(USBTX, USBRX);
@@ -9,16 +10,28 @@
     pc.baud(9600);
     pc.printf("SPI ADXL355 and ADXL357 Demo\n");
     pc.printf("GET device ID\n");
-    uint8_t x; 
+    accl.reset();
+    uint8_t d; 
+        d=accl.read_reg(accl.DEVID_AD);
+        pc.printf("AD id = %x \r\n",d);
+        d=accl.read_reg(accl.DEVID_MST);
+        pc.printf("MEMS id = %x \r\n",d);
+        d=accl.read_reg(accl.PARTID);
+        pc.printf("device id = %x \r\n",d);
+        d=accl.read_reg(accl.REVID);
+        pc.printf("revision id = %x \r\n",d);
+    pc.printf("GET device data [x, y, z, t] \r\n");
+    accl.set_power_ctl_reg(accl.MEASUREMENT);
+    d=accl.read_reg(accl.POWER_CTL);
+    pc.printf("power control on measurement mode = %x \r\n",d);
+    uint32_t x,y,z;
+    uint16_t t;
     while(1) {
-        x=accl.read_reg(accl.DEVID_AD);
-        printf("AD id = %x \r\n",x);
-        x=accl.read_reg(accl.DEVID_MST);
-        printf("MEMS id = %x \r\n",x);
-        x=accl.read_reg(accl.PARTID);
-        printf("device id = %x \r\n",x);
-        x=accl.read_reg(accl.REVID);
-        printf("revision id = %x \r\n",x);
+        x = accl.scanx();
+        y = accl.scany();
+        z = accl.scanz();
+        t = accl.scant();
+        pc.printf("%f \t %u \t %u \t %u \r\n" ,x,y,z,t);
         wait(1.0);
   }
 }