• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь esp32 + nextion

GTeeam

New member
Всем привет, несколько дней присоединился к этому, чудесному, миру микроконтроллеров... ну и по самую шею...
Есть ESP32 и Nextion и светодиод выдернутый с пк. На есп выводится время, данные погоды а также в заданное время светодиод моргает. Пытаюсь реализовать управление светодиодом из порта, но результата 0.

Вот так пытаюсь управлять светодиодом, если прошить вот так, без остальных функций то все работает, а если добавить вывод времени и тд, то все работает кроме светодиода и в порт данные не падают. Как быть? Куда копать?
Спасибо)
Код:
void GetDataFromNextion(){

if (Serial.available() > 0) {
    incomingByte = Serial.read();

    if(incomingByte == 'on'){
      digitalWrite(ledPin, HIGH);

    }else if (incomingByte == 'off'){
      digitalWrite(ledPin, LOW);
    }
   
      //Serial.print("I received: ");
      Serial.println(incomingByte, DEC);
      endNextionCommand();
  }
  //delay(10);
}
 

Сергей_Ф

Moderator
Команда форума
@GTeeam кто вас научил так сравнивать строки (набор символов)? Ну и Serial.read() не возвращает набор байт, так что вы сравниваете непонятно что с чем.
 
Последнее редактирование:

pvvx

Активный участник сообщества
@GTeeam кто вас научил так сравнивать строки (набор символов)? Ну и Serial.read() не возвращает набор байт, так что вы сравниваете непонятно что с чем.
Это Java? :)
А может какой новый гибридный язык. Ныне языков программирования развелось...

Но кавычка[inline] ' [/inline]в Cи означает что это char. А как два char [inline]'on'[/inline] смогли интерпретироваться?
 

GTeeam

New member
Это Java? :)
А может какой новый гибридный язык. Ныне языков программирования развелось...

Но кавычка[inline] ' [/inline]в Cи означает что это char. А как два char [inline]'on'[/inline] смогли интерпретироваться?
Это сарказм? Ныне шутников шутников развелось...
 

lexis-megavolt

New member
Всем привет, несколько дней присоединился к этому, чудесному, миру микроконтроллеров... ну и по самую шею...
Есть ESP32 и Nextion и светодиод выдернутый с пк. На есп выводится время, данные погоды а также в заданное время светодиод моргает. Пытаюсь реализовать управление светодиодом из порта, но результата 0.

Вот так пытаюсь управлять светодиодом, если прошить вот так, без остальных функций то все работает, а если добавить вывод времени и тд, то все работает кроме светодиода и в порт данные не падают. Как быть? Куда копать?
Спасибо)
Код:
void GetDataFromNextion(){

if (Serial.available() > 0) {           // пока есть данные в уарте
    incomingByte = Serial.read(); // приняли 1 байт, перетерев при этом предыдущий

    if(incomingByte == 'on'){        // и пытаемся сравнить байт с указателем на константный массив из 2х байт и 3х элементов, заканчивающийся нулем :)
      digitalWrite(ledPin, HIGH);

    }else if (incomingByte == 'off'){  // та же фигня
      digitalWrite(ledPin, LOW);
    }
   // ------------------------- в результате ни одно условие не будет выполнено  ----------------------------
      //Serial.print("I received: ");
      Serial.println(incomingByte, DEC);
      endNextionCommand();
  }
  //delay(10);
}
 
Сверху Снизу