我正在尝试使用#define
创建一个常量并定义一个引脚,请检查此代码
#define PIN_MICROPHONE 13;
void loop()
{
analogRead(PIN_MICROPHONE);
}
但是在尝试编译时,它说出了这个错误:
: In function 'void loop()':
error: expected `)' before ';' token
error: expected primary-expression before ')' token
error: expected `;' before ')' token
如何使用#define
宏来定义引脚?
此代码编译好
#define PIN_MICROPHONE 13;
void loop()
{
analogRead(13);
}
我正在使用Arduino 1.0.5
答案 0 :(得分:7)
问题是你的分号。
#define
在结尾处不需要分号。
#define PIN_MICROPHONE 13
void loop()
{
analogRead(PIN_MICROPHONE);
}
#define通常是预编译的指令。这意味着在编译代码之前,对文本进行查找和替换。所以IDE“看到”了下面的代码。
void loop()
{
analogRead(13;); //not going to work
}
PS:我认为在Arduino风格指南中不鼓励#define
。