Nextion: Envío de datos desde la pantalla hacia un MCU o terminal serial

แชร์
ฝัง
  • เผยแพร่เมื่อ 10 พ.ย. 2024

ความคิดเห็น • 51

  • @lfmtube
    @lfmtube 2 ปีที่แล้ว +1

    Muchas gracias por tu video .ME ha resultado muy útil.

  • @jmch1369
    @jmch1369 ปีที่แล้ว +1

    Muchisimas Gracias ,,,

  • @ExtremeTris
    @ExtremeTris 4 ปีที่แล้ว +1

    podrías hacer un video completo de como hacer un código completo dentro de la nextion estoy batallando mucho y tienes un contenido excelente amigo espero que tengas mucho éxito en tu canal

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว +1

      Hola y bienvenido! Muchas gracias por tu comentario!. Claro que si, justamente estaba preparando un video al respecto con un proyecto desde ceros, con timers, eventos y demás, sólo que por motivos de trabajo me ha sido difícil. Pero espero poder subirlo muy pronto.

  • @cristianolivares2098
    @cristianolivares2098 4 ปีที่แล้ว +1

    Muy amable
    Por el video sera de mucha ayuda
    Sigue adelante

  • @javiercena7055
    @javiercena7055 2 ปีที่แล้ว +1

    Muy buena explicacion, quisiera saber como podria comunicar una pantalla nextion con Gpio con un sensor DHT11, si se podria por alguna de sus entradas y salidas o por el puerto , gracias

    • @GTRONICK
      @GTRONICK  2 ปีที่แล้ว

      Depende de la capacidad de la pantalla en cuanto a freecuencia de muestreo, voltaje de trabajo etc. Lo que te recomiendo es usar un microcontrolador para leer los datos del sensor y de ahí transmitorlos a la pantalla por UART. Sin embargo este video te puede ayudar: m.th-cam.com/video/bKUn4U3oZMk/w-d-xo.html

  • @manuelrodriguezlatorre8978
    @manuelrodriguezlatorre8978 ปีที่แล้ว +1

    Hola, estoy comunicando un s71200 con una pantalla nextion a través de un modulo CM1241 RS232 y un max3232 para convertir RS232 a ttl. Ya he conseguido recibir en el plc al pulsar botones creados en la pantalla y numeros tambien, con lo que la parte de la recepción la he conseguido. Sin embargo al intentar enviar desde el plc s71200 a la pantalla para que me muestre un valor numerico en un campo no consigo que envíe y no hace nada solo parpadea el led de Tx en el CM1241 RS232 con lo que algo está enviando pero no es lo correcto. He buscado información acerca de todo esto en el set de instrucciones pero no encuentro donde creo que está el problema, que es en la trama de caracteres. La pantalla necesita una trama de caracteres o bytes para saber o empezar a recibir? Yo estoy tratando de hacer el envío en hexadecimal.

    • @GTRONICK
      @GTRONICK  ปีที่แล้ว

      Es correcto, la pantalla necesita una trama de caracteres específicos para poder entender la información que le envías. En la página del fabricante encuentras la información correspondiente. Revisa nextion.tech/instruction-set/ en la sección 1. General rules and practices

  • @biotecR
    @biotecR 4 ปีที่แล้ว +2

    Hola, gracias por el video ¿Como sería con arduino? Enviarle por ejemplo un carácter y lo almacene en una variable

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว +2

      Hola Hazel, en ese caso, puedes usar la misma instrucción, por ejemplo: prints "x",0
      Del lado del Arduino, debes usar el método asociado para leer el puerto serial, y dicho valor se lo asignas a la variable, por ejemplo:
      char c = Serial.read();
      Para más información sobre Arduino puedes ver multitud de tutoriales en Internet sobre cómo leer el puerto serial. Sin embargo, te recomiendo que leas sobre Interrupciones, de manera que solamente almacenes el dato cuando se produzca una interrupción y así no afectas el flujo natural del programa o no lo bloqueas por estar esperando un dato. Si no, puedes usar una rutina sencilla con un while que pregunte por Serial.available() y luego asigne el dato.

  • @javiercena7055
    @javiercena7055 2 ปีที่แล้ว +1

    Con prints, puedo comunicarme con un sensor con puerto usart, por el puerto serie de la pantalla nextion, pero el valor que me retorne el sensor como lo podría leer para imprimirlo en la pantalla?

    • @GTRONICK
      @GTRONICK  2 ปีที่แล้ว

      Aquí puedes echar un vistazo al set de instrucciones de la pantalla: nextion.tech/instruction-set/, sin embargo, si lo que quieres es procesar los datos que retorna el sensor directamente en la pantalla, no es posible, para ello necesitas un microcontrolador que transfore los datos que lee del sensor, en datos que entienda la pantalla

  • @soriatel
    @soriatel ปีที่แล้ว

    Excelente trabajo? como recibo la información en una caja de texto de algo que envie el MCU?

    • @GTRONICK
      @GTRONICK  ปีที่แล้ว +1

      Te recomiendo ver este video para que te hagas una idea: th-cam.com/video/OcN34M_JUy8/w-d-xo.html

  • @audiosonidospain
    @audiosonidospain 4 ปีที่แล้ว +1

    gran aporte, podías hacer lo mismo con un temporizador? que cuando pulses encienda 5 segundos, como si fuera un elevalunas de coche. gracias. y otro con longclick, graciasssssssssssss

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว

      Hola y bienvenido!. De hecho, puedes incluir el temporizador directamente en la pantalla. Nextion Editor incluye un objeto timer que ejecuta un acción cuando el timer llega a 0. Por tanto, puedes iniciar el conteo del timer o habilitarlo cuando toques un botón, al mismo tiempo que activas un motor. Cuando el timer termine y llegue a 0, en el evento que se dispara puedes desactivar el motor. Para el longclick, puedes utilizar lo mismo. Presionas el botón y a la vez habilitas el timer. Cuando el timer llegue a 0, si el botón todavía está siendo presionado, que se active el motor y habilite otro timer para mantener el motor activo durante un tiempo. Aún así, para verificar que el motor ha recorrido el 100% de la trayectoria, te recomiendo usar algún sensor de fin de carrera, óptico o similar asociado con un relé y un transistor o un circuito similar. Pero si quieres usar únicamente la pantalla, deberás calibrar muy bien los timers. Muchos éxitos!

  • @soriatel
    @soriatel ปีที่แล้ว +1

    como se llama el software para recibir lo que envia la pantalla NEXTION?

    • @GTRONICK
      @GTRONICK  ปีที่แล้ว +1

      Puedes usar cualquier terminal serial, en mi caso uso GTKTERM, pero si estás en Windows puedes usar Putty. Recuerda que la pantalla se conecta en ese caso a un conversor USB-serial, de manera que dicho conversor recibe los datos de la pantalla por UART y los transmite al PC por USB

    • @soriatel
      @soriatel ปีที่แล้ว

      @@GTRONICK yo aqui buscando como loco GTKTERM para windows🤣

  • @txonso1194
    @txonso1194 4 ปีที่แล้ว +1

    hola puedes hacer un video controlando algun led o motor , atraves de la pantalla ? gran aportes

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว

      Hola y bienvenido! Claro que sí, tengo planeado hacerlo mañana si todo sale bien.

    • @txonso1194
      @txonso1194 4 ปีที่แล้ว

      @@GTRONICK Ya consegui enviar y recibir datos al mismo tiempo el problema es que cuando cambio a otra pantalla si por ejemplo enciendo un led, y vuelvo no me guarda el estado de ese boton por eso se queda siempre encendido y tengo que encenderlo y apagarlo otra vez estaria bien un video de como pasar el estado de una pagina a otra y control de bucles , tambien le doy al boton de estado en la pantalla y alguna vez no me enciende el led cuando quiere , también podrias explicar cosas de ese estilo en tu siguiente video ,gracias

  • @soriatel
    @soriatel ปีที่แล้ว

    tienes algun video tutorial para ponerle el fondo de imagen a la pantalla nextion?
    mi sd card detecta un error en FAT y no carga que podri a hacer?
    volver a formatear?

    • @GTRONICK
      @GTRONICK  ปีที่แล้ว

      Debes formatear la tarjeta en FAT32, y usar una de máximo 16GB o incluso 8GB, puede que si usas una uSD de mayor capacidad la pantalla tenga problemas al reconocerla. Para el fondo, revisa las propiedades, sí mal no recuerdo hay una opción para agregar imágenes al proyecto.

    • @soriatel
      @soriatel ปีที่แล้ว +1

      @@GTRONICK gracias, funcionó con una de 2GB, con una de 4GB no funcionaba

  • @soriatel
    @soriatel ปีที่แล้ว

    Otra pregunta.....? Como enviar el contenido de una caja de texto Nextion concatenada, precedida de una Letra.
    Ejemplo quiero enviar la letra P unido a lo que contenga un text....
    P7550 (por ejemplo)?

    • @GTRONICK
      @GTRONICK  ปีที่แล้ว +1

      Puedes intentar concatenando la letra con el contenido de la caja de texto, y asignando el resultado a una variable, luego envías el contenido de la variable por UART. Te recomiendo experimentar en el apartado de código.

    • @soriatel
      @soriatel ปีที่แล้ว

      @@GTRONICK a una caja de texto le puse este codigo y funcionó.
      t4.txt+=t4.txt+"A"

  • @jonatantolentino1226
    @jonatantolentino1226 4 ปีที่แล้ว +1

    Gracias. Like.

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว

      Gracias a ti! ;)

  • @alexanderfigueroa7682
    @alexanderfigueroa7682 4 ปีที่แล้ว +1

    Buen día, excelente explicación. Me gustaría saber cómo puedo controlar una animación en pantalla Nextion desde Arduino por medio de un pulsador. Si es posible contactarme contigo. Gracias

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว +1

      Hola y bienvenido!. Bueno, en ese caso, puedes enviar un dato por puerto serial a la pantalla para ir ocultando la imagen anterior y mostrar la siguiente con el comando vis. La pantalla más básica, como la del video, no soporta clips de video ni gifs, por tanto hay que tener las imágenes cargadas en la pantalla e irlas mostrado y ocultando.

    • @alexanderfigueroa7682
      @alexanderfigueroa7682 4 ปีที่แล้ว

      @@GTRONICK Buen día, la estructura del comando vis cómo sería?. Gracias

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว

      Si mal no recuerdo, es item.vis=0 para ocultar, por ejemplo t1.vis=0 ocultará la caja de texto con id 1

    • @alexanderfigueroa7682
      @alexanderfigueroa7682 4 ปีที่แล้ว

      @@GTRONICK Mi idea es que cuando salga el mensaje en la pantalla nextion éste se quede parpadeando y al activar un pulsador en Arduino deje de mostrar el mensaje, sólo parpadea cuando salga. El parpadeando del mensaje lo hice desde la misma nextion.

  • @soriatel
    @soriatel ปีที่แล้ว

    A punto de lograr mis propósitos,.....
    como se pone retorno de carro a la siguente linea?
    prints t4.txt,0

    • @GTRONICK
      @GTRONICK  ปีที่แล้ว

      Prueba con

      aunque, si mal no recuerdo, creo que en el set de instrucciones hay un comando específico para eso

    • @soriatel
      @soriatel ปีที่แล้ว

      @@GTRONICK me da error.
      como borrar el contenido de una caja de texto cuando deje de presionar un boton?

  • @ulisesskywlaker8056
    @ulisesskywlaker8056 4 ปีที่แล้ว +1

    Hola, como envías un numero?

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว

      Desde la pantalla, usas el comando prints 123,0 por ejemplo, lo que enviará al MCU el valor 0x7B 0x00 0x00, Recuerda que la pantalla envía la información en hexadecimal. Para más simplicidad puedes enviarlo en formato texto, usando prints "123",0 lo cual enviará el literal 123, es decir 0x31 0x32 0x33. También puedes usar printh 31 32 33, lo cual enviará el ASCII del 1 2 y 3 respectivamente.

    • @ulisesskywlaker8056
      @ulisesskywlaker8056 4 ปีที่แล้ว

      @@GTRONICK estoy usando una variable numérica con un teclado numérico en el campo "key" , cuando termino de teclear el número no lo manda, con ese número quiero establecer un set point

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว

      En qué evento y cómo estás tratando de enviar el número? Al presionar el botón o al liberarlo? Cómo estás probando la respuesta de la pantalla? en una terminal serial, en un MCU?

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว

      En qué evento y cómo estás tratando de enviar el número? Al presionar el botón o al liberarlo? Cómo estás probando la respuesta de la pantalla? en una terminal serial, en un MCU?

    • @ulisesskywlaker8056
      @ulisesskywlaker8056 4 ปีที่แล้ว

      @@GTRONICK lo estoy enviando al presionarlo, estoy usando una interfase del software niple

  • @erebosubuntu9063
    @erebosubuntu9063 4 ปีที่แล้ว +1

    Muy bonito tu linux, cual es?

    • @GTRONICK
      @GTRONICK  4 ปีที่แล้ว +1

      Es ArchLinux con Plasma (KDE). Te invito a ver los otros videos del canal al respecto, donde explico cómo se instala y cómo se "tunea" para darle esa apariencia. Muchos éxitos!

    • @erebosubuntu9063
      @erebosubuntu9063 4 ปีที่แล้ว

      @@GTRONICK Gracias, buscare los videos..