当前位置:首页 > 科学研究 > 电子编程 > 正文内容

​Arduino Project 046 - Based Security System by Arduino with Lcd Display

RonWang2个月前 (12-12)电子编程144

Arduino Project 046 - Based Security System by Arduino with Lcd Display

Arduino RFID LCD Display Circuit

Arduino RFID LCD Display Schematic

/*
 * Project 046 Based Security System by Arduino with Lcd Display
 *                   RFID-RC522 
 */
 #include <SPI.h>  
 #include <MFRC522.h>  
 #include <LiquidCrystal.h>  
 #define SS_PIN 10  
 #define RST_PIN 9  
 MFRC522 mfrc522(SS_PIN, RST_PIN);  // Create MFRC522 instance.  
 #define beep_pin 8  
 LiquidCrystal lcd(2, 3, 4, 5, 6, 7);  
 void setup()   
 {  
  Serial.begin(9600);  // Initiate a serial communication  
  pinMode(beep_pin,OUTPUT);  
  digitalWrite(beep_pin,LOW);  
  lcd.begin(16, 2);  
  lcd.setCursor(3, 1);  
  lcd.print("Welcome!!");  
  lcd.setCursor(0, 0);  
  lcd.print("Circuit is Ready");  
  delay(1500);  
  lcd.clear();   
  SPI.begin();   // Initiate SPI bus  
  mfrc522.PCD_Init();  // Initiate MFRC522  
  Serial.println("Put your card to the reader...");  
  Serial.println();  
 }  
 void loop()   
 {  
  digitalWrite(beep_pin, LOW);  
  lcd.clear();  
  lcd.setCursor(0, 0);  
  lcd.print("Put your card to");  
  lcd.setCursor(0, 1);  
  lcd.print("the reader......");  
  delay(300);  
  // Look for new cards  
  if ( ! mfrc522.PICC_IsNewCardPresent())   
  {  
   return;  
  }  
  // Select one of the cards  
  if ( ! mfrc522.PICC_ReadCardSerial())   
  {  
   return;  
  }  
  //Show UID on serial monitor  
  Serial.print("UID tag :");  
  String content= "";  
  byte letter;  
  for (byte i = 0; i < mfrc522.uid.size; i++)   
  {  
    Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");  
    Serial.print(mfrc522.uid.uidByte[i], HEX);  
    content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));  
    content.concat(String(mfrc522.uid.uidByte[i], HEX));  
  }  
  Serial.println();  
  Serial.print("Message : ");  
  content.toUpperCase();  
  if (content.substring(1) == "XX XX XX XX") //change here the UID of the card/cards that you want to give access  
  {  
   digitalWrite(beep_pin,HIGH);  
   delay(200);  
   digitalWrite(beep_pin,LOW);  
   delay(100);  
   lcd.setCursor(0, 0);  
   lcd.print("ID : ");  
   lcd.print(content.substring(1));  
   lcd.setCursor(0, 1);  
   lcd.print("Authorized access");  
   Serial.println("Authorized access");  
   delay(1200);     
  }  
  else  {  
   digitalWrite(beep_pin,HIGH);  
   lcd.setCursor(0, 0);  
   lcd.print("ID : ");  
   lcd.print(content.substring(1));  
   lcd.setCursor(0, 1);  
   lcd.print("Access denied");  
   Serial.println(" Access denied");  
   delay(1500);  
    }  
 }


版权声明:本文为原创文章,版权归donstudio所有,欢迎分享本文,转载请保留出处!

本文链接:http://www.donstudio.cn/?id=303

标签: Arduino

相关文章

Arduino Project 042 - SD Card Information Basic

Arduino Project 042 - SD Card Information Basic

Arduino Programming Basic -- Reading and Writing to an SD CardProject 42A SD Card InformationArduino...

C语言调试运行环境Pelles C的安装

C语言调试运行环境Pelles C的安装

C语言调试运行环境之TurboC一文介绍了在32位Windows系统下安装C语言运行环境之TubroC,但是由于TurobC只能在32位系统下运行,导致现在很多Windows10和Windows 11...

Arduino Project 025 - Servo Control

Arduino Project 025 - Servo Control

You will need to obtain a standard RC servo; any of the small or mid-sized servos will do. Larger se...

Arduino Project 012 - Piezo Sounder Melody Player

Arduino Project 012 - Piezo Sounder Melody Player

Rather than using the piezo to make annoying alarm sounds, why not use it to play a melody? You are...

Arduino Programming Basic - If and Loop

Arduino Programming Basic - If and Loop

Arduino 程序基础,介绍Arduino程序的基本组成,第一部分编写了10个例子,关于变量及变量名称,串口监视器,if循环,for循环,while循环等。第二部分介绍了函数,全局变量,局部变量和静...

Arduino Project 006 - LED Interactive Chase Effect

Arduino Project 006 - LED Interactive Chase Effect

Leave your circuit board intact from Project 5. You’re just going to add a potentiometer to this cir...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。