高通平台直接通过adb控制GPIO电平

首先,看看系统中有没有“/sys/class/gpio”这个文件夹。如果没有请在编译内核的时候加入 Device Drivers-> GPIO Support ->/sys/class/gpio/… (sysfs interface)。

/sys/class/gpio 的使用说明:

gpio_operation 通过/sys/文件接口操作IO端口 GPIO到文件系统的映射

◇ 控制GPIO的目录位于/sys/class/gpio

◇ /sys/class/gpio/export文件用于通知系统需要导出控制的GPIO引脚编号

◇ /sys/class/gpio/unexport 用于通知系统取消导出

◇ /sys/class/gpio/gpiochipX目录保存系统中GPIO寄存器的信息,包括每个寄存器控制引脚的起始编号base,寄存器名称,引脚总数 导出一个引脚的操作步骤

◇ 首先计算此引脚编号,引脚编号 = 控制引脚的寄存器基数 + 控制引脚寄存器位数

◇ 向/sys/class/gpio/export写入此编号,比如12号引脚,在shell中可以通过以下命令实现,命令成功后生成/sys/class/gpio/gpio12目录,如果没有出现相应的目录,说明此引脚不可导出

◇ direction文件,定义输入输入方向,可以通过下面命令定义为输出。direction接受的参数:in, out, high, low。high/low同时设置方向为输出,并将value设置为相应的1/0

◇ value文件是端口的数值,为1或0

**> 几个例子:

  1. 导出
    /sys/class/gpio# echo 44 > export

  2. 设置方向
    /sys/class/gpio/gpio44# echo out > direction

  3. 查看方向
    /sys/class/gpio/gpio44# cat direction

  4. 设置输出
    /sys/class/gpio/gpio44# echo 1 > value

  5. 查看输出值
    /sys/class/gpio/gpio44# cat value

  6. 取消导出
    /sys/class/gpio# echo 44 > unexport**

获得超级权限

 2. sudo su  

 3. # 进入GPIO目录  

 4. cd /sys/class/gpio  

 5. # 使用ls查看gpio目录中的内容,可以查看到  

 6. # export gpiochip0 unexport   

 7. ls  

 8. # GPIO操作接口从内核空间暴露到用户空间  

 9. # 执行该操作之后,该目录下会增加一个gpio4文件  

 10. echo 4 > export  

 11. # 进入GPIO4目录,该目录由上一步操作产生  

 12. cd gpio4  

 13. #   查看gpio4目录中的内容,可查看到  

 14. #   active_low direction edge power subsystem uevent value  

 15. ls   

 16. # 设置GPIO4为输出方向  

 17. echo out > direction  

 18. # BCM_GPIO4输出逻辑高电平,LED点亮  

 19. echo 1 > value  

 20. #  BCM_GPIO4输出逻辑低电平,LED熄灭  

 21. echo 0 > value  

 22. # 返回上一级目录  

 23. cd ../  

 24. # 注销GPIO4接口  

 25. echo 4 > unexport  

 26. # 退出超级用户  

 27. exit
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值