Weintek + Arduino ESP-ENG

ENG
Hello, I'm trying to connect a Weintek display with an Arduino Uno. I followed this tutorial without success: https://www.youtube.com/watch?v=FVmTPGzz4W4

I have a Weintek "cMT-FHDX-820" display, configured with a "Modbus RTU, RTU over TCP" device, using COM 3 port. Pin 1 is connected to DATA+, pin 4 to DATA-, and GND to pin 5.

I'm using an RS485 to TTL 5V board with a MAX13487 chip for communication. The TXD pin is connected to Arduino pin 1, and the RXD pin to Arduino pin 0.

Despite this setup, I can't establish any communication, and the Weintek display always shows that no device is connected.

ESP
Hola buenas, estoy intentando conectar una pantalla weintek con un Arduino uno, he seguido el siguiente tutorial pero sin éxito alguno:https://www.youtube.com/watch?v=FVmTPGzz4W4

Tengo una pantalla weintek "cMT-FHDX-820", le he configurado un dispositivo "Modbus RTU, RTU over TCP", he usado el puerto COM 3, en el pin 1 tengo DATA+ y en el pinta 4 tengo DATA-, GND lo tengo conectado al pin 5.

Uso una tarjeta RS485 a TTL 5V con Chip MAX13487 para la comunicación, tengo conectado el pin TXD al pin 1 de Arduino y el pin RXD al pin 0 de Arduino

Con todo esto no consigo efectuar ningún tipo de comunicación y la pantalla weintek siempre me dice que no hay dispositivo conectado.



/*
  Modbus RTU Server LED

  This sketch creates a Modbus RTU Server with a simulated coil.
  The value of the simulated coil is set on the LED

  Circuit:
   - MKR board
   - MKR 485 shield
     - ISO GND connected to GND of the Modbus RTU server
     - Y connected to A/Y of the Modbus RTU client
     - Z connected to B/Z of the Modbus RTU client
     - Jumper positions
       - FULL set to OFF
       - Z \/\/ Y set to OFF

  created 16 July 2018
  by Sandeep Mistry
*/

#include <ArduinoRS485.h> // ArduinoModbus depends on the ArduinoRS485 library
#include <ArduinoModbus.h>

const int ledPin = LED_BUILTIN;

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

  Serial.println("Modbus RTU Server LED");

  // start the Modbus RTU server, with (slave) id 1
  if (!ModbusRTUServer.begin(1, 9600,SERIAL_8N1)) {
    Serial.println("Failed to start Modbus RTU Server!");
    while (1);
  }

  // configure the LED
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, LOW);

  // configure a single coil at address 0x00
  ModbusRTUServer.configureCoils(0x00, 100);
  ModbusRTUServer.configureHoldingRegisters(0x00, 100);
}

void loop() {
  // poll for Modbus RTU requests
  int packetReceived = ModbusRTUServer.poll();

  if(packetReceived) {
    // read the current value of the coil
    int coilValue = ModbusRTUServer.coilRead(0x00);
  
    if (coilValue) {
      // coil value set, turn LED on
      digitalWrite(ledPin, HIGH);
    } else {
      // coil value clear, turn LED off
      digitalWrite(ledPin, LOW);
    }
  }
}

The UNO pins 0 and 1 are used for the USB connection and can not be used for other purposes when USB is connected.

You're right, so when I test it, I disconnect the USB and power the Arduino with an independent power supply to avoid data interference, but it still doesn't work. Would there be another way to use different pins?

Please post schematics. Pen, paper and a phone picture posted is good enough.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.