C++ arduino脚本中使用RFID打开LED时出错
守则: 我正在使用MFRC522 1.4.5库和Arduino Uno以及RFID rc522。 每当我用卡或钥匙扫描RFID模块时,我试图让LED灯亮起 另一个注意事项是,我对Arduino中的编码不太熟悉,我主要想了解电路(但是我确实理解编码概念,因为我有Python和Java的背景,我只是不知道应该如何解释这些错误消息) RFID-RC522_LED:10:14:错误:“MAX_LEN”未在此范围内声明 必须声明C++变量中的p>。编译器根本不知道hwat MAX_LEN是谁。它既没有类型也没有值,但您试图将其用作数组大小:C++ arduino脚本中使用RFID打开LED时出错,c++,arduino,arduino-uno,rfid,C++,Arduino,Arduino Uno,Rfid,守则: 我正在使用MFRC522 1.4.5库和Arduino Uno以及RFID rc522。 每当我用卡或钥匙扫描RFID模块时,我试图让LED灯亮起 另一个注意事项是,我对Arduino中的编码不太熟悉,我主要想了解电路(但是我确实理解编码概念,因为我有Python和Java的背景,我只是不知道应该如何解释这些错误消息) RFID-RC522_LED:10:14:错误:“MAX_LEN”未在此范围内声明 必须声明C++变量中的p>。编译器根本不知道hwat MAX_LEN是谁。它既没有类型
byte TagData[MAX_LEN];
大写字母通常用于宏。所以你很可能错过了一个
#定义MAX_LEN 4//或您需要的任何数字
然后,无论在哪里使用MAX_LEN,它都将被4替换,从而产生字节标记数据[4]代码>
或者,您必须告诉编译器它的类型和值
例如int MAX\u LEN=4代码>
RFID-RC522_LED:22:7:错误:“类MFRC522”没有名为
“开始”
创建名为nfc
MFRC522 nfc(SDAPIN, RESETPIN);
然后尝试打电话
nfc.begin();
但正如错误所说,该类中没有begin方法
请参阅该类的文档
对于所有其他错误,情况基本相同
一个快速的谷歌搜索显示,出于某种原因,您试图在MFRC522
类的实例上使用Adafruit\u NFCShield\u I2C
类的方法
如果你不仔细阅读课堂参考资料而不小心把教程放在一起,通常会发生这种情况。错误消息告诉你一些事情。例如,您是否在任何地方声明了MAX\u LEN
?提示:您可以看到,您已经声明了SDAPIN
,使用宏#define SDAPIN 10
,这些错误消息都是不言自明的,如果这没有帮助,您可以始终搜索web(省去您的实际姓名)。你不是这个星球上唯一面对C++编译器错误的人;即使在Java和Python中,也不能调用不存在的函数。
MFRC522 nfc(SDAPIN, RESETPIN);
nfc.begin();