ошибка expected primary-expression before ',' token

Рейтинг: -1Ответов: 2Опубликовано: 08.07.2023

Я не могу запустить скетч ардуино из-за этой ошибки. Делаю в VS Code PlatformIo.

Код:

#include <Arduino.h>

int serialGet;

#define led = D0;

void setup() {
  Serial.begin(9600);

  pinMode(led, OUTPUT);
  digitalWrite(led, LOW);
}

void loop()
  {
    int serialGet = Serial.read();

    if (serialGet > 1) {
      serialGet = 0;
    }

    else if (serialGet == 1) {
      digitalWrite(led, HIGH);
      Serial.println("LED = HIGH");
    }

    else {
      digitalWrite(led, LOW);
      Serial.println("LED = LOW");
    }

Я хотел сделать так: если в Serial Monior отправить 1, тогда светодиод загорелся, если 0, тогда он бы выключился.

Ответы

▲ 3Принят
#define led = D0;

приводит к тому, что, например,

pinMode(led, OUTPUT);

превращается перед компиляцией в

pinMode(= D0;, OUTPUT);

#define просто заменяет текст, не зная ничего о том, что такое синтаксис C. Так что все led заменяются, как вы попросили, на = D0;, после чего компилятор пытается это все скомпилировать...

▲ 1

После #define led уберите = и после D0 уберите ; Должно быть вот так:

    #define led D0