Выдает ошибку "expected unqualified-id before 'if'"

Надоедливый Енот

✩✩✩✩✩✩✩
19 Июн 2020
1
0
Схему "проекта" прикреплю ниже

Код:
#include <SoftwareSerial.h>

SoftwareSerial wifiSerial(2, 3);

#define RED 11
#define GRN 12
#define BLU 13

void setup()
{
  pinMode(RED, OUTPUT);
  pinMode(GRN, OUTPUT);
  pinMode(BLU, OUTPUT);

  Serial.begin(115200);
  while (!Serial) {
    ;
  }
}

void loop() {
  digitalWrite(RED, LOW);
  digitalWrite(GRN, LOW);
  digitalWrite(BLU, LOW);
}
if (Serial.available() > 0) {
  String message = readSerialMessage();
}

if (find(message, "debugEsp8266:")) {   //Вот здесь выдает ошибку
  String result = sendToWifi(message.substring(13, message.length()), responseTime, DEBUG);
  if (find(result, "OK")) {
    sendData("\nOK");
    else
      sendData("\nEr");
  }
  if (wifiSerial.available() > 0) {

    String message = readWifiSerialMessage();

    if (find(message, "esp8266:")) {
      String result = sendToWifi(message.substring(8, message.length()), responseTime, DEBUG);
      if (find(result, "OK"))
        sendData("\n" + result);
      else
        sendData("\nErrRead");               //At command ERROR CODE for Failed Executing statement
    } else if (find(message, "Red")) { //receives HELLO from wifi
      sendData("\\nOh, red!")
      digitalWrite(RED, HIGH)
      delay(5000);    //arduino says HI
    } else if (find(message, "Green")) {
      //turn on built in LED:
      sendData("\\nOh, green!")
      digitalWrite(GREEN, HIGH)
      delay(5000);
    } else if (find(message, "Blue")) {
      //turn off built in LED:
      sendData("\\nOn, blue!")
      digitalWrite(BLUE, HIGH)
      delay(5000);
    }
    else {
      sendData("\nErrRead");                 //Command ERROR CODE for UNABLE TO READ
    }
    delay(responseTime);
  }
}
 

Вложения

yura6

✩✩✩✩✩✩✩
5 Янв 2025
1
0
Оформи код соответствующим тэгом, см. Правила
Выдаёт 86:1: ошибка: ожидаемый неквалифицированный идентификатор перед "if" Помогите исправить у меня не выходит!

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C _lcd1(0x27, 20, 4);
int _dispTempLength1 = 0;
boolean _isNeedClearDisp1;

int _ultrasonic1O = 0;
unsigned long _ultrasonic1P = 0UL;
int _disp1oldLength = 0;
int _ultrasonic2O = 0;
unsigned long _ultrasonic2P = 0UL;
int _disp3oldLength = 0;

const int redPin = 4;
const int greenPin = 5;
const int bluePin = 6;
const int buzzerPin = 8;

long duration;
int distance;

void setup()
{

Wire.begin();
delay(10);
_lcd1.init();
_lcd1.backlight();
pinMode(2, OUTPUT);
pinMode(3, INPUT);
pinMode(11, OUTPUT);
pinMode(12, INPUT);
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
pinMode(buzzerPin, OUTPUT);

}
void loop()
{

if (_isNeedClearDisp1) {
_lcd1.clear();
_isNeedClearDisp1 = 0;
}
if (distance > 100) {
setColor(255, 0, 0); // Синий
noTone(buzzerPin); // Отключаем звук
} else if (distance > 50 && distance <= 100) {
setColor(0, 255, 0); // Зеленый
playBeep(1);
} else if (distance > 30 && distance <= 50) {
setColor(0, 200, 200); // Желтый
playBeep(2);
} else if (distance > 20 && distance <= 30) {
setColor(0, 100, 255); // Оранжевый
playBeep(3);
} else if (distance <= 15) {
setColor(0, 0, 255); // Красный
tone(buzzerPin, 1000); // Постоянный звук
}

delay(500); // Задержка перед следующим измерением
}

void setColor(int red, int green, int blue) {
analogWrite(redPin, red);
analogWrite(greenPin, green);
analogWrite(bluePin, blue);
}

void playBeep(int count) {
for (int i = 0; i < count; i++) {
tone(buzzerPin, 1000); // Включаем звук с частотой 1000 Гц
delay(100); // Задержка для короткого сигнала
noTone(buzzerPin); // Отключаем звук
delay(100); // Задержка между сигналами
}
}





//Плата:1
if (abs((millis() - _ultrasonic1P)) > 100) {
digitalWrite(2, HIGH);
delayMicroseconds(10);
digitalWrite(2, LOW);
int _ultrasonicTemp = (pulseIn(3, HIGH)) / 58;
if ( _ultrasonicTemp < 4000) {
_ultrasonic1O = _ultrasonicTemp;
}
_ultrasonic1P = millis();
}
if (1) {
_dispTempLength1 = ((((String("Distance: R=")) + ((String((_ultrasonic1O), DEC))) + (String("Cm"))))).length();
if (_disp3oldLength > _dispTempLength1) {
_isNeedClearDisp1 = 1;
}
_disp3oldLength = _dispTempLength1;
_lcd1.setCursor(int((20 - _dispTempLength1) / 2), 2);
_lcd1.print((((String("Distance: R=")) + ((String((_ultrasonic1O), DEC))) + (String("Cm")))));
} else {
if (_disp3oldLength > 0) {
_isNeedClearDisp1 = 1;
_disp3oldLength = 0;
}
}
if (abs((millis() - _ultrasonic2P)) > 100) {
digitalWrite(11, HIGH);
delayMicroseconds(10);
digitalWrite(11, LOW);
int _ultrasonicTemp = (pulseIn(12, HIGH)) / 58;
if ( _ultrasonicTemp < 4000) {
_ultrasonic2O = _ultrasonicTemp;
}
_ultrasonic2P = millis();
}
if (1) {
_dispTempLength1 = ((((String("Distance: L=")) + ((String((_ultrasonic2O), DEC))) + (String("Cm"))))).length();
if (_disp1oldLength > _dispTempLength1) {
_isNeedClearDisp1 = 1;
}
_disp1oldLength = _dispTempLength1;
_lcd1.setCursor(int((20 - _dispTempLength1) / 2), 1);
_lcd1.print((((String("Distance: L=")) + ((String((_ultrasonic2O), DEC))) + (String("Cm")))));
} else {
if (_disp1oldLength > 0) {
_isNeedClearDisp1 = 1;
_disp1oldLength = 0;
}
}






}
 

viktor1703

★★★✩✩✩✩
9 Дек 2021
688
164
@yura6, по моему скромному мнению, все что после
"Висит где то в воздухе", не относится ни к какой функции. Хотя, если внимательнее посмотреть, там и дальше каша, if'ы также болтаются сами по себе. Где вы взяли этот код?
C++:
if (1)
вы точно хотели это?
 
Изменено: