När du använder RPi.GPIO-biblioteket i Python måste du ringa
import RPi.GPIO as GPIO
och sedan
GPIO.setmode(GPIO.BOARD)
eller
GPIO.setmode(GPIO.BCM)
Vad är skillnaden mellan dessa två alternativ?
Kommentarer
- Jag använder pinout.xyz , lätt att följa bilder och cool UI 🙂
Svar
Jag har informationen nedan härifrån .
GPIO.BOARD -alternativet anger att du hänvisar till stiften med numret på stiftet på kontakten – dvs. siffrorna som skrivs ut på kortet (t.ex. P1) och i mitten av diagrammen nedan.
Alternativet GPIO.BCM betyder att du hänvisar till stiften med ”Broadcom SOC-kanal” nummer, det här är siffrorna efter ”GPIO” i de gröna rektanglarna runt utsidan av nedanstående diagram:
Tyvärr BCM bytt mellan versioner av Pi1-modell B och du måste ta reda på vilken du har guide här . Så det kan vara säkrare att använda BOARD-numren om du ska använda mer än en Raspberry Pi i ett projekt.
- Model B + använder samma numrering som Model B r2.0, och lägger till nya stift (kortnummer 27-40).
- Raspberry Pi Zero, Pi 2B och Pi 3B använder samma numrering som B +.
Pi1 Model B +, Pi 2B, Pi Zero och Pi 3B:
Pi 1 Model B Revision 2.0:
Pi 1 Model B Revision 1.0:
Kommentarer
- Och för fullständighet är A samma som senare modell B-kort och A + är samma som B +.
- Det ' är irriterande. Lägg bara två små siffror vid varje stift. Allvarligt @LadyAda