Bienvenido, Invitado
Nombre de Usuario: Contraseña: Recordarme
  • Página:
  • 1
  • 2
  • 3

TEMA: Problemas con puerto Serie Arduino Mega

Problemas con puerto Serie Arduino Mega 3 semanas 1 día antes #633

Gracias Jose Luis y EA3DMM2 por su atencion, la verdad no estoy usando las librerias de Nextion para comunicarme con arduino, estoy haciendo la comunicación revisando las tramas que llegan de la Nextion y enviado tramas a la misma, ahora ocurre algo muy extraño ya que la primera vez que conecte la Nextion al arduino descargue sin problemas a travez del arduino los programas que estoy haciendo para la Nextion pero al dia siguiente ya no me dejaba descargarlos me dice que no se pudo conectar a la pantalla...lo raro es que el editor de Nextion si reconoce el puerto pero al momento de descargar el programa siempre dice que fallo.......creo que el puerto esta bien porque descargo programas al arduino por ese mismo puerto sion problema

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Problemas con puerto Serie Arduino Mega 3 semanas 1 día antes #636

Hola OFVV, comprueba que no hayas cambiado los baudios de la pantalla. Si no coinciden con el skech no te funcionará.

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Problemas con puerto Serie Arduino Mega 2 semanas 2 días antes #667

Gracias por sus respuestas, de verdad las agradezco, al final no tuve que cambiar nada en el archivo de configuracion para los seriales, solo defini los baudios
y tal vez no estaba conectando bien mi Nextion con el serial definido en el Sketh, pero ya esta solucionado, queria preguntarles algo ya que ustedes tienen mas tiempo
trabajando con Nextion.....estoy trabajando en Nextion con un control del tipo "n0" y lo estoy configurando como teclado numerico, al cargarlo en la pantalla funciona bien pero despues de algunos minutos comienza a parpadear de tal forma que no se ven los numeros para digitar, el parpadeo solo es del teclado numerico no de toda la pantalla.......saben a que se debe esto???

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Problemas con puerto Serie Arduino Mega 2 semanas 2 días antes #668

A ver, aqui somos aficionados a la electronica, no videntes.

Si quieres una opinion, sube el fichero de la nextion y el fichero del arduino para que podamos ver el problema y no imaginarlo.

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Última Edición: por Jose Luis.

Problemas con puerto Serie Arduino Mega 2 semanas 2 días antes #669

Gracias Jose Luis....todo va con un arduino MEGA:

#include "max6675.h"


// ThermoCouple
int thermo_gnd_pin = 45;
int thermo_vcc_pin = 47;
int thermo_sck_pin = 49;
int thermo_cs_pin = 51;
int thermo_so_pin = 53;
MAX6675 thermocouple(thermo_sck_pin, thermo_cs_pin, thermo_so_pin);

int flag=0;
int FaD;


void setup() {
pinMode(LED_BUILTIN, OUTPUT);
Serial.begin(115200);
Serial1.begin(115200);
Serial2.begin(115200);
pinMode(thermo_gnd_pin, OUTPUT);
pinMode(thermo_vcc_pin, OUTPUT);
digitalWrite(thermo_gnd_pin, LOW);
digitalWrite(thermo_vcc_pin, HIGH);

}


