O RC522 é um módulo RFID popular usado para comunicação e identificação sem fio. É amplamente utilizado em sistemas de controle de acesso, sistemas de pagamento sem contato e rastreamento de inventário. Este tutorial o guiará através da interface do módulo RFID RC522 com Arduino para ler tags e cartões RFID.
O que você precisará
- Módulo RFID RC522
- Board Arduino (por exemplo, Uno, Mega, Nano)
- Tags ou cartões RFID (13,56 MHz)
- Fios de pão e jumper
- Um computador com o Arduino IDE instalado
Etapa 1: Compreendendo o módulo RFID RC522
O módulo RFID RC522 opera a 13,56 MHz e se comunica com um microcontrolador usando o protocolo SPI. Ele vem com uma antena RFID e suporta operações de leitura e escrita.
RC522 PILOUT
Alfinete | Função |
---|---|
SDA | SPI SS (Slave Select) |
Sck | Relógio SPI |
Mosi | Entrada de dados SPI |
Miso | Saída de dados SPI |
IRQ | Solicitação de interrupção (opcional) |
Gnd | Chão |
RST | Reiniciar |
3.3V | Fonte de energia |
Observação: O RC522 opera com lógica 3.3V; Verifique se suas conexões correspondem aos requisitos de tensão da sua placa.
Etapa 2: Fiação do RC522 para Arduino
Veja como conectar o módulo RFID RC522 a um Arduino Uno:
Pino RC522 | Pino Arduino |
---|---|
SDA | Pino 10 |
Sck | Pino 13 |
Mosi | Pino 11 |
Miso | Pino 12 |
IRQ | Não conectado |
Gnd | Gnd |
RST | Pino 9 |
3.3V | 3.3V |
Observação: Para outras placas do Arduino, certifique -se de mapear os pinos SPI corretamente.
Etapa 3: Instale a biblioteca necessária
Para trabalhar com o módulo RC522, instale a biblioteca "MFRC522".
Etapas para instalar:
- Abra o Arduino IDE.
- Vá para Esboço > Inclua biblioteca > Gerenciar bibliotecas.
- Pesquise "MFRC522" e clique Instalar.
Etapa 4: Faça o upload do código
Aqui está um exemplo de esboço para ler dados de tag RFID:
#include <SPI.h>
#include <MFRC522.h>
#define RST_PIN 9 // Reset pin
#define SS_PIN 10 // Slave select pin
MFRC522 rfid(SS_PIN, RST_PIN); // Create an instance of the MFRC522 library
void setup() {
Serial.begin(9600);
while (!Serial);
SPI.begin(); // Initialize SPI bus
rfid.PCD_Init(); // Initialize RFID reader
Serial.println("RC522 RFID Reader Initialized");
}
void loop() {
// Check for a new card
if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial()) {
return;
}
Serial.println("Card detected:");
// Print the UID of the card
Serial.print("UID: ");
for (byte i = 0; i < rfid.uid.size; i++) {
Serial.print(rfid.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(rfid.uid.uidByte[i], HEX);
}
Serial.println();
rfid.PICC_HaltA(); // Halt the card
}
Etapa 5: teste a configuração
- Conecte o Arduino ao seu computador via USB.
- Abra o Arduino IDE e selecione o correto Quadro e Porta sob o Ferramentas menu.
- Faça o upload do código para o Arduino clicando Carregar.
- Abra o monitor serial (Ferramentas > Monitor serial) e definir a taxa de transmissão como
9600
. - Coloque uma etiqueta ou cartão RFID perto do módulo. O UID do cartão será exibido no monitor serial.
Opcional: escrevendo dados em uma tag RFID
Para escrever dados em uma tag RFID, você pode usar o PICC_Write
Função na biblioteca MFRC522. Consulte os exemplos da biblioteca para obter operações detalhadas de gravação.
Aplicações do RC522
- Sistemas de controle de acesso
- Sistemas de pagamento sem contato
- Rastreamento e gerenciamento de inventário
- Sistemas de atendimento inteligentes
Solução de problemas
- Nenhuma resposta do módulo: Verifique a fiação e verifique se as conexões SPI estão corretas.
- Uid não detectado: Verifique se a tag está dentro do intervalo da antena RFID.
- Erros da biblioteca: Verifique se a biblioteca MFRC522 está instalada corretamente.
Conclusão
Você interfigurou com sucesso o módulo RFID RC522 com o Arduino, permitindo ler dados de tag RFID. Este módulo versátil é perfeito para projetos que exigem comunicação e identificação sem fio. Experimente recursos adicionais, como escrever dados para tags ou integrá -los em sistemas maiores para aplicativos avançados!