Beispiel fuer das Auslesen von RFID Tags mittels RFID Reader

Dependencies:   MFRC522 mbed

ReaderTags
RFID ReaderRFID Tags

RFID (engl. radio-frequency identification - „Identifizierung mit Hilfe elektromagnetischer Wellen“) bezeichnet eine Technologie für Sender-Empfänger-Systeme zum automatischen und berührungslosen Identifizieren und Lokalisieren von Objekten (Produkte - Lebewesen) mit Radiowellen.

Ein RFID-System besteht aus einem Transponder (umgangssprachlich auch Funketikett genannt), der sich am oder im Gegenstand bzw. Lebewesen befindet und einen kennzeichnenden Code enthält, sowie einem Lesegerät zum Auslesen dieser Kennung.

RFID-Transponder können so klein wie ein Reiskorn sein und implantiert werden, etwa bei Menschen oder Haustieren.

Die Kopplung geschieht durch vom Lesegerät erzeugte magnetische Wechselfelder geringer Reichweite oder durch hochfrequente Radiowellen. Damit werden nicht nur Daten übertragen, sondern auch der Transponder mit Energie versorgt.

Der RFID Reader benötigt die MFRC522 Library. Der Reader wir via SPI angesprochen. Auf den Shields ist ein entsprechender Steckplatz vorgesehen.

Anwendungen

  • Fahrzeugidentifikation
  • Banknoten
  • Bezahlkarten
  • Identifizierung von Personen
  • Textilien und Bekleidung
  • Tieridentifikation
  • Waren- und Bestandsmanagement
  • Müllentsorgung
  • Zutrittskontrolle und Zeitkontrolle

Der RFID Reader hat einen eigenen Steckplatz oben auf dem Shield

Committer:
stefan1691
Date:
Wed Apr 29 08:23:16 2015 +0000
Revision:
0:11e985b9e380
Child:
1:b74bf480b4bf
Beispiel fuer das Auslesen von RFID Tags mittels RFID Reader

Who changed what in which revision?

UserRevisionLine numberNew contents of line
stefan1691 0:11e985b9e380 1 /** Beispiel fuer das Auslesen von RFID Tags mittels RFID Reader
stefan1691 0:11e985b9e380 2 */
stefan1691 0:11e985b9e380 3 #include "mbed.h"
stefan1691 0:11e985b9e380 4 #include "MFRC522.h"
stefan1691 0:11e985b9e380 5
stefan1691 0:11e985b9e380 6 // NFC/RFID Reader an WiFi Header von K64F
stefan1691 0:11e985b9e380 7 MFRC522 rfidReader( D11, D12, D13, D10, D8 );
stefan1691 0:11e985b9e380 8
stefan1691 0:11e985b9e380 9 int main()
stefan1691 0:11e985b9e380 10 {
stefan1691 0:11e985b9e380 11 printf("RFID Reader MFRC522 Test\n");
stefan1691 0:11e985b9e380 12 rfidReader.PCD_Init();
stefan1691 0:11e985b9e380 13
stefan1691 0:11e985b9e380 14 while ( 1 )
stefan1691 0:11e985b9e380 15 {
stefan1691 0:11e985b9e380 16 // RFID Reader
stefan1691 0:11e985b9e380 17 if ( rfidReader.PICC_IsNewCardPresent())
stefan1691 0:11e985b9e380 18 if ( rfidReader.PICC_ReadCardSerial())
stefan1691 0:11e985b9e380 19 {
stefan1691 0:11e985b9e380 20 // Print Card UID
stefan1691 0:11e985b9e380 21 printf("Card UID: ");
stefan1691 0:11e985b9e380 22 for (uint8_t i = 0; i < rfidReader.uid.size; i++)
stefan1691 0:11e985b9e380 23 printf("%02X:", rfidReader.uid.uidByte[i]);
stefan1691 0:11e985b9e380 24 printf("\n");
stefan1691 0:11e985b9e380 25 // Print Card type
stefan1691 0:11e985b9e380 26 uint8_t piccType = rfidReader.PICC_GetType(rfidReader.uid.sak);
stefan1691 0:11e985b9e380 27 printf("PICC Type: %s \n", rfidReader.PICC_GetTypeName(piccType));
stefan1691 0:11e985b9e380 28 }
stefan1691 0:11e985b9e380 29 wait( 0.2f );
stefan1691 0:11e985b9e380 30 }
stefan1691 0:11e985b9e380 31 }