Sự khác biệt giữa BOARD và BCM cho đánh số pin GPIO là gì?


130

Khi sử dụng thư viện RPi.GPIO trong Python, bạn phải gọi

import RPi.GPIO as GPIO

và sau đó

GPIO.setmode(GPIO.BOARD)

hoặc là

GPIO.setmode(GPIO.BCM)

Sự khác biệt giữa hai lựa chọn này là gì?

Câu trả lời:


151

Tôi đã nhận được thông tin dưới đây từ đây .

Các GPIO.BOARD tùy chọn xác định rằng bạn đang đề cập đến các chân bằng của số pin các plug - tức là những con số được in trên bảng (ví dụ P1) và ở giữa các sơ đồ dưới đây.

Các GPIO.BCM tùy chọn có nghĩa là bạn đang đề cập đến các chân của các "kênh Broadcom SOC" số, đây là những con số sau "GPIO" trong hình chữ nhật màu xanh lá cây xung quanh bên ngoài của sơ đồ dưới đây:

Thật không may, số BCM đã thay đổi giữa các phiên bản của Pi1 Model B và bạn sẽ cần tìm ra cái nào bạn có hướng dẫn ở đây . Vì vậy, có thể an toàn hơn khi sử dụng các số BOARD nếu bạn sẽ sử dụng nhiều hơn một Raspberry Pi trong một dự án.

  • Model B + sử dụng cách đánh số tương tự như Model B r2.0 và thêm các chân mới (số bảng 27-40).
  • Raspberry Pi Zero, Pi 2B và Pi 3B sử dụng cách đánh số giống như B +.

Mô hình Pi1 B +, Pi 2B, Pi Zero và Pi 3B: Sơ đồ đánh số pin GPIO


Pi 1 Mô hình B Phiên bản 2.0:

Sơ đồ đánh số pin GPIO


Pi 1 Mô hình B Phiên bản 1.0: Sơ đồ đánh số pin GPIO


1
Và để hoàn thiện, A giống như các bảng B mô hình sau này và A + giống với B +.
Peter Green

1
Phiền thật đấy. Chỉ cần đặt hai số nhỏ bằng mỗi pin. Nghiêm túc @LadyAda
user2497
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.