Skip to main content

Primeros Pasos con el acelerómetro

Este repositorio demuestra cómo leer valores del acelerómetro desde Wio Terminal.

Inicialización del Acelerómetro Digital de 3 Ejes

Para inicializar el acelerómetro en Wio Terminal:

  • Configurar la tasa de datos de salida: lis.setOutputDataRate(), de 1Hz hasta 5kHz.

  • Configurar el rango de escala: lis.FullScaleRange(), de 2g hasta 16g.

#include"LIS3DHTR.h"
LIS3DHTR<TwoWire> lis;

void setup() {
...
lis.begin(Wire1);
lis.setOutputDataRate(LIS3DHTR_DATARATE_25HZ); // Configurar la tasa de datos de salida a 25Hz, puede configurarse hasta 5kHz
lis.setFullScaleRange(LIS3DHTR_RANGE_2G); // Configurar el rango de escala a 2g, seleccionar entre 2,4,8,16g
...
}

Lectura de Valores del Acelerómetro

Para leer los valores del acelerómetro de cada eje en Wio Terminal, simplemente sigue esto:

void loop() {
float x_values, y_values, z_values;
x_values = lis.getAccelerationX();
y_values = lis.getAccelerationY();
z_values = lis.getAccelerationZ();
delay(50); // retraso para evitar que se lea una gran cantidad de datos
...
}

Nota: Se recomienda encarecidamente el retraso para evitar una gran cantidad de datos de una vez.

Código de Ejemplo

Este ejemplo imprime todos los valores de los 3 ejes del acelerómetro en el monitor serie.

#include"LIS3DHTR.h"
LIS3DHTR<TwoWire> lis;

void setup() {
Serial.begin(115200);
lis.begin(Wire1);

if (!lis) {
Serial.println("ERROR");
while(1);
}
lis.setOutputDataRate(LIS3DHTR_DATARATE_25HZ); //Data output rate
lis.setFullScaleRange(LIS3DHTR_RANGE_2G); //Scale range set to 2g
}

void loop() {
float x_values, y_values, z_values;
x_values = lis.getAccelerationX();
y_values = lis.getAccelerationY();
z_values = lis.getAccelerationZ();

Serial.print("X: "); Serial.print(x_values);
Serial.print(" Y: "); Serial.print(y_values);
Serial.print(" Z: "); Serial.print(z_values);
Serial.println();
delay(50);
}
Loading Comments...