-1
// Sketch 4-01 (From the book :) )
int ledPin = 13;
int delayPeriod = 250;

void setup()
{
   pinMode (ledPin, OUTPUT); 
}

void loop()
{
 flash(20, delayPeriod);
 delay(3000);
}

void flash(int numFlashes, int d))
{
  for (int i = 0; i < numFlashes; i ++)
  {

 digitalWrite(ledPin, HIGH);
delay(d);
digitalWrite(ledPin, LOW);
delay(d);

}
}

我正在关注这本书的过程,但我的 IDE 给了我错误“'flash' is not declared in this scope。请记住,我是编程新手,这可能是一个基本错误。只是试图修改闪烁的 LED 程序。

4

1 回答 1

1

flash您必须在使用函数之前声明该函数。

在函数之前放置函数的原型loop,如下所示:

void flash(int numFlashes, int d);

void loop
{
    /* .... */
}

或者您将整个函数定义放在函数之前loop

顺便说一句,你在函数头中有一个右括号。如果没有看到错误,很难说这些问题中的哪一个是真正的罪魁祸首。

于 2013-01-13T19:11:55.903 回答