void loop() {

// rutina lee datos desde la Nextion y analiza la trama enviada
Serial.flush();
Serial1.flush();
Serial2.flush();

int array[16]; //inicializa arerglo para numeros,
while (Serial2.available()>0) { //mientras existan datos en el puerto serial
for (int i= 1 ; i< 16; i++){ //inicializa conteo de 1 a 8 (7datos)
array= Serial2.read(); //array i es igual a lo que lea por el serial
delay(20);
}

//Los eventos touch con boton normal envian 2 tramas, los dual boton 3 tramas siendo la ultima el dato que se envia
array[16]='\0'; //imprimira arreglo despues de un salto linea
int error=array[1]; //nombre del primer nibble del arreglo. Evento Touch (0x65=101)
int pagina=array[2]; //Id Pagina, en este caso 0
int componente=array[3]; //ID componenten en este caso 1
int eventopartes=array[4]; //Tipo evento touch(0x01 si presiona, 0x00 si release)
int dato1=array[5]; //0xff indican fin de tramna
int dato2=array[6]; //0xff indican fin de tramna
int dato3=array[7]; //0xff indican fin de tramna
int dato4=array[8]; //comienza otra trama con ID pagina
int dato5=array[9];
int dato6=array[10];
int dato7=array[11];
int dato8=array[12];
int dato9=array[13];
int dato10=array[14];
int dato11=array[15];
delay(5);

// Serial.println(error); //imprimen por el serial lo que esta llegando de la trama actual
// Serial.println(pagina);
// Serial.println(componente);
// Serial.println(eventopartes);
// Serial.println(dato1);
// Serial.println(dato2);
// Serial.println(dato3);
// Serial.println(dato4);
// Serial.println(dato5);
// Serial.println(dato6);
// Serial.println(dato7);
// Serial.println(dato8);
// Serial.println(dato9);
// Serial.println(dato10);
// Serial.println(dato11);

if (pagina ==0 && componente == 2 && flag ==0){ //si tenemos un evento de la pagina 0 y el componente ID=2 (el unico boton de la pagina) y no ha sido activada la bandera
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
flag = flag + 1; //suma una a la bandera
componente=0;
delay(1000);
}

else
if (pagina ==0 && componente == 2 && flag ==1){ // si se vuelve a presionar el boton en nextion y la bandera tiene 1
digitalWrite(LED_BUILTIN, LOW); // turn the LED on (HIGH is the voltage level)
flag=0;
componente=0;
delay(1000);
}

if (pagina ==0 && componente == 5){ // Verifica que el dual boton se presiono y envia el dato digitado en pantalla con conteo.
for (int i= 0 ; i< dato11; i++){
digitalWrite(LED_BUILTIN, HIGH);
delay(200);
digitalWrite(LED_BUILTIN, LOW);
delay(200);

Serial2.print("t0.txt=\"");
Serial2.print(i+1);
Serial2.print("\"");
Serial2.write(0xff);
Serial2.write(0xff);
Serial2.write(0xff);
delay(200);
}

delay(500);
Serial2.print("t0.txt=\"");
Serial2.print("0");
Serial2.print("\"");
Serial2.write(0xff);
Serial2.write(0xff);
Serial2.write(0xff);
delay(50);
}

}


// Envia temperatura como string a Pantalla Nextion por el Serial2 (pines Tx:16, Rx:15) Arduino MEGA.

Serial.flush();
Serial1.flush();
Serial2.flush();
delay(50);

float lec_T=float(thermocouple.readCelsius()); //valor decimal para enviar a pantalla

Serial2.print("t0.txt=\""); //envia a pantalla con formato para texto
//Serial2.print(thermocouple.readCelsius()); //envia como texto
Serial2.print(lec_T); //envia valor tmperatura a pantalla
Serial2.print("\"");
Serial2.write(0xff); //envia 0xff como final de trama
Serial2.write(0xff);
Serial2.write(0xff);
delay(50);
// Fin Envia temperatura como string a Pantalla
// Envia temperatura al velocimetro
FaD = int( thermocouple.readCelsius());
Serial2.print("z0.val="); //envia valor numerico
Serial2.print(FaD-20); //se resta un valor para compensar el indicador del velocimetro
Serial.println(FaD);
Serial2.write(0xff);
Serial2.write(0xff);
Serial2.write(0xff);
delay(500);
Serial2.flush();

}


Lo que hace es adquirir la temperatura con un MAX6675 para mostrarla en pantalla y esperar a que se pulse uno de los botones para prender el
led del arduino, en el caso del boton "blink pant" hace parpadear el led del arduino de acuerdo con el numero ingresado desde la Nextion
pulsando sobre el objeto "n0" , este esta configurado en la Nextion con un teclado numerico asi que al pulsarlo aparece el teclado pero
parpadea de tal forma que no se ven los numeros del teclado, esto solo ocurre cuando aparece el teclado numerico.
Te envio imagenes de la configuracion del objeto "n0" y el boton con el que se envia el valor de "n0" al arduino.
Adjuntos:

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Problemas con puerto Serie Arduino Mega 2 semanas 2 días antes #670

Te lo volvere a repetir, ficheros de la nexion y del arduino, es sus respectivos ficheros y subidos para que aqui todo el mundo puede ver lo que haces y por lo que preguntas,
Las fotos estan muy bien, pero aqui se comparte el codigo.

Que parece que cuesta compartir.

Por favor, Identificarse o Crear cuenta para unirse a la conversación.

Última Edición: por Jose Luis.
  • Página:
  • 1
  • 2
  • 3
Tiempo de carga de la página: 0.125 segundos
Gracias a Foro Kunena