Använda PN532 med Raspberry Pi

Using the PN532 with the Raspberry Pi

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

  1. Hallon (Varje modell med GPIO -stöd, t.ex. PI 3, PI 4)
  2. PN532 NFC -modul
  3. Breadboard och jumpertrådar
  4. En dator med SSH -åtkomst till Raspberry Pi eller ett anslutet tangentbord och monitor
  5. 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

  1. Öppna Raspberry PI -konfigurationsverktyget:
    sudo raspi-config
    
  2. Navigera till Gränssnittsalternativ> i2c och aktivera det.
  3. Starta om Raspberry Pi:
    sudo reboot
    

Steg 3: Installera nödvändiga verktyg och bibliotek

  1. Uppdatera din Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. Installera I2C -verktygen:
    sudo apt install -y i2c-tools
    
  3. Installera pythonbibliotek för I2C -kommunikation och PN532 Funktionalitet:
    pip install adafruit-circuitpython-pn532
    

Steg 4: Verifiera anslutningen

  1. Använda i2cdetect För att verifiera att PN532 upptäcks på i2C -bussen:
    sudo i2cdetect -y 1
    
  2. Du bör se PN532 på adressen 0x24 eller 0x48. 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

  1. Åtkomstkontroll: Skapa ett NFC-baserat dörrlåssystem.
  2. Kontaktlösa betalningar: Simulera betalningssystem med NFC -kort.
  3. IoT -projekt: Använd NFC -taggar för att utlösa automatiseringshändelser.
  4. Datavoggning: Skriv data till NFC -taggar för lager- eller spårningsändamål.

Felsökning

  1. 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.
  2. 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.
  3. 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!

Lämna en kommentar

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.