amend examples to use i16 accel data

This commit is contained in:
William Clark 2024-01-04 21:13:49 +00:00
parent 89e9d9310d
commit cc448c54b0
5 changed files with 13 additions and 12 deletions

View File

@ -33,7 +33,6 @@ int main() {
lis.cfg.rate = LIS3DH_ODR_400_HZ;
lis.cfg.en_adc = 1; /* enable ADC */
/* write device config */
if (lis3dh_configure(&lis)) {
/* error handling */
@ -45,9 +44,9 @@ int main() {
}
/* print measured mV */
printf("ADC1: %04.04f mV\n", lis.adc.adc1);
printf("ADC2: %04.04f mV\n", lis.adc.adc2);
printf("ADC3: %04.04f mV\n", lis.adc.adc3);
printf("ADC1: %d mV\n", lis.adc.adc1);
printf("ADC2: %d mV\n", lis.adc.adc2);
printf("ADC3: %d mV\n", lis.adc.adc3);
/* deinitalise struct */
if (lis3dh_deinit(&lis)) {

View File

@ -51,7 +51,7 @@ int main() {
/* read out fifo buffer data */
for(i=0; i<data.size; i++) {
printf("x: %f, y: %f, z: %f\n", data.x[i], data.y[i], data.z[i]);
printf("x: %d mg, y: %d mg, z: %d mg\n", data.x[i], data.y[i], data.z[i]);
}
/* deinitialise struct */

View File

@ -14,7 +14,7 @@ int main() {
lis3dh_t lis;
struct lis3dh_fifo_data fifo;
int k;
int i;
lis.dev.init = i2c_init;
lis.dev.read = i2c_read;
@ -42,11 +42,13 @@ int main() {
lis.cfg.rate = LIS3DH_ODR_100_HZ;
lis.cfg.fifo.mode = LIS3DH_FIFO_MODE_STREAM;
lis.cfg.fifo.trig = LIS3DH_FIFO_TRIG_INT1; /* trigger interrupt into int pin1 */
/*lis.cfg.fifo.fth = 15;*/
lis.cfg.pin1.wtm = 1; /* trigger upon FIFO watermark level reached */
/* set up HP filter to remove DC component */
lis.cfg.filter.mode = LIS3DH_FILTER_MODE_NORMAL_REF;
lis.cfg.filter.cutoff = LIS3DH_FILTER_CUTOFF_4;
lis.cfg.filter.fds = 0; /* remove this line, or set to 1 to enable filter */
/* write device config */
if (lis3dh_configure(&lis)) {
@ -70,8 +72,8 @@ int main() {
}
/* above function also writes out the qty of [x y z] sets stored in `fifo' */
for(k=0; k<fifo.size; k++) {
printf("x: %04.04f, y: %04.04f z: %04.04f\n", fifo.x[k], fifo.y[k], fifo.z[k]);
for(i=0; i<fifo.size; i++) {
printf("x: %d mg, y: %d mg, z: %d mg\n", fifo.x[i], fifo.y[i], fifo.z[i]);
}
/* unregister interrupt */

View File

@ -43,7 +43,7 @@ int main() {
/* error handling */
}
printf("x: %f, y: %f, z: %f\n", lis.acc.x, lis.acc.y, lis.acc.z);
printf("x: %d mg, y: %d mg, z: %d mg\n", lis.acc.x, lis.acc.y, lis.acc.z);
/* deinitalise struct */
if (lis3dh_deinit(&lis)) {

View File

@ -50,11 +50,11 @@ int main() {
/* error handling */
}
printf("ADC1: %04.04f mV\n", lis.adc.adc1);
printf("ADC2: %04.04f mV\n", lis.adc.adc2);
printf("ADC1: %d mV\n", lis.adc.adc1);
printf("ADC2: %d mV\n", lis.adc.adc2);
/* no decimals, step size is 1 celsius */
printf("ADC3: %0.f oC\n", lis.adc.adc3);
printf("ADC3: %d oC\n", lis.adc.adc3);
/* deinitalise struct */
if (lis3dh_deinit(&lis)) {