Qual è la differenza tra BOARD e BCM per la numerazione dei pin GPIO?


130

Quando usi la libreria RPi.GPIO in Python devi chiamare

import RPi.GPIO as GPIO

e poi

GPIO.setmode(GPIO.BOARD)

o

GPIO.setmode(GPIO.BCM)

Qual è la differenza tra queste due opzioni?

Risposte:


151

Ho ottenuto le informazioni di seguito da qui .

L' opzione GPIO.BOARD specifica che ci si riferisce ai pin in base al numero del pin della spina, ovvero ai numeri stampati sulla scheda (ad es. P1) e nel mezzo degli schemi sottostanti.

L' opzione GPIO.BCM significa che ti stai riferendo ai pin con il numero "Broadcom SOC channel", questi sono i numeri dopo "GPIO" nei rettangoli verdi attorno all'esterno dei diagrammi seguenti:

Sfortunatamente i numeri BCM sono cambiati tra le versioni del Pi1 Modello B, e dovrai capire quale hai guida qui . Pertanto, potrebbe essere più sicuro utilizzare i numeri BOARD se si intende utilizzare più di un Raspberry Pi in un progetto.

  • Il modello B + utilizza la stessa numerazione del modello B r2.0 e aggiunge nuovi pin (numeri di scheda 27-40).
  • Raspberry Pi Zero, Pi 2B e Pi 3B usano la stessa numerazione di B +.

Pi1 Modello B +, Pi 2B, Pi Zero e Pi 3B: Diagramma di numerazione dei pin GPIO


Pi 1 Modello B Revisione 2.0:

Diagramma di numerazione dei pin GPIO


Pi 1 Modello B Revisione 1.0: Diagramma di numerazione dei pin GPIO


1
E per completezza la A è la stessa delle schede modello B successive e la A + è la stessa della B +.
Peter Green,

1
È fastidioso. Metti solo due piccoli numeri per ogni pin. Seriamente @LadyAda
user2497
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.