Aviso

El foro está en modo de sólo lectura.

HMI NEXTION Y ARDUINO, No reconoce parte del protocolo con librería nextion.h

Más
6 años 7 meses antes #656 por raiker
creo que en un comentario observe que nadie se habia dignado a realizar donaciones
Más
6 años 7 meses antes #657 por Jose Luis
No no, tranquilo, no se necesita ninguna aportación económica. Para lo que estamos haciendo nosotros el gasto es aceptable. lo que no se puede es meterse a cosas mas caras. Y eso que para mucho videos cuento con los respuestos que tenemos en mi empresa, sino, seria inviable. Un sensor capacitivo te puede costar fácilmente 90 o 100 euros si lo compras de una marca "decente". Ese tipo de cosas no se podrían acometer.

Pero para lo que venimos haciendo hasta ahora, no hay ningún problema.

Y lo de donaciones fue un autentico fracaso, pero eso ya lo sabia, eso si, dejaron de lloverme los privados pidiendo cosas, que algunos ya estaban siendo un poco pesados, que me escribían lo mismo por YouTube, facebook y el correo. :D

Si además aquí en el foro somos 4 nada mas.

Resumiendo, gracias, pero no es necesario. :)

Un saludos a todos.
Más
5 años 8 meses antes - 5 años 8 meses antes #1543 por zerocool
hola que tal buneas tardes, tengo un problema parecido cuando envio la trama por el puerto serie los " if " no lo reconocen cuando estan asi if (message == "65 0 4 0 ffff ffff ffff") {digitalWrite((rele[3]),button4State); button4State = !(button4State); }

pero cuando le quito un "=" if (message = "65 0 4 0 ffff ffff ffff") {digitalWrite((rele[3]),button4State); button4State = !(button4State); }

si funsiona pero activa todos los if del codigo, si podriandarme alguna ayuda u/o orientasion les agredeseria, estoy usando una pantalla USART HMI


/*
* Control de Ocho relays mediante Arduino Nano y pantalla NEXTION
*/
#include <SoftwareSerial.h>
#include <Nextion.h>
#define SI !1
#define NO !0

byte rele[] = {46,47,48,49,50,51,52,53}; // Salidas digitales a los Relay 1,2,3,4,5,6,7,8
const int ledPin = 13; // the number of the LED pin
//const byte ReceivePin = 2;
//const byte TransmtPin = 3;

//const byte ReceivePin = 19;//2 arduino nano;
//const byte TransmtPin = 18;//3 arduino nano;

int i;
int recv; int trxv;
String message;
String maria;
#define nextion Serial
//SoftwareSerial nextion(ReceivePin, TransmtPin);
Nextion myNextion(nextion, 9600);
boolean button1State = 1; boolean button2State = 1; boolean button3State = 1; boolean button4State = 1;
boolean button5State = 1; boolean button6State = 1; boolean button7State = 1; boolean button8State = 1;

void setup()
{
Serial.begin(9600);
myNextion.init();

pinMode(ledPin, OUTPUT); // Led incluido en el Nano
for (i = 0; i < 8; i++)
{ pinMode((rele),OUTPUT); digitalWrite((rele),SI); } // Inicia los Relays en NO
// for (i = 0; i < 8; i++) // Prueba los Relays del 1 a 8 - Quitar de la compilacion para el uso normal
// { digitalWrite((rele),SI); delay(50); digitalWrite((rele),NO); delay(50); }

while (!Serial) {}; // wait for serial port to connect. Needed for native USB port only

int brightness = 255; // Ajustar el brillo de la pantalla de 0 a 255 maximo
int bright = map(brightness, 0, 1024, 0, 100);
String dim = "dim=" + String(bright);
myNextion.sendCommand(dim.c_str());

} // Fin Setup

void loop()
{
// put your main code here, to run repeatedly:
if(Serial.available() > 0) {
message = myNextion.listen(); //check for message
//if (message !="") { Serial.println(message);}

if (message == "65 0 1 0 ffff ffff ffff") {digitalWrite((rele[0]),button1State); button1State = !(button1State); }
if (message == "65 0 2 0 ffff ffff ffff") {digitalWrite((rele[1]),button2State); button2State = !(button2State); }
if (message == "65 0 3 0 ffff ffff ffff") {digitalWrite((rele[2]),button3State); button3State = !(button3State); }
if (message == "65 0 4 0 ffff ffff ffff") {digitalWrite((rele[3]),button4State); button4State = !(button4State); }
if (message == "65 0 5 0 ffff ffff ffff") {digitalWrite((rele[4]),button5State); button5State = !(button5State); }
if (message == "65 0 6 0 ffff ffff ffff") {digitalWrite((rele[5]),button6State); button6State = !(button6State); }
if (message == "65 0 7 0 ffff ffff ffff") {digitalWrite((rele[6]),button7State); button7State = !(button7State); }
if (message == "65 0 8 0 ffff ffff ffff") {digitalWrite((rele[7]),button8State); button8State = !(button8State); }
Serial.println(message);
}
} // Fin Loop
Última Edición: 5 años 8 meses antes por zerocool.
Más
5 años 8 meses antes #1544 por Jose Luis
Las librerias tienden a no funcionar bien cuando se hacen mas cosas que el listen ().

Yo lo primero que haria es borrar todo lo que no sea escuchar por el puerto, y cuando funcione, iria añadiendo cosas, por que a mi me dio muchos problemas cuando interactuaba con las dos cosas.
Tiempo de carga de la página: 0.115 segundos
Gracias a Foro Kunena