Что такое BCM и почему он используется в Raspberry Pi

Cto Takoe Bcm I Pocemu On Ispol Zuetsa V Raspberry Pi



При написании сценариев Python для проектов Raspberry Pi многие люди не понимают, млрд кубометров и ДОСКА нумерация контактов. Люди обычно склонны понимать номер BOARD, поскольку это простое выравнивание контактов на плате Raspberry Pi, но большинство людей путают номер BCM Raspberry Pi.

Если вы столкнулись с той же проблемой, то эта статья поможет вам получить полное представление о BCM в Raspberry Pi.

Что такое BCM и почему он используется в Raspberry Pi

млрд кубометров является аббревиатурой « Канал Broadcom SOC ; В Raspberry Pi есть два способа обращения к контактам платы Raspberry Pi: млрд кубометров а другой ДОСКА . Выводы более низкого уровня на плате, определяемые чипом Broadcom, являются выводами BCM, а номер BCM отличается от номеров выводов платы/чипа, потому что в исходных платах Raspberry Pi было меньшее количество выводов. По мере запуска новых плат добавляется больше контактов, а номер BCM остается прежним, из-за чего нарушается общее выравнивание номеров контактов.







Конфигурация контактов платы Raspberry Pi

На изображении ниже показана конфигурация контактов последних плат Raspberry Pi с 40 контактами. Названия выводов, упомянутые в цветные прямоугольники являются номер BCM контактов и номера, указанные внутри круги представлять СОВЕТ номер штифтов.





Для удобства пользователей Raspberry Pi поддерживает как использование млрд кубометров и ДОСКА числа. Пользователи просто должны ссылаться на них в коде перед кодированием контактов.





Чтобы обратиться к числам, присутствующим внутри круги (1,2,3,4,…) ПЛАТА GPIO. конфигурация будет использоваться внутри скрипта Python:

ПЛАТА GPIO.

Принимая во внимание, что для обозначения контактов внутри цветные прямоугольники (GPIO10, GPIO11, GPIO12,…) GPIO.BCM используется:



GPIO.BCM

Как использовать BCM в скриптах Python на Raspberry Pi?

Давайте разберем это на примере. Если мне нужно использовать контакт 11 платы (GPIO17, BCM) для переключения светодиода, я буду использовать его в коде Python, как указано ниже:

импортировать RPi.GPIO как GPIO
Импортировать время

GPIO.setmode ( GPIO.BCM )

GPIO.setup ( 17 , GPIO.ВЫХОД )

для я в диапазон ( пятнадцать ) :
GPIO.выход ( 17 , GPIO.ВЫСОКИЙ )
время сна ( 2 )
GPIO.выход ( 17 , GPIO.НИЗКИЙ )
время сна ( 2 )

В коде для установки режима контакта я определил конфигурацию контактов BCM в начале, после чего я использовал контакт GPIO17 вместо 11 (номер BOARD).

Схема для кода Python

Аппаратная схема для приведенного выше кода показана на изображении ниже, где я выделил 17-контактный разъем GPIO (BCM).

Светодиод мигнет 15 раз с 2-секундной задержкой между состояниями включения и выключения.

Заключение

млрд кубометров — это канал Broadcom на Raspberry Pi, который используется для настройки выводов Raspberry Pi с использованием номеров каналов Broadcom. млрд кубометров количество контактов отличается от номера BOARD. Эти номера используются при программировании контактов GPIO, пользователь должен определить GPIO.setmode в начале. После чего пины можно использовать соответственно в коде.