#include <SoftwareSerial.h>
#define MYPORT_TX 33
#define MYPORT_RX 32
#define MYPORT_TX2 26
#define MYPORT_RX2 25
#define DERE_2 4 // Pin untuk Data Enable (DE)
#define MODBUS_RX_PIN 21 // Pin Rx untuk Modbus
#define MODBUS_TX_PIN 22 /// Pin Tx untuk Modbus
#define PIN_DE2 2 // Pin untuk Data Enable (DE)
#define MODBUS2_RX_PIN 16 // Pin Rx untuk Modbus
#define MODBUS2_TX_PIN 17 /// Pin Tx untuk Modbu
EspSoftwareSerial::UART myPort;
EspSoftwareSerial::UART myPort2;
HardwareSerial myPort3(1); // use UART2
void setup() {
Serial.begin(115200); // Standard hardware serial port
myPort.begin(9600, SWSERIAL_8N1, MYPORT_RX, MYPORT_TX, false);
myPort2.begin(9600, SWSERIAL_8N1, MYPORT_RX2, MYPORT_TX2, false);
myPort3.begin(9600, SERIAL_8N1, MODBUS_RX_PIN, MODBUS_TX_PIN);
Serial2.begin(9600, SERIAL_8N1, MODBUS2_RX_PIN, MODBUS2_TX_PIN);
if ( !myPort || !myPort2 || !myPort3 || !Serial2) { // If the object did not initialize, then its configuration is invalid
Serial.println("Invalid EspSoftwareSerial pin configuration, check config");
while (1) { // Don't continue with invalid configuration
delay (1000);
}
}
else{
Serial.println("Serial terdeteksi");
myPort.println("Serial software berhasil");
myPort3.println("Serial software berhasil");
}
}
void loop() {
}