Mon projet est de réparer mon portillon qui a sa gache électrique qui est cassée et j'aimerai en profiter pour inclure un système de lecture de badge (et même pourquoi pas une activation à distance via téléphone pour la suite (mais bon ça sera dans un deuxième temps...)). J'ai pratiquement finit mon code, déja tout le matériel en ma possession et je vais bientôt prendre mon boitier où je vais tout fixer seulement problème : je n'arrive pas à faire fonctionner mon module RFID. Le programme DUMPINFO (pour récupérer les UID des badges) me dit que la connexion a échoué et que le module est sans doute mal branché sauf que je ne voit pas l'erreur. J'ai essayer de mettre des version plus ancienne des bibliothèque mais ça n'a pas marché... Je suis sur arduino MEGA et voila mon montage : RST --> D5 SDA --> D53 MOSI --> D51 MISO --> D50 SCK --> D52 IRQ --> Non branché GND --> Port GND de ma carte Power --> Port 3.3V de ma carte
Dans le programme DUMPINFO j'ai prit soin de changer le numéro des variables donc je ne voit pas trop où peut-être l'origine du problème. Je vous laisse quand même le code que j'ai téléversé sur ma carte si jamais vous voyez une erreur de ma part. Je vous met également une capture d'écran de ce que me retourne le moniteur série. En esperant que vous puissier faire des miracles car ça commence à être légèrement chiant de sauter la clôture quand je veut rentrer chez moi
Un grand merci à vous !
/*
* ----------------------------------------------------------------------------
* This is a MFRC522 library example; see https://github.com/miguelbalboa/rfid
* for further details and other examples.
*
* NOTE: The library file MFRC522.h has a lot of useful info. Please read it.
*
* Released into the public domain.
* ----------------------------------------------------------------------------
* Example sketch/program showing how to read data from a PICC (that is: a RFID
* Tag or Card) using a MFRC522 based RFID Reader on the Arduino SPI interface.
*
* When the Arduino and the MFRC522 module are connected (see the pin layout
* below), load this sketch into Arduino IDE then verify/compile and upload it.
* To see the output: use Tools, Serial Monitor of the IDE (hit Ctrl+Shft+M).
* When you present a PICC (that is: a RFID Tag or Card) at reading distance
* of the MFRC522 Reader/PCD, the serial output will show the ID/UID, type and
* any data blocks it can read. Note: you may see "Timeout in communication"
* messages when removing the PICC from reading distance too early.
*
* If your reader supports it, this sketch/program will read all the PICCs
* presented (that is: multiple tag reading). So if you stack two or more
* PICCs on top of each other and present them to the reader, it will first
* output all details of the first and then the next PICC. Note that this
* may take some time as all data blocks are dumped, so keep the PICCs at
* reading distance until complete.
*
* Typical pin layout used:
* -----------------------------------------------------------------------------------------
* MFRC522 Arduino Arduino Arduino Arduino Arduino
* Reader/PCD Uno Mega Nano v3 Leonardo/Micro Pro Micro
* Signal Pin Pin Pin Pin Pin Pin
* -----------------------------------------------------------------------------------------
* RST/Reset RST 9 5 D9 RESET/ICSP-5 RST
* SPI SS SDA(SS) 10 53 D10 10 10
* SPI MOSI MOSI 11 / ICSP-4 51 D11 ICSP-4 16
* SPI MISO MISO 12 / ICSP-1 50 D12 ICSP-1 14
* SPI SCK SCK 13 / ICSP-3 52 D13 ICSP-3 15
*/
#include <SPI.h>
#include <MFRC522.h>
#define RST_PIN 5 //
#define SS_PIN 53 //
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance
void setup() {
Serial.begin(9600); // Initialize serial communications with the PC
while (!Serial); // Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)
SPI.begin(); // Init SPI bus
mfrc522.PCD_Init(); // Init MFRC522
ShowReaderDetails(); // Show details of PCD - MFRC522 Card Reader details
Serial.println(F("Scan PICC to see UID, type, and data blocks..."));
}
void loop() {
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial()) {
return;
}
// Dump debug info about the card; PICC_HaltA() is automatically called
mfrc522.PICC_DumpToSerial(&(mfrc522.uid));
}
void ShowReaderDetails() {
// Get the MFRC522 software version
byte v = mfrc522.PCD_ReadRegister(mfrc522.VersionReg);
Serial.print(F("MFRC522 Software Version: 0x"));
Serial.print(v, HEX);
if (v == 0x91)
Serial.print(F(" = v1.0"));
else if (v == 0x92)
Serial.print(F(" = v2.0"));
else
Serial.print(F(" (unknown)"));
Serial.println("");
// When 0x00 or 0xFF is returned, communication probably failed
if ((v == 0x00) || (v == 0xFF)) {
Serial.println(F("WARNING: Communication failure, is the MFRC522 properly connected?"));
}
}
La question peut paraître absurde au vue de tout les schémas de montage ci dessus, mais j'avoue quelle mérite 5 minutes de recherches.
il ne s'agit pas de la tension d'alimentation VCC, le sujet est clair sur ce point, mais de l'alimentation des pinouts, et donc de l'ajout d'un abaisseur de tension entre l'arduino qui a des pinouts en 5v et les pinouts du module et donc un cout financier supplémentaire pour la solution( achat et montage)
Quick reference data
Table 1. Quick reference data
Symbol Parameter Conditions Min Typ Max Unit
VDDA analog supply voltage VDD(PVDD) VDDA = VDDD = VDD(TVDD);
VSSA = VSSD = VSS(PVSS) = VSS(TVSS) = 0 V
[1][2] 2.5 3.3 3.6 V
VDDD digital supply voltage 2.5 3.3 3.6 V
VDD(TVDD) TVDD supply voltage 2.5 3.3 3.6 V
VDD(PVDD) PVDD supply voltage [3] 1.6 1.8 3.6 V
VDD(SVDD) SVDD supply voltage VSSA = VSSD = VSS(PVSS) = VSS(TVSS) = 0 V 1.6 - 3.6 V
Conclusion :
C'est un paradoxe, mais les ports pinouts fonctionnent en 5v sur la 99% des tutoriels sur internet, mais l'utilisation d'un abaisseur de tension semble nécessaire pour le fonctionnement nominal du module selon le datasheet.
Donc la réponse est 3v sur les pinouts.
- Edité par michelbillaud 10 juin 2024 à 18:19:12
Module RFID non reconnut sur arduino mega
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent