Outils pour utilisateurs

Outils du site


documentation:rfid1

Le module de lecture/écriture de carte RFID1

Caractéristiques générales

Ce module “intelligent” regroupe le lecteur RFID et son interface de commande. Prévu pour être connecté à une seule broche d'une carte arduino par une liaison série bidirectionnelle, le module permet le stockage de 15 chaines de 48 caractères dans la mémoire d'une carte ou d'un dongle RFID de type MIFARE CLASSIC 1K. On peut également lire les chaines de caractères stockées dans la carte. Le tableau ci-dessous résume l'implémentation mémoire des cartes RFID de type MYFARE CLASSIC 1K :

La mémoire est divisée en 16 secteurs numérotés de 0 à 15 qui sont chacun constitués de 4 blocs de 16 octets numérotés de 0 à 3.

Dans chaque secteur, le bloc n°3 appelé “bloc d'accès” contient 2 clés d'identification (A et B ) ainsi que les bits d'accès. Les bit d'accès spécifient quelle clé doit être utilisée pour accéder en lecture/écriture et/ou crypter les données contenus dans les blocs 0, 1 et 2 du secteur concerné.

Le Bloc n°0 du secteur n° 0 est en lecture seul et contient le numéro d'identification unique (ID) de la carte.

Les secteurs n° 1 à n° 15 sont entièrement accessibles en écriture et en lecture.

Attention ! Ce module ne peut écrire et lire que les cartes vierges qui n'ont pas été programmées avec des clés de cryptographie ou d'authentification spécifiques.


Exemples de cartes RFID Mifare Clasic 1K


Utilisation du module

Avec l'IDE Arduino

L'utilisation de la bibliothèque TZ51_RFID pour Arduino simplifie l'utilisation de ce module. Il convient de dézipper l'archive puis de copier le sous répertoire TZ51_RFID dans le sous répertoire libraries de votre logiciel Arduino.

Afin de tester le module RFID, connectez le à la broche 4 de votre arduino puis compiler le programme de test ci-dessous :

example.ino
#include <Arduino.h>
#include <TZ51_Rfid.h>
 
TZ51_RFID rfid;  //Instancie l'objet RFID
 
void setup(){
    rfid.begin(4);  //Démarre le module RFID connecté à la broche 4
    Serial.begin(115200);
    Serial.println("Pose une carte RFID sur le lecteur");
    pinMode(13,OUTPUT);
    digitalWrite(13,0);
}
 
void loop(){
    if(rfid.card_present()){   //Si une carte RFID est présente sur le lecteur
        delay(200);
        Serial.println("ecriture carte");
        digitalWrite(13,1);
        rfid.write(1,"Grosse"); //Ecrire le texte "Grosse" dans le secteur n°1 de la carte
        rfid.write(2,"Christophe");
        rfid.write(3,"1 rue des jardins");
        rfid.write(4,String(57560));
        rfid.write(5,"VOYER");
        rfid.write(6,"www.technozone51.fr");
        Serial.println("Lecture de la carte");
        rfid.read(0);  //Lire le contenu du secteur n°0 qui correspond à l'ID de la carte
        Serial.println(String("ID :")+rfid.reponse);  //affiche le résultat de la lecture
        rfid.read(1);
        Serial.println(String("secteur1 :")+rfid.reponse);
        rfid.read(2);
        Serial.println(String("secteur2 :")+rfid.reponse);
        rfid.read(3);
        Serial.println(String("secteur3 :")+rfid.reponse);
        rfid.read(4);
        Serial.println(String("secteur4 :")+rfid.reponse);
        rfid.read(5);
        Serial.println(String("secteur5 :")+rfid.reponse);
        rfid.read(6);
        Serial.println(String("secteur6 :")+rfid.reponse);
        digitalWrite(13,0);
        Serial.println("Retirer la carte");
        while(rfid.card_present()) {} //Attends tant que la carte est présente sur le lecteur
        delay(200);
        Serial.println("Pose une carte RFID sur le lecteur");
    }
}

Avec mblock

Téléchargez l'extension TZ51_Rfid_1.0 sur la page des Extensions TZ51 pour mblock et installez-la sous mblock.

Téléchargez le programme de test exemple_rfid1.sb2 et ouvrez le sous mblock en mode arduino.

Avec Blockly@rduino version TZ51

Ouvrez directement l'exemple RFID pour Blockly@rduino

Pour plus d'informations sur Blockly@rduino, suivez cette Initiation et Présentation au Concept Blocklyduino

documentation/rfid1.txt · Dernière modification: 2018/07/04 09:22 par admin