[imx6ul]arm linux gpio控制使用/dev/gpio 实现
arm linux gpio控制使用/dev/gpio 实现
1、在设备树文件中添加设备节点定义以及其引脚定义:
并将其他复用引脚对应的功能disabed,保证这些引脚没被重复定义使用。引脚的pinmux可以查看imx6ul-pinfunc.h文件。
2、在driver/misc/gpio目录下添加gpio驱动gpio-user.c,名字需要与节点定义里的驱动名字保持相同,客户也可以自己写驱动。同时添加Kconfig和Makefile文件。
修改driver/misc下Kconfig和Makefile文件:
在driver/misc/Makefile 中添加:
obj-y += gpio/
编辑driver/misc/Kconfig, 添加一行:
source
"drivers/misc/gpio/Kconfig",如图:
在根目录下修改linux_imx6ul_config文件,添加:
CONFIG_GPIO_USER_INTF=y
3、编译。
make zImage
make ARCH=arm CROSS_COMPILE=arm-fsl-linux-gnueabi-
dtbs
4、拷贝前面生成的zImage, imx6ul-14x14-evk.dtb 到 SD卡system目录中,SD卡方式烧录。
在dev下有gpio节点。
采用gpio-test.c为用户测试程序。编译为gpio-test。
使用gpio-test in 2测试DI。
使用gpio-test out 0 1 测试DO1 输出为高电平。
使用gpio-test out 0 0 测试DO1 输出为低电平。
适用于imx6ul
[ld]链接:https://pan.baidu.com/s/1FjUdAlUHQZm1QuJBeerOzA
提取码:ferd
复制这段内容后打开百度网盘手机App,操作更方便哦
[/ld]
最新评论