รวมโค้ด 2 โค้ดนี้ยังไงครับ

รวมโค้ด 2 โค้ดนี้ยังไงครับ ผมรวมแล้วใช้งานได้แค่โค้ดเดียวครับ
ช่วยผมทีครับรวมโค้ดยังไงครับ
โค้ดที่ 1

#include <FirebaseESP8266.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
ESP8266WiFiMulti WiFiMulti;


#define FIREBASE_HOST "esp8266-93afd-rtdb.firebaseio.com"
#define FIREBASE_AUTH "v6vPF7jLO35TN0Cv6c9Xa7UnsCH8kQUh2Y"

//เซ็นเซอร์เสียง
int sound_sensor = D1;
int LED3 = D6;

int clap = 0;
long detection_range_start = 0;
long detection_range = 0;
boolean status_lights = false;



// WiFi Access Config
#define WIFI_SSID "TP-Link"
#define WIFI_PASSWORD "12054213"
#define LED1 D0
#define LED2 D5

FirebaseData firebaseData;
FirebaseJson json;



void setup() {
  Serial.end();
  Serial.begin(9600);
  delay(10);
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  Serial.print("Connecting");
  while (WiFi.status() != WL_CONNECTED) {
    Serial.print(".");
    delay(300);
  }
  Serial.println();
  Serial.print ("connected: ");
  Serial.println(WiFi.localIP());
  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);

  pinMode(sound_sensor, INPUT);
  pinMode(LED3, OUTPUT);
}
int x, y;

void loop() {

  //Firebase

  if (Firebase.getInt(firebaseData, "/sw1")) {
    if (firebaseData.dataType() == "int") {
      Serial.print(" LED1 : ");
      Serial.println(firebaseData.intData());
      x = firebaseData.intData();
    }
  }
  else {
    Serial.println(firebaseData.errorReason());
  }
  if (Firebase.getInt(firebaseData, "/sw2")) {
    if (firebaseData.dataType() == "int") {
      Serial.print(" LED2 : ");
      Serial.println(firebaseData.intData());
      y = firebaseData.intData();
    }
  }

  else {
    Serial.println(firebaseData.errorReason());
  }
  digitalWrite(LED1, x);
  digitalWrite(LED2, y);


  }

โค้ดที่2

int sound_sensor = D1;
int LED3 = D6;

int clap = 0;
long detection_range_start = 0;
long detection_range = 0;
boolean status_lights = false;

void setup() {
  pinMode(sound_sensor, INPUT);
  pinMode(LED3, OUTPUT);
}

void loop() {
  int status_sensor = digitalRead(sound_sensor);
  if (status_sensor == 0)
  {
    if (clap == 0)
    {
      detection_range_start = detection_range = millis();
      clap++;
    }
    else if (clap > 0 && millis()-detection_range >= 100)
    {
      detection_range = millis();
      clap++;
    }
  }
  if (millis()-detection_range_start >= 500)
  {
    if (clap == 2)
    {
      if (!status_lights)
        {
          status_lights = true;
          digitalWrite(LED3, HIGH);
          Serial.print(" LED3 : ");
        }
        else if (status_lights)
        {
          status_lights = false;
          digitalWrite(LED3, LOW);
          Serial.print(" LED3 : ");
        }
    }
    clap = 0;
  }
}

ขอดูวิธีการร่วมที่ว่าไม่ได้หน่อยครับ

นี่ครับผิดตรงไหน ต้องแก้ตรงไหน หรือควรเติมอะไรช่วยผมทีครับ ผมมือใหม่จริงๆครับ

#include <FirebaseESP8266.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
ESP8266WiFiMulti WiFiMulti;

#define FIREBASE_HOST “esp8266-9fd-rtdb.firebaseio.com
#define FIREBASE_AUTH “v6vPF7jLO35TN0C7UnsCH8kQUh2Y0QmMr3”

// WiFi Access Config
#define WIFI_SSID “TP-Link_Kritsada”
#define WIFI_PASSWORD “120542131144”
#define LED1 D0
#define LED2 D5

FirebaseData firebaseData;
FirebaseJson json;

int sound_sensor = D1;
int LED3 = D6;

int clap = 0;
long detection_range_start = 0;
long detection_range = 0;
boolean status_lights = false;

void setup() {
Serial.end();
Serial.begin(9600);
delay(10);
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print(“Connecting”);
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".");
delay(300);
}
Serial.println();
Serial.print ("connected: ");
Serial.println(WiFi.localIP());
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(sound_sensor, INPUT);
pinMode(LED3, OUTPUT);
}
int x, y;

void loop() {

//Firebase

if (Firebase.getInt(firebaseData, “/sw1”)) {
if (firebaseData.dataType() == “int”) {
Serial.print(" LED1 : “);
Serial.println(firebaseData.intData());
x = firebaseData.intData();
}
}
else {
Serial.println(firebaseData.errorReason());
}
if (Firebase.getInt(firebaseData, “/sw2”)) {
if (firebaseData.dataType() == “int”) {
Serial.print(” LED2 : ");
Serial.println(firebaseData.intData());
y = firebaseData.intData();
}
}

else {
Serial.println(firebaseData.errorReason());
}
digitalWrite(LED1, x);
digitalWrite(LED2, y);

//เสียง
int status_sensor = digitalRead(sound_sensor);
if (status_sensor == 0)
{
if (clap == 0)
{
detection_range_start = detection_range = millis();
clap++;
}
else if (clap > 0 && millis()-detection_range >= 100)
{
detection_range = millis();
clap++;
}
}
if (millis()-detection_range_start >= 500)
{
if (clap == 2)
{
if (!status_lights)
{
status_lights = true;
digitalWrite(LED3, HIGH);
}
else if (status_lights)
{
status_lights = false;
digitalWrite(LED3, LOW);
}
}
clap = 0;
}
}