StephanG90
21.07.2024, 15:44
Hallo,
ich habe nach einiger zeit mal wieder angefangen Arduino zu Programmieren.
Aktuell bin ich dran eine Zugangskontrolle per RFID zu Programmieren. Aktuell soll einfach das LCD Display Zugang/ kein Zugang ausgeben. Das Programm funktioniert soweit auch, nur möchte ich gerne noch weitere karten hinzufügen die Zugang bekommen. Wie füge ich das am besten ein?
Wenn ich im Programm
if (WertDEZ == "243 142 107 1" eingebe, funktioniert das - bei der Karte kommt "Zugang" alle anderen "kein Zugang".
Wenn ich die andere Karte auf folgende weise hinzufüge funktioniert es nicht mehr
if (WertDEZ == "243 142 107 1"; "52 88 17 60")
Das komplette Programm:
#include <LiquidCrystal.h>
#include "MFRC522.h"
const int rs = 7, en = 6, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
#define SDA 10
#define RST 9
MFRC522 mfrc522(SDA, RST);
void setup()
{
lcd.begin(16, 2);
Serial.begin(9600);
SPI.begin();
mfrc522.PCD_Init();
}
void loop()
{
String WertDEZ;
if (!mfrc522.PICC_IsNewCardPresent())
{
return;
}
if (!mfrc522.PICC_ReadCardSerial())
{
return;
}
Serial.println("Karte entdeckt!");
for (byte i = 0; i < mfrc522.uid.size; i++)
{
WertDEZ = WertDEZ + String(mfrc522.uid.uidByte[i], DEC) + " ";
}
WertDEZ.trim();
Serial.println("Dezimalwert: " + WertDEZ);
if (WertDEZ == "243 142 107 1"; "52 88 17 60")
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Zugang");
}
else
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("kein Zugang");
}
delay(1000);
}
Vielen Dank im Voraus
Stephan
ich habe nach einiger zeit mal wieder angefangen Arduino zu Programmieren.
Aktuell bin ich dran eine Zugangskontrolle per RFID zu Programmieren. Aktuell soll einfach das LCD Display Zugang/ kein Zugang ausgeben. Das Programm funktioniert soweit auch, nur möchte ich gerne noch weitere karten hinzufügen die Zugang bekommen. Wie füge ich das am besten ein?
Wenn ich im Programm
if (WertDEZ == "243 142 107 1" eingebe, funktioniert das - bei der Karte kommt "Zugang" alle anderen "kein Zugang".
Wenn ich die andere Karte auf folgende weise hinzufüge funktioniert es nicht mehr
if (WertDEZ == "243 142 107 1"; "52 88 17 60")
Das komplette Programm:
#include <LiquidCrystal.h>
#include "MFRC522.h"
const int rs = 7, en = 6, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
#define SDA 10
#define RST 9
MFRC522 mfrc522(SDA, RST);
void setup()
{
lcd.begin(16, 2);
Serial.begin(9600);
SPI.begin();
mfrc522.PCD_Init();
}
void loop()
{
String WertDEZ;
if (!mfrc522.PICC_IsNewCardPresent())
{
return;
}
if (!mfrc522.PICC_ReadCardSerial())
{
return;
}
Serial.println("Karte entdeckt!");
for (byte i = 0; i < mfrc522.uid.size; i++)
{
WertDEZ = WertDEZ + String(mfrc522.uid.uidByte[i], DEC) + " ";
}
WertDEZ.trim();
Serial.println("Dezimalwert: " + WertDEZ);
if (WertDEZ == "243 142 107 1"; "52 88 17 60")
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Zugang");
}
else
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("kein Zugang");
}
delay(1000);
}
Vielen Dank im Voraus
Stephan