使用的核心板为COM-T6UL,主控为MCIMX6Y2
操作系统为:下图所示
GPIO编号计算公式:(group -1 )*32 + number 其中group为其对应的组,number为组对应的编号;例如GPIO5_IO7,其group为第5组,第7编号,则对应操作系统编号为:(5-1)*32+7=135
此次记录随笔为通过文件系统来操作GPIO的输出和读取(需要dtb设备树支持),步骤如下:
1、先进入文件系统的GPIO外设其文件路径为/sys/class/gpio,使用命令:cd /sys/class/gpio ;
2、通过计算GPIO编号(group -1 )*32 + number ,来带入要操作的gpioX文件夹,如上GPIO5-IO7,则进入其对应的文件夹gpio135,使用命令:cd gpio135 ;
3、进入文件夹后,其文件夹有几个文件,只需关注 direction和value,其中dirercion为设置GPIO的输出或输入;value为设置输出GPIO的高低电平或记录GPIO输入的高低电平;
3.1、设置GPIO为输出使用命令 echo out > direction ;设置GPIO为输入使用命令:echo in > direction ;
3.2、设置GPIO输出高电平,使用命令: echo 1 > value ;输出低电平命令为:echo 0 > value;
3.3、读取GPIO输入高低电平,则使用命令 :cat value 即可查看此时GPIO的输入高低电平状态;
下图为实际操作截图:
上图为操作设置GPIO5_IO5为输出方向,且输出高电平,然后设置GPIO5_IO7为输入,查看其输入状态