PN532 är en mångsidig NFC -modul (nära fältkommunikation) som kan användas för att läsa och skriva NFC -taggar, såväl som för att implementera RFID -system. Genom att använda PN532 med en Raspberry PI kan du integrera NFC -funktioner i dina projekt för applikationer som åtkomstkontroll, kontaktlösa betalningar och IoT -enheter. Den här guiden leder dig genom att ställa in och använda PN532 med en Raspberry Pi.
Vad du behöver
- Hallon (Varje modell med GPIO -stöd, t.ex. PI 3, PI 4)
- PN532 NFC -modul
- Breadboard och jumpertrådar
- En dator med SSH -åtkomst till Raspberry Pi eller ett anslutet tangentbord och monitor
- Python installerad på Raspberry Pi
Steg 1: Kopplar PN532 till Raspberry Pi
PN532 -modulen stöder flera kommunikationsprotokoll, inklusive I2C, SPI och UART. Den här guiden använder I2C -gränssnittet för enkelhet.
Anslutningar (I2C -läge)
Pn532 -stift | Hallon pi |
---|---|
Vcc | 3.3V (stift 1) |
Gard | Mark (stift 6) |
SDA | SDA (stift 3, GPIO2) |
SCL | SCL (stift 5, GPIO3) |
Sel0 | Gard |
Sel1 | Vcc |
Notera: SEL0- och SEL1 -stiften bestämmer kommunikationsläget. Anslutning av SEL0 till GND och SEL1 till VCC Selects I2C -läge.
Steg 2: Aktivera I2C -gränssnittet på Raspberry Pi
- Öppna Raspberry PI -konfigurationsverktyget:
sudo raspi-config
- Navigera till Gränssnittsalternativ> i2c och aktivera det.
- Starta om Raspberry Pi:
sudo reboot
Steg 3: Installera nödvändiga verktyg och bibliotek
- Uppdatera din Raspberry Pi:
sudo apt update && sudo apt upgrade -y
- Installera I2C -verktygen:
sudo apt install -y i2c-tools
- Installera pythonbibliotek för I2C -kommunikation och PN532 Funktionalitet:
pip install adafruit-circuitpython-pn532
Steg 4: Verifiera anslutningen
- Använda
i2cdetect
För att verifiera att PN532 upptäcks på i2C -bussen:sudo i2cdetect -y 1
- Du bör se PN532 på adressen
0x24
eller0x48
. Om inte:- Kontrollera dina ledningar.
- Se till att PN532 drivs.
Steg 5: Att läsa NFC -taggar med Python
Följande Python -skript visar hur man läser NFC -taggar med PN532.
Python -kodexempel
import board
import busio
from adafruit_pn532.i2c import PN532_I2C
# I2C connection setup
i2c = busio.I2C(board.SCL, board.SDA)
pn532 = PN532_I2C(i2c, debug=False)
# Configure PN532 to read NFC tags
pn532.SAM_configuration()
print("Waiting for an NFC tag...")
while True:
uid = pn532.read_passive_target(timeout=0.5)
if uid is not None:
print(f"Found NFC tag with UID: {uid.hex()}")
Steg 6: Tillämpningar av PN532
- Åtkomstkontroll: Skapa ett NFC-baserat dörrlåssystem.
- Kontaktlösa betalningar: Simulera betalningssystem med NFC -kort.
- IoT -projekt: Använd NFC -taggar för att utlösa automatiseringshändelser.
- Datavoggning: Skriv data till NFC -taggar för lager- eller spårningsändamål.
Felsökning
-
Enheten inte upptäckt:
- Verifiera SDA- och SCL -anslutningar.
- Se till att I2C -gränssnittet är aktiverat på Raspberry Pi.
- Kontrollera SEL0- och SEL1 -PIN -konfigurationen för i2c -läge.
-
Läs fel:
- Se till att NFC -taggen ligger inom räckvidden för PN532.
- Kontrollera om störningar från metallobjekt eller andra elektroniska enheter.
-
I2C -fel:
- Se till att det inte finns några motstridiga enheter på I2C -bussen.
Slutsats
PN532 NFC -modulen är ett mångsidigt verktyg för att lägga till NFC- och RFID -funktioner till dina Raspberry PI -projekt. Genom att följa den här guiden kan du ställa in och använda PN532 för applikationer som åtkomstkontroll, IoT -automatisering och kontaktlös datautbyte. Experimentera med att läsa och skriva NFC -taggar för att utforska hela potentialen för denna kraftfulla modul!