这个Arduino代码有什么问题?

时间:2013-01-13 19:10:18

标签: c arduino

// 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'未在此范围内声明。请记住,我是编程新手,这可能是一个基本错误。只是尝试修改闪烁的LED程序。

1 个答案:

答案 0 :(得分:1)

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

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

void flash(int numFlashes, int d);

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

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

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