在旧的内核代码中,我们需要关闭省电模式,然后才能控制GPIO。
在新的内核,已经没有这个选项,我尝试用以前的代码已经不能控制GPIO。
新的GPIO控制方式暂时如下:
比如需要控制MIO 48为低,需要进行如下动作:
1.确认第一个GPIO控制器索引 (每个PIN脚一个控制器)
root@zc706-zynq7:/sys/class/gpio# ls
export gpiochip906 unexport
2. 创建 GPIO 48的控制器
root@zc706-zynq7:/sys/class/gpio# echo 954 > export
root@zc706-zynq7:/sys/class/gpio# ls
export gpio954 gpiochip906 unexport
3.设定GPIO方向
root@zc706-zynq7:/sys/class/gpio# echo out > gpio954/direction
4.拉低GPIO
root@zc706-zynq7:/sys/class/gpio# echo 0 > gpio954/value
具体实现还可以通过文件读写的方式,在 direction和value两个文件中写入0或1。