ขึ้นงี้แก้ยังไงครับ

#include <SoftwareSerial.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
 
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
 
#define RE  12
#define DE  13
#define RE  8
#define DE  7
 
int ph ;
int ph2 ;
int npk;
 
//const byte code[]= {0x01, 0x03, 0x00, 0x1e, 0x00, 0x03, 0x65, 0xCD};
//const byte nitro[] = {0x01,0x03, 0x00, 0x1e, 0x00, 0x01, 0xe4, 0x0c};
const byte phaddress[] = {0x01, 0x03, 0x00, 0x00, 0x00, 0x01, 0x84, 0x0A};
const byte phos[] = {0x01, 0x03, 0x00, 0x1f, 0x00, 0x01, 0xb5, 0xcc};
const byte pota[] = {0x01,0x03, 0x00, 0x20, 0x00, 0x01, 0x85, 0xc0};
const byte nitro[] = {0x01,0x03, 0x00, 0x1e, 0x00, 0x01, 0xe4, 0x0c};
 
byte values[11];
SoftwareSerial mod(4,5);
SoftwareSerial mod1(2,3);
 
void setup() {
Serial.begin(9600);
mod.begin(4800);
pinMode(RE , OUTPUT);
pinMode(DE , OUTPUT);
pinMode(RE , OUTPUT);
pinMode(DE , OUTPUT);

display.begin(SSD1306_SWITCHCAPVCC, 0x3C); //initialize with the I2C addr 0x3C (128x64)
delay(500);
display.clearDisplay();
display.setCursor(25, 15);
display.setTextSize(1);
display.setTextColor(WHITE);
display.println(" PH Sensor");
display.setCursor(25, 35);
display.setTextSize(1);
display.print("Initializing");
display.display();
delay(3000);
}
 
void loop() {
byte val1, val2, val3;
val2 = Fphaddress();
delay(250);
byte val4,val5,val6;
  val4 = nitrogen();
  delay(250);
  val5 = phosphorous();
  delay(250);
  val6 = potassium();
  delay(250);
  
ph = val2 / 10;
ph2 = val2 % 10;
Serial.print("PH: ");
Serial.print(ph);
Serial.print(".");
Serial.print(ph2);
Serial.println(" pH");
delay(2000);

Serial.print("Nitrogen: ");
  Serial.print(val1);
  Serial.println(" mg/kg");
  Serial.print("Phosphorous: ");
  Serial.print(val2);
  Serial.println(" mg/kg");
  Serial.print("Potassium: ");
  Serial.print(val3);
  Serial.println(" mg/kg");
  delay(2000);
 
display.clearDisplay();
 
display.setTextSize(2);
display.setCursor(5, 20);
display.print("PH: ");
display.print(ph);
display.print(".");
display.print(ph2);
display.setTextSize(1);
display.print(" pH");

display.setTextSize(2);
  display.setCursor(0, 5);
  display.print("N: ");
  display.print(val1);
  display.setTextSize(1);
  display.print(" mg/kg");
 
display.setTextSize(1);
display.setCursor(10, 55);
display.print("www.cybertice.com");
 
display.display();
}
 
byte Fphaddress() {
digitalWrite(DE, HIGH);
digitalWrite(RE, HIGH);
delay(10);
if (mod.write(phaddress, sizeof(phaddress)) == 8) {
digitalWrite(DE, LOW);
digitalWrite(RE, LOW);
for (byte i = 0; i < 7; i++) {
values[i] = mod.read();
}
}
return values[4];
}
byte nitrogen(){
  digitalWrite(DE ,HIGH);
  digitalWrite(RE ,HIGH);
  delay(10);
  if(mod.write(nitro,sizeof(nitro))==8){
    digitalWrite(DE ,LOW);
    digitalWrite(RE ,LOW);
    for(byte i=0;i<7;i++){
    //Serial.print(mod.read(),HEX);
    values[i] = mod.read();
    Serial.print(values[i],HEX);
    }
    Serial.println();
  }
  return values[4];
}
 
byte phosphorous(){
  digitalWrite(DE ,HIGH);
  digitalWrite(RE ,HIGH);
  delay(10);
  if(mod.write(phos,sizeof(phos))==8){
    digitalWrite(DE ,LOW);
    digitalWrite(RE ,LOW);
    for(byte i=0;i<7;i++){
    //Serial.print(mod.read(),HEX);
    values[i] = mod.read();
    Serial.print(values[i],HEX);
    }
    Serial.println();
  }
  return values[4];
}
 
byte potassium(){
  digitalWrite(DE ,HIGH);
  digitalWrite(RE ,HIGH);
  delay(10);
  if(mod.write(pota,sizeof(pota))==8){
    digitalWrite(DE ,LOW);
    digitalWrite(RE ,LOW);
    for(byte i=0;i<7;i++){
    //Serial.print(mod.read(),HEX);
    values[i] = mod.read();
    Serial.print(values[i],HEX);
    }
    Serial.println();
  }
  return values[4];
}

Copy ส่วน error มาวางด้วยครับ เลือกบอร์ดถูกรึป่าว