Arduino Nano - RFID
Este tutorial ensina como usar RFID/NFC com o Arduino Nano. O sistema RFID/NFC é formado por dois componentes: um leitor e uma tag. Dois dos leitores RFID/NFC mais populares são o RC522 e o PN532. Este tutorial vai usar o leitor RFID/NFC RC522, que é barato e fácil de usar.
O leitor RFID/NFC RC522 pode:
- Obter o UID de uma tag RFID/NFC
- Alterar o UID de uma tag RFID/NFC (somente se a tag suportar isso)
- Armazenar dados em uma tag RFID/NFC
- Recuperar dados de uma tag RFID/NFC
Este tutorial é focado em:
- Como conectar o módulo RC522 ao Arduino Nano
- Como programar o Arduino Nano para se comunicar com o módulo RC522 e ler o UID da tag RFID.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Módulo RFID-RC522
Pinagem do Módulo RFID-RC522
O RFID-RC522 tem 8 pinos, alguns deles são pinos gerais e os outros são compartilhados entre três modos de comunicação: SPI, I2C e UART. Só é possível usar um desses modos por vez. Os pinos são:
- Pino GND: Precisa ser conectado ao terra (0V).
- Pino VCC: Precisa ser conectado à fonte de tensão (3.3V).
- Pino RST: É um pino de reset e desligamento. Quando este pino vai para nível baixo, ele ativa o desligamento total. Na borda de subida, o módulo é resetado.
- Pino IRQ: É um pino de interrupção que pode avisar o microcontrolador quando uma tag RFID chega perto dele.
- Pino MISO/SCL/TX: Atua como MISO quando a interface SPI está ativada, SCL quando a interface I2C está ativada e TX quando a interface UART está ativada.
- Pino MOSI: Atua como MOSI quando a interface SPI está ativada.
- Pino SCK: Atua como SCK quando a interface SPI está ativada.
- Pino SS/SDA/RX: Atua como SS quando a interface SPI está ativada, SDA quando a interface I2C está ativada e RX quando a interface UART está ativada.

※ Nota:
- A disposição dos pinos pode variar dependendo do fabricante. É essencial usar os rótulos impressos no módulo, como ilustrado na imagem acima do fabricante DIYables.
- Não conecte o pino VCC ao pino 5V, pois isso pode danificar o módulo.
- A biblioteca MFRC522 suporta apenas o modo SPI, então este tutorial vai focar na comunicação SPI.
Como o RFID/NFC Funciona
O RFID/NFC é composto por duas partes: um leitor e uma tag.
- O leitor é formado por um módulo de radiofrequência e uma antena que produz um campo eletromagnético de alta frequência.
- A tag normalmente é um dispositivo passivo, ou seja, não precisa de uma fonte de energia. Ela tem um microchip que armazena e processa informações, além de uma antena para receber e transmitir um sinal. Essa tag é usada para armazenar os dados e seu ID único.

A tag precisa estar perto do leitor para que as informações que ela contém possam ser lidas. O processo envolve o leitor gerando um campo eletromagnético, que faz os elétrons se moverem pela antena da tag e alimentarem o chip. Em seguida, o chip envia as informações solicitadas de volta ao leitor como um sinal de rádio. O leitor detecta esse sinal e o transforma em dados, que são então lidos pelo Arduino Nano.
Diagrama de Ligação entre o Módulo RFID-RC522 e o Arduino Nano
O Módulo RFID-RC522 requer uma tensão de 3.3V, mas os pinos de saída do Arduino fornecem 5V. Portanto:
- Para garantir a segurança, a tensão dos pinos do Arduino deve ser regulada para 3.3V antes de conectar ao Módulo RC522.
- Para fins de teste, os pinos do Arduino podem ser conectados diretamente ao Módulo RC522, mas isso pode causar problemas em alguns casos.
Este tutorial fornece dois diagramas de ligação diferentes para os dois casos:
- Diagrama de Ligação entre o RC522 e o Arduino sem regulador de tensão

This image is created using Fritzing. Click to enlarge image
- Diagrama de Ligação entre o RC522 e o Arduino com regulador de tensão

This image is created using Fritzing. Click to enlarge image
Veja A melhor forma de alimentar o Arduino Nano e outros componentes.
Como indicado no diagrama de ligação acima, pares de resistores com valores de 1kOhm e 2kOhm são usados para regular 5V para 3.3V.
- Não é preciso regular a tensão entre o pino do Arduino e o pino MISO do módulo RC522.
- No entanto, é preciso regular a tensão entre os pinos do Arduino e os pinos SS, SCK, MOSI e RST do módulo RC522.
Tabela de ligação do Módulo RFID/NFC RC522 e do Arduino Nano
| RFID/NFC RC522 | Arduino Nano |
|---|---|
| SS | → 10 |
| SCK | → 13 |
| MOSI | → 11 |
| MISO | → 12 |
| IRQ | não conectado |
| GND | → GND |
| RST | → 5 |
| VCC | → 3.3V |
Código RFID/NFC para Arduino Nano
Passos Rápidos
- Clique no ícone Libraries na barra lateral esquerda da Arduino IDE.
- Pesquise por “MFRC522” e localize a biblioteca de GithubCommunity.
- Em seguida, pressione o botão Install para instalar a biblioteca MFRC522.

- Copie o código acima e abra-o com a Arduino IDE.
- Clique no botão Upload da Arduino IDE para compilar e fazer o upload do código para o Arduino Nano.
- Abra o Serial Monitor.
- Encoste várias tags RFID/NFC no módulo RFID-RC522.
- Confira o UID no Serial Monitor.