0

在这里编程相对较新,但了解基础知识。

我有一些在 Arduino IDE 中成功使用的代码。在 main 中开始,调用另一个名为 bakerRelay 的函数,传递变量 setTemperature、temperatureC、futureSwitch 和 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未定义HIGH是未在此范围内声明标识符 HIGH 未定义 digitalWrite 未在此范围内声明

我难住了。我很确定我的所有 {} 都在那里,我还缺少什么?

4

0 回答 0