1、gpio类的export、unexport属性来源和作用
1.1export和unexport属性创建
在内核初始化阶段,将自动调用gpioilib_sysfs_init()在/sys/class中创建gpio类,用于统一管理调试GPIO。export、unexport属性为gpio_class成员,在注册gpio类时,将会在/sys/class/gpio/目录下创建export和unexport属性文件,用于用户空间导出GPIO的控制权限,是区别于访问设备节点的另一种GPIO控制方法。
1.2export和unexport属性的作用
export可将GPIO引脚的控制属性以文件形式导出,通过读写文件来控制GPIO引脚状态;
unexport用于在调试完成后取消导出文件;
2、/sys/class/gpio/export和unexport属性使用方法
2.1导出目标GPIO引脚的控制属性
输入:
echo 23 > export
将会导出/sys/class/gpio/gpio23/目录
2.2GPIO控制参数修改
进入gpio23目录下,控制参数如下图所示将会以文件形式导出。可使用echo写入参数,cat读取参数
active_low:不了解
direction:定义引脚的输入输出方向,参数:in\out
例 设置输出:echo out > direction
edge:中断设置,参数:none rising falling both
例 设置上升沿触发中断:echo rising > direction
uevent:不了解
value:设置引脚高低电平,参数:1\0
例 设置输出高电平:echo 1 > value
2.3unexport撤回导出的gpio属性文件
输入:
echo 17 > unexport