尝试写入 /sys/class/gpio/export – 写入错误:参数无效

尝试写入 /sys/class/gpio/export – 写入错误:参数无效

我有一块 Intel aaeon 主板,我想使用它的 GPIO 引脚。为此,我尝试了以下代码:

echo 17 > /sys/class/gpio/export

但当我运行它时,我得到的结果如下:

-bash: echo: write error: Invalid argument

这可能是什么问题?我该如何解决?


输出ls /sys/class/gpio/

export gpiochip225 gpiochip228 gpiochip314 gpiochip341 gpiochip414 unexport

答案1

文档内容如下:

GPIO 控制器具有如下路径/sys/class/gpio/gpiochip42/(对于从 #42 开始实现 GPIO 的控制器)并具有以下只读属性:

/sys/class/gpio/gpiochipN/

baseN...与该芯片管理的第一个 GPIO相同

[…]

ngpio... 它管理多少个 GPIO(NN+ngpio-1

就您而言,最低的N225没有芯片管理GPIO 17调用

cat /sys/class/gpio/gpiochip225/ngpio

如果你得到(例如)2那么你可以使用两个数字:225226

# as root
echo 225 > /sys/class/gpio/export
echo 226 > /sys/class/gpio/export

(如果您想使用sudo这个技巧将会很有用echo 225 | sudo tee /sys/class/gpio/export:)。

对于其他控制器(gpiochipN条目)同样如此。


注意sysfs-gpio已弃用。请参阅YouTube 上的这个视频

相关内容