test
This commit is contained in:
parent
d32394d724
commit
cc4e64016c
18
lis3dh.c
18
lis3dh.c
@ -1,4 +1,5 @@
|
||||
#include <stdio.h>
|
||||
#include <math.h>
|
||||
#include "lis3dh.h"
|
||||
#include "registers.h"
|
||||
|
||||
@ -247,6 +248,10 @@ int lis3dh_read(lis3dh_t *lis3dh) {
|
||||
return err;
|
||||
}
|
||||
|
||||
static double mag(double x, double y, double z) {
|
||||
return sqrt( powf(x, 2) + powf(y, 2) + powf(z, 2) );
|
||||
}
|
||||
|
||||
int lis3dh_read_fifo(lis3dh_t *lis3dh) {
|
||||
|
||||
int16_t x, y, z;
|
||||
@ -269,10 +274,15 @@ int lis3dh_read_fifo(lis3dh_t *lis3dh) {
|
||||
y = (((int16_t)((data[i + 2] << 8) | data[i + 3])) >> scale) * sens;
|
||||
z = (((int16_t)((data[i + 4] << 8) | data[i + 5])) >> scale) * sens;
|
||||
|
||||
printf("x: %04.04f, y: %04.04f, z: %04.04f\n",
|
||||
(double)x / 1000.0,
|
||||
(double)y / 1000.0,
|
||||
(double)z / 1000.0);
|
||||
double dx = ((double)x) / 1000.0;
|
||||
double dy = ((double)y) / 1000.0;
|
||||
double dz = ((double)z) / 1000.0;
|
||||
|
||||
printf("x: %04.04f, y: %04.04f, z: %04.04f mag:%f\n",
|
||||
dx,
|
||||
dy,
|
||||
dz,
|
||||
mag(dx, dy, dz));
|
||||
}
|
||||
|
||||
puts("<= FIFO");
|
||||
|
12
main.c
12
main.c
@ -28,12 +28,12 @@ int main() {
|
||||
puts("init ERR");
|
||||
}
|
||||
|
||||
lis.cfg.mode = LIS3DH_MODE_NORMAL;
|
||||
lis.cfg.range = LIS3DH_FS_2G;
|
||||
lis.cfg.rate = LIS3DH_ODR_100_HZ;
|
||||
lis.cfg.fifo.mode = LIS3DH_FIFO_MODE_NORMAL;
|
||||
lis.cfg.filter.mode = LIS3DH_FILTER_MODE_AUTORESET;
|
||||
lis.cfg.filter.cutoff = LIS3DH_FILTER_CUTOFF_2;
|
||||
lis.cfg.mode = LIS3DH_MODE_HR;
|
||||
lis.cfg.range = LIS3DH_FS_4G;
|
||||
lis.cfg.rate = LIS3DH_ODR_25_HZ;
|
||||
lis.cfg.fifo.mode = LIS3DH_FIFO_MODE_STREAM;
|
||||
//lis.cfg.filter.mode = LIS3DH_FILTER_MODE_AUTORESET;
|
||||
lis.cfg.filter.cutoff = LIS3DH_FILTER_CUTOFF_8;
|
||||
lis.cfg.filter.fds = 1;
|
||||
|
||||
if (lis3dh_configure(&lis)) {
|
||||
|
Loading…
Reference in New Issue
Block a user