#include <LiquidCrystal.h> // LCD Library
#define LED_RED_PIN 6 // Red LED pin
#define LED_GREEN_PIN 7 // Green LED pin
#define BUZZER_PIN 4 // Buzzer pin
#define RELAY_PIN 11 // Relay control pin
LiquidCrystal lcd(13, 12, 10, 9, 8, 5); // LCD pins: RS, E, D4, D5, D6, D7
int count = 0;
char c;
String id;
int wait = 5000;
void setup()
{
Serial.begin(9600);
pinMode(LED_RED_PIN, OUTPUT);
pinMode(LED_GREEN_PIN, OUTPUT);
pinMode(RELAY_PIN, OUTPUT);
pinMode(BUZZER_PIN, OUTPUT);
Serial.println("RFID ATTENDANCE SYSTEM");
lcd.begin(16, 2); // set up the LCD's number of columns and rows:
lcd.setCursor(0, 0);
lcd.print("SCAN CARD");
lcd.setCursor(0, 1);
lcd.print("NAME: ");
}
void loop()
{
while (Serial.available() > 0)
{
c = Serial.read();
count++;
id += c;
if (count == 13)
{
Serial.print(id);
if (id == "2311032010028")
{
Serial.println("[Attendance taken]");
Serial.println("[NAME: SREEHAAS PENUGONDA]");
Serial.println("[STUDENT ID: 2311032010028]");
lcd.setCursor(0, 1);
lcd.print("NAME: SREEHAAS ");
digitalWrite(LED_GREEN_PIN, HIGH);
digitalWrite(RELAY_PIN, HIGH);
digitalWrite(BUZZER_PIN, HIGH);
delay(wait);
digitalWrite(LED_GREEN_PIN, LOW);
digitalWrite(RELAY_PIN, LOW);
digitalWrite(BUZZER_PIN, LOW);
lcd.setCursor(0, 0);
lcd.print("SCAN CARD");
lcd.setCursor(0, 1);
lcd.print("NAME: ");
}
else if (id == "2311032010036")
{
Serial.println("[Attendance taken]");
Serial.println("[NAME: SUHAYB AHMED]");
Serial.println("[STUDENT ID: 2311032010036]");
lcd.setCursor(0, 1);
lcd.print("NAME: SUHAYB ");
digitalWrite(LED_GREEN_PIN, HIGH);
digitalWrite(RELAY_PIN, HIGH);
digitalWrite(BUZZER_PIN, HIGH);
delay(wait);
digitalWrite(LED_GREEN_PIN, LOW);
digitalWrite(RELAY_PIN, LOW);
digitalWrite(BUZZER_PIN, LOW);
lcd.setCursor(0, 0);
lcd.print("SCAN CARD");
lcd.setCursor(0, 1);
lcd.print("NAME: ");
}
else if (id == "2311032010058")
{
Serial.println("[Attendance taken]");
Serial.println("[NAME: ADISH JUSTINE]");
Serial.println("[STUDENT ID: 2311032010058]");
lcd.setCursor(0, 1);
lcd.print("NAME: ADISH ");
digitalWrite(LED_GREEN_PIN, HIGH);
digitalWrite(RELAY_PIN, HIGH);
digitalWrite(BUZZER_PIN, HIGH);
delay(wait);
digitalWrite(LED_GREEN_PIN, LOW);
digitalWrite(RELAY_PIN, LOW);
digitalWrite(BUZZER_PIN, LOW);
lcd.setCursor(0, 0);
lcd.print("SCAN CARD");
lcd.setCursor(0, 1);
lcd.print("NAME: ");
}
else
{
Serial.println("[No DATA]");
lcd.setCursor(0, 1);
lcd.print("NAME: No DATA ");
digitalWrite(LED_RED_PIN, HIGH);
delay(wait);
digitalWrite(LED_RED_PIN, LOW);
lcd.setCursor(0, 0);
lcd.print("SCAN CARD");
lcd.setCursor(0, 1);
lcd.print("NAME: ");
}
}
}
count = 0;
id = "";
delay(500);
}