hola! soy nueva en el foro, no se si subí toda la información bien, ya me dirán ustedes.
bueno tengo el problema que los datos del giroscopio no se reflejan en la pantalla nextion.
escribo aca el codigo por si no se subio el archivo rar.
luego en la nextion hice algo muy sencillo ya que solo estoy aprendiendo como pasar los valores del arduino a la nextion
solo tiene 4 toolbox, son 2 numero y dos txt (el txt no se modificaria)
lo que quiero modificar únicamente son los n0 y n1
ojala me ayuden gracias
#include "I2Cdev.h"
#include "MPU6050.h"
#include "Wire.h"
MPU6050 sensor;
// Valores RAW (sin procesar) del acelerometro y giroscopio en los ejes x,y,z
int ax, ay, az;
int gx, gy, gz;
long tiempo_prev;
float dt;
float ang_x, ang_y;
float ang_x_prev, ang_y_prev;
void setup() {
Serial.begin(57600); //Iniciando puerto serial
Wire.begin(); //Iniciando I2C
sensor.initialize(); //Iniciando el sensor
if (sensor.testConnection()) Serial.println("Sensor iniciado correctamente");
else Serial.println("Error al iniciar el sensor");
}
void loop() {
// Leer las aceleraciones y velocidades angulares
sensor.getAcceleration(&ax, &ay, &az);
sensor.getRotation(&gx, &gy, &gz);
dt = (millis()-tiempo_prev)/1000.0;
tiempo_prev=millis();
//Calcular los ángulos con acelerometro
float accel_ang_x=atan(ay/sqrt(pow(ax,2) + pow(az,2)))*(180.0/3.14);
float accel_ang_y=atan(-ax/sqrt(pow(ay,2) + pow(az,2)))*(180.0/3.14);
//Calcular angulo de rotación con giroscopio y filtro complemento
ang_x = 0.98*(ang_x_prev+(gx/131)*dt) + 0.02*accel_ang_x;
ang_y = 0.98*(ang_y_prev+(gy/131)*dt) + 0.02*accel_ang_y;
ang_x_prev=ang_x;
ang_y_prev=ang_y;
//Mostrar los angulos separadas por un [tab]
Serial.print("n1.val=");
Serial.println(ang_x);
Serial.write(0xff); //Always add 3 full bytes after...
Serial.write(0xff);
Serial.write(0xff);
Serial.print("n0.val=");
Serial.println(ang_y);
Serial.write(0xff); //Always add 3 full bytes after...
Serial.write(0xff);
Serial.write(0xff);
}