Jaka jest różnica między BOARD a BCM dla numeracji pinów GPIO?

130

Podczas korzystania z biblioteki RPi.GPIO w Pythonie musisz zadzwonić

import RPi.GPIO as GPIO

i wtedy

GPIO.setmode(GPIO.BOARD)

lub

GPIO.setmode(GPIO.BCM)

Jaka jest różnica między tymi dwiema opcjami?

miramy
źródło

Odpowiedzi:

151

Mam stąd informacje poniżej .

Opcja GPIO.BOARD określa, że ​​masz na myśli piny według numeru pinu wtyczki - tj . Liczb wydrukowanych na płycie (np. P1) i pośrodku poniższych schematów.

Opcja GPIO.BCM oznacza, że ​​odnosi się do pinów przez numer „kanału Broadcom SOC”, są to liczby po „GPIO” w zielonych prostokątach wokół zewnętrznych schematów:

Niestety liczby BCM zmieniły się między wersjami Pi1 Model B i musisz ustalić, który z nich masz tutaj . Dlatego bezpieczniej jest używać numerów BOARD, jeśli zamierzasz używać więcej niż jednego Raspberry Pi w projekcie.

  • Model B + używa tej samej numeracji co model B r2.0 i dodaje nowe piny (numery płyt 27-40).
  • Raspberry Pi Zero, Pi 2B i Pi 3B używają tej samej numeracji co B +.

Pi1 Model B +, Pi 2B, Pi Zero i Pi 3B: Schemat numeracji pinów GPIO


Pi 1 Model B Revision 2.0:

Schemat numeracji pinów GPIO


Pi 1 Model B Wersja 1.0: Schemat numeracji pinów GPIO

miramy
źródło
1
A dla kompletności, A jest takie samo jak późniejsze modele B, a A + jest takie samo jak B +.
Peter Green
1
To denerwujące. Wystarczy umieścić dwie małe cyfry na każdym pinie. Poważnie @LadyAda
user2497