美文网首页
nodeMCU(ESP8266)和RC522的接线图

nodeMCU(ESP8266)和RC522的接线图

作者: Lengff | 来源:发表于2019-04-02 17:29 被阅读0次

    参考文章

    这篇应该是别人从国外论坛翻译过来的,直接就是用翻译软件翻译的,讲的很模糊
    使用MySQL与Raspberry Pi和rfid-rc522考勤系统

    初识 NodeMCU 及其 DEVKIT 开发板

    nodeMCU引脚图

    引脚图

    nodeMCU 和 RC522接线图

    接线图

    示例代码

    #include <SPI.h>
    #include <MFRC522.h>
    #define RST_PIN         5           // 配置针脚
    #define SS_PIN          4
    MFRC522 mfrc522(SS_PIN, RST_PIN);   // 创建新的RFID实例
    MFRC522::MIFARE_Key key;
    void setup() {
      Serial.begin(9600); // 设置串口波特率为9600
      SPI.begin();        // SPI开始
      mfrc522.PCD_Init(); // Init MFRC522 card
      Serial.println("test-demo-start");
    }
    
    
    void loop() {
      // 寻找新卡
      if ( ! mfrc522.PICC_IsNewCardPresent()) {
        //Serial.println("没有找到卡");
        return;
      }
    
      // 选择一张卡
      if ( ! mfrc522.PICC_ReadCardSerial()) {
        Serial.println("没有卡可选");
        return;
      }
    
    
      // 显示卡片的详细信息
      Serial.print(F("卡片 UID:"));
      dump_byte_array(mfrc522.uid.uidByte, mfrc522.uid.size);
      Serial.println();
      Serial.print(F("卡片类型: "));
      MFRC522::PICC_Type piccType = mfrc522.PICC_GetType(mfrc522.uid.sak);
      Serial.println(mfrc522.PICC_GetTypeName(piccType));
    
      // 检查兼容性
      if (    piccType != MFRC522::PICC_TYPE_MIFARE_MINI
              &&  piccType != MFRC522::PICC_TYPE_MIFARE_1K
              &&  piccType != MFRC522::PICC_TYPE_MIFARE_4K) {
        Serial.println(F("仅仅适合Mifare Classic卡的读写"));
        return;
      }
    
      MFRC522::StatusCode status;
      if (status != MFRC522::STATUS_OK) {
        Serial.print(F("身份验证失败?或者是卡链接失败"));
        Serial.println(mfrc522.GetStatusCodeName(status));
        return;
      }
      //停止 PICC
      mfrc522.PICC_HaltA();
      //停止加密PCD
      mfrc522.PCD_StopCrypto1();
      return;
    }
    
    /**
       将字节数组转储为串行的十六进制值
    */
    void dump_byte_array(byte *buffer, byte bufferSize) {
      for (byte i = 0; i < bufferSize; i++) {
        Serial.print(buffer[i] < 0x10 ? " 0" : " ");
        Serial.print(buffer[i], HEX);
      }
    }
    

    本人也是小白,欢迎大神加Q1286396784相互学习

    相关文章

      网友评论

          本文标题:nodeMCU(ESP8266)和RC522的接线图

          本文链接:https://www.haomeiwen.com/subject/jvzgbqtx.html