INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
RFID-Reader stört Keypad
07.02.2020, 21:36
Beitrag #1
RFID-Reader stört Keypad
Ich habe vor meine Zimmertür mit einem Schloss zu verschließen ,dass sowohl per Code als auch mit Karte geöffnet werden kann. Zu diesem Zweck habe ich ein Keypad und einen RFID-Reader angeschlossen die getrennt wunderbar funktionieren.

Ich habe folgendes Problem:
Keypad und RFID-Reader funktionieren getrennt einwandfrei, sobald in einem Sketch aber beide Module immer abwechselnd abgefragt werden ist das Keypad scheinbar in keinem definierten Zustand mehr.
Es gibt also zufällige Tasten aus (sehr schnell) obwohl diese nicht gedrückt sind. Daraus schließe ich das von dem MFRC-Modul Störsignale ausgehen, weiß aber nicht wie ich dieses Problem umgehe.

Bisher ausprobiert/ festgestellt:
Als Code habe ich die 2 einzelnen(den funktionierenden des Keypads und den des RFID-Reader) zusammengesetzt, sobald aber im Setup Bereich "mfrc522.PCD_Init();" ausgeführt wird und danach das Keypad abgefragt wird, ohne das weitere Aktionen mit dem RFID-Reader programmiert sind
spuckt das Keypad willkürliche Tasten aus.
Das muss bedeuten das ab dem Setup das Keypad aktiv ist und von diesem Zeitpunkt an Störsignale davon ausgehen.
Ich kann übrigens trotz der Störung Karten auslesen.

Vielen Dank für alle Antworten!!
Ich hoffe ich habe das Problem verständlich erklären können.

Hier noch der Sketch:

Code:
#include "Adafruit_Keypad.h"
#include <SPI.h>
#include <MFRC522.h>

#define RST_PIN   9     // SPI Reset Pin
#define SS_PIN    10    // SPI Slave Select Pin

MFRC522 mfrc522(SS_PIN, RST_PIN);   // Instanz des MFRC522 erzeugen
String tagUID = "7d31fd9";
String card_name;

const byte ROWS = 4; // rows
const byte COLS = 4; // columns

char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};
byte rowPins[ROWS] = {6, 7, 8, 9}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {2,3,4,5}; //connect to the column pinouts of the keypad

char key;

char code[4]={'3','2','7','3'};

char p1 = code[0];
char p2 = code[1];
char p3 = code[2];
char p4 = code[3];

char t1 = '-';
char t2 = '-';
char t3 = '-';
char t4 = '-';


Adafruit_Keypad customKeypad = Adafruit_Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS);

void setup() {
  Serial.begin(9600);
  customKeypad.begin();
  SPI.begin();         // Initialisiere SPI Kommunikation
  mfrc522.PCD_Init();  // Initialisiere MFRC522 Lesemodul
}

void loop()
{
  customKeypad.tick();
  if (mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial() )
  {
    card_lesen();
  }
  else
  {
    while(customKeypad.available())
    {
      keypadEvent e = customKeypad.read();
    
      if(e.bit.EVENT == KEY_JUST_RELEASED)
      {
        key = (char)e.bit.KEY;
        code_uberprufen(key);
      }  
    }
    
  }
}


void card_lesen()
{
  Serial.print("Gelesene UID:");
  for (byte i = 0; i < mfrc522.uid.size; i++) {
      String card_byte = String(mfrc522.uid.uidByte[i], HEX);
      card_name = card_name + card_byte;
  }
  Serial.println(card_name);
  card_uberprufen(card_name);
  Serial.println();

    // Versetzt die gelesene Karte in einen Ruhemodus, um nach anderen Karten suchen zu können.
  mfrc522.PICC_HaltA();
  delay(1000);

}

void card_uberprufen(String name_card)
{
  if(name_card == tagUID)
  {
    Serial.println("card right");
  }
  else
  {
    Serial.println("card wrong");
  }
  card_name = "";
}


void code_uberprufen(char key)
{
  if(key != '*')
  {
    t1 = t2;
    t2 = t3;
    t3 = t4;
    t4 = key;
    Serial.print(t1);Serial.print(t2);Serial.print(t3);Serial.println(t4);
    delay(100);
  }
  else
  {
     if(p1 == t1&&p2 == t2&&p3 == t3&&p4 == t4)
     {
       code_richtig();
     }
     else
     {
        code_falsch();        
     }
  }
    
}

void code_richtig()
{
  Serial.println("correct");
  t1 = '-';
  t2 = '-';
  t3 = '-';
  t4 = '-';
}

void code_falsch()
{
  Serial.println("incorrect");
  t1 = '-';
  t2 = '-';
  t3 = '-';
  t4 = '-';
}

LG louard
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.02.2020, 21:52
Beitrag #2
RE: RFID-Reader stört Keypad
Dein Problem ist der doppelt belegter Pin D9, einmal als Reset für das Display und für die Tastatur. Das wird nicht funktionieren.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.02.2020, 22:46
Beitrag #3
RE: RFID-Reader stört Keypad
(07.02.2020 21:52)hotsystems schrieb:  Dein Problem ist der doppelt belegter Pin D9, einmal als Reset für das Display und für die Tastatur. Das wird nicht funktionieren.

Danke für die sehr schnelle Antwort und vorallem große Hilfe
ja das war das Problem habe das nicht bemerkt, da ich den RST Pin nicht benötige und nicht angeschlossen habe, ich weiß nicht mal für was der benötigt wird. Ich habe den RST Pin jetzt einfach auf A0 umbenannt und alles funktioniert.

LG louard
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.02.2020, 11:50
Beitrag #4
RE: RFID-Reader stört Keypad
Gerne....
Den brauchst du nur, wenn du aus dem Sketch heraus den RFID resetten willst.
Und danke für die Rückmeldung.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  MPU650 + RTC DS3231 + SD card reader Kawaci 8 132 21.09.2020 12:54
Letzter Beitrag: Tommy56
  Kleines Projekt mit RFID Stefu1987 31 2.036 11.05.2020 20:24
Letzter Beitrag: Retian
  RFID AgentMulder 14 1.276 24.04.2020 15:23
Letzter Beitrag: Corvus
  RFID (134,2 KHZ) Lese-Gerät Wiaz 1 479 19.03.2020 11:29
Letzter Beitrag: hotsystems
Question Zugangskontrolle per RFID -Christoph- 17 2.623 29.11.2019 06:45
Letzter Beitrag: -Christoph-
  RFID Banksystem und das Displaymenü BastelKlug 4 981 15.09.2019 07:50
Letzter Beitrag: Fips
  Keypad auslesen Dieter_T 10 2.444 11.02.2019 20:46
Letzter Beitrag: Dieter_T
  LCD Keypad unvollständige Anzeige MarioE 4 1.268 18.07.2018 15:16
Letzter Beitrag: MarioE
  Neuling sucht Beratung für ein RFID Motorschloss MaikGyver 34 13.879 07.01.2018 21:24
Letzter Beitrag: Tommy56
Question Problem beim seriellen Einlesen von RFID-Reader Bezel 5 2.562 05.11.2017 22:37
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste