1.执行下面的命令,可以显示目前驱动已经申请到的IO状态 :

$ mount -t debugfs debugfs /sys/kernel/debug
 $ cat /sys/kernel/debug/gpio
 
 root@am335x-evm:/# cat /sys/kernel/debug/gpio
 GPIOs 0-31, gpio:
  gpio-2   (volume-up           ) in  hi
  gpio-3   (volume-down         ) in  hi
  gpio-6   (mmc_cd              ) in  hi
 
 GPIOs 32-63, gpio:
  gpio-48  (wlan_en             ) out lo
  gpio-53  (matrix_kbd_col      ) out hi
  gpio-54  (matrix_kbd_col      ) out hi
  gpio-57  (matrix_kbd_row      ) in  lo
  gpio-58  (matrix_kbd_row      ) in  lo
  gpio-59  (matrix_kbd_row      ) in  lo

GPIOs 64-95, gpio:
 
 GPIOs 96-127, gpio:
  gpio-114 (mmc_wp              ) in  lo
  gpio-117 (bt_en
               ) out lo

2,重新申请一个新IO(118),并且查看有没有申请成功:
 
  root@am335x-evm:/# echo 118 > /sys/class/gpio/export
  root@am335x-evm:/# ls /sys/class/gpio
  export      gpiochip0   gpiochip64  unexport
  gpio118     gpiochip32  gpiochip96

root@am335x-evm:/# cat /sys/kernel/gpio
  GPIOs 0-31, gpio:
   gpio-2   (volume-up           ) in  hi
   gpio-3   (volume-down         ) in  hi
   gpio-6   (mmc_cd              ) in  hi
  
  GPIOs 32-63, gpio:
   gpio-48  (wlan_en             ) out lo
   gpio-53  (matrix_kbd_col      ) out hi
   gpio-54  (matrix_kbd_col      ) out hi
   gpio-57  (matrix_kbd_row      ) in  lo
   gpio-58  (matrix_kbd_row      ) in  lo
   gpio-59  (matrix_kbd_row      ) in  lo
  
  GPIOs 64-95, gpio:
  
  GPIOs 96-127, gpio:
   gpio-114 (mmc_wp              ) in  lo
   gpio-117 (bt_en
                ) out lo
   gpio-118 (sysfs               ) in  lo

  3,改变IO为输出:
  root@am335x-evm:/# echo "out" > /sys/class/gpio/gpio118/direction
  使IO的输出为高:
  root@am335x-evm:/# echo 1 > /sys/class/gpio/gpio118/value
  root@am335x-evm:/# cat /sys/kernel/gpio
  GPIOs 0-31, gpio:
   gpio-2   (volume-up           ) in  hi
   gpio-3   (volume-down         ) in  hi
   gpio-6   (mmc_cd              ) in  hi
  
  GPIOs 32-63, gpio:
   gpio-48  (wlan_en             ) out lo
   gpio-53  (matrix_kbd_col      ) out hi
   gpio-54  (matrix_kbd_col      ) out hi
   gpio-57  (matrix_kbd_row      ) in  lo
   gpio-58  (matrix_kbd_row      ) in  lo
   gpio-59  (matrix_kbd_row      ) in  lo
  
  GPIOs 64-95, gpio:
  
  GPIOs 96-127, gpio:
   gpio-114 (mmc_wp              ) in  lo
   gpio-117 (bt_en
                ) out lo
   gpio-118 (sysfs               ) out hi
  
   4,释放IO:
   root@am335x-evm:/# echo 118 > /sys/class/gpio/unexport

