Соглашения и названия Gpio Linux - PullRequest
0 голосов
/ 16 сентября 2018

Как мы можем найти наименование доступных gpi на произвольной плате под управлением Linux, а затем использовать команды Linux echo "gpionumber" >/sys/class/gpio, чтобы мы могли управлять этим gpio?

1 Ответ

0 голосов
/ 16 сентября 2018

Gpio и gpiocontrollers пронумерованы.Gpiocontrollers могут иметь метки, но они могут быть не уникальными.

Документацию по ядру Linux на драйвере gpio sysfs можно найти здесь и это хорошее чтение.

Ядро Linux использует дерево устройств файл длязнать, какие gpiocontrollers доступны для него.У gpiocontroller может быть несколько gpi.Каждая плата имеет свое уникальное дерево устройств, скомпилированное с ядром или загруженное во время загрузки.

Гпиоконтроллеры идентифицируются регистром и длиной регистра, на которую они ссылаются, см. здесь .Вы можете указать метку gpiocontroller, как описано в формат файла дерева устройств , и вы можете запросить метку gpiocontroller, используя /sys/class/gpio/gpiochipN/label, они могут быть не уникальными и не позволяют идентифицировать gpio.Кроме того, они могут меняться между версиями файлов дерева устройств.

Здесь нет «имен», только нумерация.Вы можете запросить все gpi, доступные на конкретной плате, просто осмотрев / добавив /sys/class/gpio/gpiochip*/ngpio Обычно производитель / поставщик / продавец / etc предоставляет документацию с ядром, которое он поставляет с платой, с объяснением, какой gpio имеет какой номер / адрес,как для Colibri VF61 .Для некоторых популярных плат просто поискать картинки с числами gpio, например, для RaspberryPi3 или

.
...