主要文件路径在:/sys/class/gpio
该文件下有两个文件 export、unexport 以及 5 个 gpiochipX(X 等于 0、32、64、96、128) 命名的文件夹。
每一个 gpiochipX 文件夹用来管理一组 GPIO。 随便进入到其中某个目录下,可以看到这些目录下包含了如下文件:计算引脚在系统中 的编号,如GPIO4_IO16,它是第四组,最小编号是96,GPIO4_IO16 对应的编号自然是 96 + 16 = 112
export:用于将指定编号的 GPIO 引脚导出。如向里面写0就是导出0号引脚的文件夹。用于管理、控制该 GPIO 引 脚。在使用前可以通过access(路径,F_OK)函数判断目录是否存在。
unexport:将导出的 GPIO 引脚删除。当使用完 GPIO 引脚之后,我们需要将导出的引脚删除,同 样该文件也是只写文件、不可读,
在通过export导出的gpiox文件中,主要关注的有active_low、direction、edge 以及 value 这四个属性文件。
direction:配置 GPIO 引脚为输入或输出模式。该文件可读、可写,读表示查看 GPIO 当前是输入 还是输出模式,写表示将 GPIO 配置为输入或输出模式;读取或写入操作可取的值为"out"(输出模 式)和"in"(输入模式)
value:在 GPIO 配置为输出模式下,向 value 文件写入"0"控制 GPIO 引脚输出低电平,写入"1"则 控制 GPIO 引脚输出高电平。在输入模式下,读取 value 文件获取 GPIO 引脚当前的输入电平状态。
active_low:这个属性文件用于控制极性,可读可写,默认情况下为 0,譬如:
edge:控制中断的触发模式,该文件可读可写。在配置 GPIO 引脚的中断触发模式之前,需将其设 置为输入模式: 非中断引脚:echo "none" > edge 上升沿触发:echo "rising" > edge 下降沿触发:echo "falling" > edge 边沿触发:echo "both" > edge 当引脚被配置为中断后可以使用 poll()函数监听引脚的电平状态变化,