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

Files at this revision

API Documentation at this revision

Comitter:
marcel1691
Date:
Fri Mar 25 17:07:01 2016 +0000
Parent:
3:8725b25bcb6f
Commit message:
undo

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/main.cpp	Fri Mar 25 17:02:47 2016 +0000
+++ b/main.cpp	Fri Mar 25 17:07:01 2016 +0000
@@ -2,44 +2,30 @@
 */
 #include "mbed.h"
 #include "MFRC522.h"
-#include "Adafruit_SSD1306.h"
-
-// OLED Display
-I2C i2c( D14, D15 );
-Adafruit_SSD1306_I2c oled( i2c, D9, 0x78 );
-
+ 
 // NFC/RFID Reader (SPI)
 MFRC522    rfidReader( D11, D12, D13, D10, D8 );
-
+ 
 int main()
 {
-    // OLED Display
-    oled.clearDisplay();
-    oled.printf( "RFID Demo\r\n" );
-    oled.display();
-        
     printf("RFID Reader MFRC522 Test\n");
     rfidReader.PCD_Init();
-
+ 
     while   ( 1 ) 
     {
         // RFID Reader
         if ( rfidReader.PICC_IsNewCardPresent())
             if ( rfidReader.PICC_ReadCardSerial()) 
             {
-                oled.clearDisplay();
-                oled.setTextCursor( 0, 0 );                
-                oled.printf( "RFID Demo\r\n" );                
                 // Print Card UID (2-stellig mit Vornullen, Hexadecimal)
-                oled.printf("UID: ");
+                printf("Card UID: ");
                 for ( int i = 0; i < rfidReader.uid.size; i++ )
-                    oled.printf("%02X:", rfidReader.uid.uidByte[i]);
-                oled.printf("\r\n");
+                    printf("%02X:", rfidReader.uid.uidByte[i]);
+                printf("\n");
                 
                 // Print Card type
                 int piccType = rfidReader.PICC_GetType(rfidReader.uid.sak);
-                oled.printf("PICC Type: %s \r\n", rfidReader.PICC_GetTypeName(piccType) );
-                oled.display();                    
+                printf("PICC Type: %s \n", rfidReader.PICC_GetTypeName(piccType) );
             }
         wait( 0.2f );
     }