Менеджер ресурсов GPIO для платформ семейства Allwinner Sunxi
gpio-sunxi [опции]
ЗОСРВ «Нейтрино»
armv7
gpio-sunxi управляет ресурсами GPIO для платформ семейства Allwinner Sunxi. За номерами контроллеров GPIO закреплены последовательно порты A, C, D, E, F, G, L.
Присутствует два варианта записи установки пинов:
echo "<gpio_number> <gpio_pin_number> <value|i|o>" > /dev/gpio
echo "P<pin_number> <value|i|o>" > /dev/gpio
Где gpio_number - номер контроллера GPIO; gpio_pin_number - номер пина контроллера GPIO; pin_number - номер пина среди всех контроллеров GPIO.
Для более удобного обращения к пинам GPIO через библиотечные функции в заголовочном файле <hw/sunxi-gpio.h> определены следующие макросы:
Обращение к GPIO контроллерам буквенным обозначением:
Чтение состояний и направлений GPIO:
# cat /dev/gpio gpio0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0i 0i 0i 0i 0i 0i 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i gpio1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i gpio2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i gpio3 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i gpio4 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0o 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i gpio5 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0o 0o 0o 0o 0o 0o 0o 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i gpio6 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0o 0o 0o 0o 0o 0o 0o 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i 0i
Суффикс i - означает, что вывод в режиме вход. Суффикс o - означает, что вывод в режиме выход.
| Статус "i" не гарантирует режим ввода: пин может быть мультиплексирован на периферию или быть отключен. |
Установка пина 1 для GPIO0 (Порт A) в режим выхода:
echo "0 1 o" > /dev/gpio
Установка пина 1 для GPIO2 (Port D) в состояние "высокий":
echo "P65 1" > /dev/gpio
BSP для систем на базе процессора Allwiner H3, драйверы
Предыдущий раздел: перейти