{"id":3411,"date":"2025-03-25T18:09:07","date_gmt":"2025-03-25T23:09:07","guid":{"rendered":"https:\/\/ve2cuy.com\/420-1c4\/?page_id=3411"},"modified":"2025-03-25T19:11:23","modified_gmt":"2025-03-26T00:11:23","slug":"capteur-rfid","status":"publish","type":"page","link":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/capteur-rfid\/","title":{"rendered":"Capteur RFID de Grove"},"content":{"rendered":"\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"217\" class=\"wp-image-3420\" style=\"width: 300px;\" src=\"http:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Grove-125KHz_RFID_Reader-1.jpg\" alt=\"\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Grove-125KHz_RFID_Reader-1.jpg 1144w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Grove-125KHz_RFID_Reader-1-300x217.jpg 300w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Grove-125KHz_RFID_Reader-1-1024x740.jpg 1024w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Grove-125KHz_RFID_Reader-1-768x555.jpg 768w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/td><td class=\"has-text-align-center\" data-align=\"center\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"300\" class=\"wp-image-3422\" style=\"width: 300px;\" src=\"http:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/MIKROE-1475-1.jpg\" alt=\"\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/MIKROE-1475-1.jpg 640w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/MIKROE-1475-1-300x300.jpg 300w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/MIKROE-1475-1-150x150.jpg 150w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Voici un exemple de code qui affiche, dans la console moniteur, le num\u00e9ro d&rsquo;identification d&rsquo;une cl\u00e9 RFDI (\u00e0 droite sur les photos) d\u00e9pos\u00e9e sur un capteur (\u00e0 gauche sur les photos).<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/*\n  Auteur: Alain Boubreault\n  Date:   2025.03.25\n  ----------------------------------------------------------------\n  Exemple d'utilisation du capteur RFID de Grove.\n  Ce capteur est connect\u00e9 sur le port s\u00e9rie 1 (RX1, TX1) de l'Arduino Mega.\n  Le code ci-dessous permet de lire les donn\u00e9es de la carte RFID et de les afficher dans le moniteur s\u00e9rie.\n  Le code est bas\u00e9 sur l'exemple fourni par Seeed Studio pour le capteur RFID de Grove.\n  https:\/\/wiki.seeedstudio.com\/Grove-125KHz_RFID_Reader\/\n  ----------------------------------------------------------------\n  Si vous approchez une carte RFID du capteur, vous devriez voir les donn\u00e9es de la carte s'afficher dans le moniteur s\u00e9rie.\n  *\/\n#include &lt;Arduino.h>\n#include &lt;SoftwareSerial.h>\n#include \"Streaming.h\"\n\n#define portRFID      Serial1   \/\/ Le capteur RFID est connect\u00e9 sur le port s\u00e9rie 1 (RX1, TX1) de l'Arduino Mega\n#define VITESSE_UART  9600      \/\/ Vitesse de communication avec le capteur RFID et la console de d\u00e9bogage\nvoid clearBufferArray();\n\nunsigned char buffer[64];       \/\/ tableau pour stocker les donn\u00e9es re\u00e7ues du capteur RFID\nint count = 0;                  \/\/ compteur pour le nombre d'octets re\u00e7us du capteur RFID\n\/\/ ----------------------------------------------------------------\nvoid setup()\n{\n    portRFID.begin(VITESSE_UART);       \/\/ Le capteur RFID fonctionne \u00e0 9600 bauds\n    Serial.begin(VITESSE_UART);         \/\/ La console de d\u00e9bogage fonctionne \u00e0 9600 bauds\n    Serial &lt;&lt; \"\\nLecteur RFID pr\u00eat\\nPr\u00e9senter la carte pour activer la centrale\\n\";\n}\n\n\/\/ ----------------------------------------------------------------\nvoid loop()\n{\n    \/\/ Le lecteur RFID envoie des donn\u00e9es sur le port s\u00e9rie 1 ?\n    if (portRFID.available())              \n    {   delay(100); \/\/ Attendre un peu pour laisser le temps aux donn\u00e9es d'arriver\n        while(portRFID.available())               \/\/ Lire les donn\u00e9es re\u00e7ues\n        {\n            buffer[count++] = portRFID.read();  \/\/ Les donn\u00e9es re\u00e7ues sont stock\u00e9es dans le tableau buffer\n            if(count == 64)break;\n        } \/\/ fin de while\n        Serial &lt;&lt; \"\\nOctets re\u00e7us: \" &lt;&lt; count &lt;&lt; endl;\n        Serial.write(buffer+1, count-2);          \/\/ Afficher les donn\u00e9es re\u00e7ues sans le premier et le dernier octet\n        clearBufferArray();                       \/\/ Vide le tampon de r\u00e9ception\n        count = 0;                                \/\/ R\u00e9initialiser le compteur\n    }\n} \/\/ fin de loop\n\n\/\/ ----------------------------------------------------------------\n\/\/ fonction pour vider le tampon de r\u00e9ception des messages du RFDI\nvoid clearBufferArray()                \n{\n    \/\/ Initialiser le tableau buffer avec des z\u00e9ros\n    for (int i=0; i&lt;count; i++)\n    {\n        buffer[i]=0;\n    }                  \n} \/\/ fin de clearBufferArray<\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"368\" height=\"130\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Capture-decran-le-2025-03-25-a-19.15.19.png\" alt=\"\" class=\"wp-image-3416\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Capture-decran-le-2025-03-25-a-19.15.19.png 368w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Capture-decran-le-2025-03-25-a-19.15.19-300x106.png 300w\" sizes=\"auto, (max-width: 368px) 100vw, 368px\" \/><\/figure>\n<\/div>\n\n\n<p>Dans la capture d&rsquo;\u00e9cran pr\u00e9c\u00e9dente, il y a 12 octets d&rsquo;affich\u00e9s parce que le premier et le dernier octet ont \u00e9t\u00e9 enlev\u00e9s du traitement.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Serial.write(buffer+1, count-2);<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>Dans le cadre d&rsquo;une validation du RFID:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"613\" height=\"199\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Capture-decran-le-2025-03-25-a-20.08.57.png\" alt=\"\" class=\"wp-image-3427\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Capture-decran-le-2025-03-25-a-20.08.57.png 613w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/03\/Capture-decran-le-2025-03-25-a-20.08.57-300x97.png 300w\" sizes=\"auto, (max-width: 613px) 100vw, 613px\" \/><\/figure>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h6 class=\"wp-block-heading has-text-align-right\">Document r\u00e9dig\u00e9 par Alain Boudreault (aka: VE2CUY) &#8211; 2025.03.25<\/h6>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Voici un exemple de code qui affiche, dans la console moniteur, le num\u00e9ro d&rsquo;identification d&rsquo;une cl\u00e9 RFDI (\u00e0 droite sur les photos) d\u00e9pos\u00e9e sur un capteur (\u00e0 gauche sur les photos). Dans la capture d&rsquo;\u00e9cran pr\u00e9c\u00e9dente, il y a 12 octets d&rsquo;affich\u00e9s parce que le premier et le dernier octet ont \u00e9t\u00e9 enlev\u00e9s du traitement. [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ub_ctt_via":"","footnotes":""},"class_list":["post-3411","page","type-page","status-publish","hentry"],"featured_image_src":null,"_links":{"self":[{"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages\/3411","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/comments?post=3411"}],"version-history":[{"count":9,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages\/3411\/revisions"}],"predecessor-version":[{"id":3430,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages\/3411\/revisions\/3430"}],"wp:attachment":[{"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/media?parent=3411"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}