NFC RFID mit PN532 Modul - OTH-AW/isac-oth-aw GitHub Wiki

PN532 Breakout Board

Verbindung mit dem Raspberry Pi über SPI

Wir verbinden den Raspberry Pi mit Breakout Board über SPI, da dies am zuverlässigsten funktioniert. Benötigt man eine andere Verbindung findet man die Anleitung dazu auf Adafruit.

Aufbau:

  • Pi 3V to breakout 3.3V
  • Pi GND to breakout GND
  • Pi MOSI to breakout MOSI
  • Pi MISO to breakout MISO
  • Pi SCLK to breakout SCK
  • Pi D5 to breakout SSEL

Für SPI schalten man folgendes (mit den Jumpern):

  • SEL0 = OFF

  • SEL1 = ON

rfid___nfc_raspi_pn532_SPI_bb

Installation und Einrichtung

Updates

sudo apt-get update
sudo apt-get upgrade

sudo pip3 install --upgrade setuptools

Aktivierung von I2C und SPI

Wenn noch nicht aktiviert findet man Anleitungen hier: I2C und SPI

Um zu überprüfen, ob beides funktioniert kann man folgendes eingeben:

ls /dev/i2c* /dev/spi*

Ergebnis: /dev/i2c-1 /dev/spidev0.0 /dev/spidev0.1

Installation der Python Bibliotheken

Achtung, folgende Befehle bitte vor der Adafruit Installation eingeben um Fehler (fehlende Python.h Datei) zu vermeiden:

sudo apt-get install python-dev
sudo apt-get install python3-dev
sudo apt-get install libpython3-dev
sudo apt-get install libpython3.4-dev
sudo apt-get install libpython3.5-dev

Bemerkung: Welche Befehle wirklich nötig sind, wird noch überprüft.

pip3 install RPI.GPIO
pip3 install adafruit-blinka

pip3 install adafruit-blinka installiert:

  • adafruit-pureio (i2c Bibliothek)
  • spidev (SPI interfacing)
  • adafruit_GPIO
  • adafruit-blinka

ACHTUNG: Es muss Python 3 verwendet werden (python3 und pip3)

Test

Hat alles funktioniert sollte man folgenden Code mit Erfolg ausführen können:

    import board
    import digitalio
    import busio
     
    print("Hello blinka!")
     
    # Try to great a Digital input
    pin = digitalio.DigitalInOut(board.D4)
    print("Digital IO ok!")
     
    # Try to create an I2C device
    i2c = busio.I2C(board.SCL, board.SDA)
    print("I2C ok!")
     
    # Try to create an SPI device
    spi = busio.SPI(board.SCLK, board.MOSI, board.MISO)
    print("SPI ok!")
     
    print("done!")
python3 programmName.py

Coding

Alle Funktionen und Informationen findet man in der Dokumentation.

⚠️ **GitHub.com Fallback** ⚠️