am335x gpio控制的更多相关文章

  1. am335x gpio 控制的另一种方法

    #include <linux/gpio.h>  #include <linux/module.h>  #include <linux/kernel.h>  #in ...

  2. python环境下实现OrangePi Zero寄存器访问及GPIO控制

    最近入手OrangePi Zero一块,程序上需要使用板子上自带的LED灯,在网上一查,不得不说OPi的支持跟树莓派无法相比.自己摸索了一下,实现简单的GPIO控制方法,作者的Zero安装的是Armb ...

  3. OpenWRT中的按键和灯的GPIO控制实现_转

    本文转自:OpenWRT中的按键和灯的GPIO控制实现 基于BarrierBreaker版本,基于AR9331 AP121 Demo单板 来进行描述 1.灯 A.在mach-ap121.c中,定义了灯 ...

  4. 树莓派Zero W GPIO控制

    作者:陈拓 chentuo@ms.xab.ac.cn 2018.06.09/2018.07.05 0.  概述 本文介绍树莓派 Zero W的GPIO控制,并用LED看效果. 0.1 树莓派GPIO编 ...

  5. linux gpio控制之sysfs接口

    在3.14及之后的linux中对gpio提供了sysfs接口,说明文档:Documents/gpio/sysfs.txt. Platforms which use the "gpiolib& ...

  6. am335x gpio分析

    /************************************************************************ * am335x_gpio * 本文主要记录am33 ...

  7. linux设备驱动程序--gpio控制

    gpio驱动程序 上一章节linux设备驱动程序--创建设备节点章节主要介绍了linux字符设备驱动程序的框架,从这一章节开始我们讲解各种外设的控制,包括gpio,i2c,dma等等,既然是外设,那就 ...

  8. Am335x 下GPIO控制实例-驱动程序(转)

    看了这么多的资料,现在决定上手了,下面将用两种方式来实现对GPIO 117的控制1,用直接添加到内核的方式,实现MISC的驱动(misc_register)2,用手工安装的方式,实现简单字符设备驱动( ...

  9. STM32F412应用开发笔记之二:基本GPIO控制

    NUCLEO-F412ZG板子上的元器件并没有完全焊接,除去ST-LINK部分和电源部分后,还有用一个USB主机接口,三个LED灯和两个按钮,不过很多功能引脚都已经引到了插针.查看原理图可发现,由原理 ...

随机推荐

  1. Thinkphp学习笔记5-URL生成U方法

    为了配合所使用的URL模式,我们需要能够动态的根据当前的URL设置生成对应的URL地址,为此,ThinkPHP内置提供了U方法,用于URL的动态生成,可以确保项目在移植过程中不受环境的影响. 定义规则 ...

  2. 引导工具GRUB详解

    导读 引导程序是驻留在硬盘第一个扇区(MPR.主引导记录)的程序.GRUB是一个功能强大的多系统引导程序,专门处理Linux与其它操作系统共存的问题.下面就由我介绍一下grub.conf文件里的具体内 ...

  3. FrameWork中SQLServer数据源使用宏函数出错解决办法

    环境:DW是SQLServer2008 建模工具:Cognos FrameWork Version:Cognos10.2 出现问题:在FM中创建查询主题,sql类型数据源,引入宏函数#CAMIDLis ...

  4. C#基础视频教程3.1 常见控件类型和使用方法

    可以从左侧的工具箱中找到常见的控件(你要在Form1这种窗体上)   为了方便你也可以把工具箱整个拖过去,这样从上到下控件都给你排好了   对于按钮来说,最常见的就是他的背景颜色,文字,字体,还有是否 ...

  5. Spring+Shiro搭建基于Redis的分布式权限系统(有实例)

    摘要: 简单介绍使用Spring+Shiro搭建基于Redis的分布式权限系统. 这篇主要介绍Shiro如何与redis结合搭建分布式权限系统,至于如何使用和配置Shiro就不多说了.完整实例下载地址 ...

  6. AsyncTask doinbackground onProgressUpdate onCancelled onPostExecute的基本使用

    对于异步操作的原理我就不讲了.在这我着重讲怎么使用异步操作的doinbackground onProgressUpdate onCancelled onPostExecute这四个方法 doinbac ...

  7. Java计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)

    程序员都很懒,你懂的! java程序员在实际的开发中会遇到很多的单位换算问题.今天我给大家带来的是关于计算机硬盘大小的换算.多数情况下,一般要求 b,kb,mb,gb,tb,pb之间的大小转换,我们都 ...

  8. 数据库选型之MySQL(普通硬盘)

    刘勇   Email:lyssym@sina.com 本博客记录作者在工作与研究中所经历的点滴,一方面给自己的工作与生活留下印记,另一方面若是能对大家有所帮助,则幸甚至哉矣! 简介 鉴于高频中心库ta ...

  9. 强制关机后导致VBOX(4.2.16 r86992)的虚拟机不可使用问题的解决MEMO

    上周六晚上由于有急事,就强制关机,导致今天晚上用VirtualBox(4.2.16 r86992)时,虚拟机上写着不可使用. 显示异常Message如下: D:\tinderbox\win-4.2\s ...

  10. mysql数据库创建删除带横杠的数据库名

    mysql> create database d-d; ERROR 1064 (42000): You have an error in your SQL syntax; check the m ...