xxx «не был объявлен в этой области» - код работал в Arduino IDE, но не в Atom / PlatformIO - PullRequest
0 голосов
/ 24 января 2020

относительно новичок в программировании, но я понимаю основы.

У меня есть код, который я успешно использовал в Arduino IDE. Запускается в главном, вызывает другую функцию, называемую FurnRelay, передавая переменные setTeuration, температура C, stovSwitch и relayPin. Когда я повторно набрал его в PlatformIO (VisualCode), я получаю ошибки «не объявлено в этой области». Я предположил, что это была вещь форматирования (я где-то забыл открыть или закрыть {}, но не могу найти ее.

Я объявил свои переменные и объявил функции в main. cpp,

Функция, объявленная до void Настройка:

void furnaceRelay(float setTemperature, float temperatureC, unsigned long furnaceSwitch, int relayPin);

Здесь объявлены переменные

float temperatureC;
float setTemperature = 19;
unsigned long furnaceSwitch;
int relayPin;

Затем вызвана функция здесь:

  furnaceRelay(setTemperature, temperatureC, furnaceSwitch, relayPin);

И эта функция называется:

void furnaceRelay(float setTemperature, float temperatureC, unsigned long furnaceSwitch, int relayPin)
{


    if ((temperatureC + 1) > setTemperature)
    {
      //Serial.println("Furnace Off");
      furnaceSwitch = millis();
      digitalWrite(relayPin, LOW);
    }

    if ((temperatureC - 1) < setTemperature)
    {
      //Serial.println("Furnace On");
      furnaceSwitch = millis();
      digitalWrite(relayPin, HIGH);
    }

    return;
}

Я получаю следующие ошибки:

идентификатор millis не определен millis не был объявлен в этой области видимости digitalWrite не определен LOW был не объявлено в этой области. Идентификатор LOW не определен. digitalWrite не был объявлен в этой области. Идентификатор millis не определен. millis не был объявлен в этой области. Идентификатор digitalWrite не определен. 1023 *

Я в тупике. Я почти уверен, что все мои {} есть, что еще мне не хватает?

...