Fixed algorithm to read 3 bytes of accelerometer data registers
Fork of COG4050_adxl355_adxl357 by
Diff: main.cpp
- Revision:
- 4:23b53636b576
- Parent:
- 3:ee052fdb4331
- Child:
- 5:05af38b6375a
--- 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); } }