1516浏览
查看: 1516|回复: 6

[求助] 我想问问这是哪里出现问题了呀,求大神大家指点,帮帮...

[复制链接]


#include <SPI.h>
#include <RFID.h>
#include <Servo.h>

RFID rfid(10, 9);      
unsigned char status;
unsigned char str[MAX_LEN];

String accessGranted [2] = {"15301511012", "5305151412"};  //序列号位置
int accessGrantedSize = 2;                                //几个卡号

Servo lockServo;               
int lockPos = 15;              
int unlockPos = 75;            
boolean locked = true;

int redLEDPin = 5;
int greenLEDPin = 6;

void setup()
{
  Serial.begin(9600);     //Serial monitor is only required to get tag ID numbers and for troubleshooting
  SPI.begin();            //Start SPI communication with reader
  rfid.init();            //initialization
  pinMode(redLEDPin, OUTPUT);     //LED startup sequence
  pinMode(greenLEDPin, OUTPUT);
  digitalWrite(redLEDPin, HIGH);
  delay(200);
  digitalWrite(greenLEDPin, HIGH);
  delay(200);
  digitalWrite(redLEDPin, LOW);
  delay(200);
  digitalWrite(greenLEDPin, LOW);
  lockServo.attach(3);
  lockServo.write(lockPos);         //Move servo into locked position
  Serial.println("Place card/tag near reader...");
}

void loop()
{
  if (rfid.findCard(PICC_REQIDL, str) == MI_OK)   //Wait for a tag to be placed near the reader
  {
    Serial.println("Card found");
    String temp = "";                             //Temporary variable to store the read RFID number
    if (rfid.anticoll(str) == MI_OK)              //Anti-collision detection, read tag serial number
    {
      Serial.print("The card's ID number is : ");
      for (int i = 0; i < 4; i++)                 //Record and display the tag serial number
      {
        temp = temp + (0x0F & (str >> 4));
        temp = temp + (0x0F & str);
      }
      Serial.println (temp);
      checkAccess (temp);     //Check if the identified tag is an allowed to open tag
    }
    rfid.selectTag(str); //Lock card to prevent a redundant read, removing the line will make the sketch read cards continually
  }
  rfid.halt();
}

void checkAccess (String temp)    //Function to check if an identified tag is registered to allow access
{
  boolean granted = false;
  for (int i=0; i <= (accessGrantedSize-1); i++)    //Runs through all tag ID numbers registered in the array
  {
    if(accessGranted == temp)            //If a tag is found then open/close the lock
    {
      Serial.println ("Access Granted");
      granted = true;
      if (locked == true)         //If the lock is closed then open it
      {
          lockServo.write(unlockPos);
          locked = false;
      }
      else if (locked == false)   //If the lock is open then close it
      {
          lockServo.write(lockPos);
          locked = true;
      }
      digitalWrite(greenLEDPin, HIGH);    //Green LED sequence
      delay(200);
      digitalWrite(greenLEDPin, LOW);
      delay(200);
      digitalWrite(greenLEDPin, HIGH);
      delay(200);
      digitalWrite(greenLEDPin, LOW);
      delay(200);
    }
  }
  if (granted == false)     //If the tag is not found
  {
    Serial.println ("Access Denied");
    digitalWrite(redLEDPin, HIGH);      //Red LED sequence
    delay(200);
    digitalWrite(redLEDPin, LOW);
    delay(200);
    digitalWrite(redLEDPin, HIGH);
    delay(200);
    digitalWrite(redLEDPin, LOW);
    delay(200);
  }


D:\打包解压RFID项目\RFID\RFID.ino:4:10: fatal error: RFID.h: No such file or directory
compilation terminated.

exit status 1

Compilation error: RFID.h: No such file or directory


三春牛-创客  初级技神

发表于 2023-8-26 10:51:06

回帖奖励 +1 创造力

应该是库文件没有了
回复

使用道具 举报

三春牛-创客  初级技神

发表于 2023-8-26 10:52:24

重新安装一下
回复

使用道具 举报

快看擎天猪  中级技师

发表于 2023-8-26 11:33:39

重装就可以了
回复

使用道具 举报

花生编程  中级技匠

发表于 2023-8-29 17:17:20

没有库了吧
回复

使用道具 举报

花生编程  中级技匠

发表于 2023-8-29 17:19:04

重装一下
回复

使用道具 举报

刘骏森  初级技师

发表于 2024-10-1 15:58:57

库文件装错了吧,要装到.../项目文件夹/libraries/,要是解压后的文件夹,项目文件夹地址在文件->首选项里查看
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail