当前位置: 首页 > news >正文

ARM Linux 如何在sysfs用户态命令行中控制 GPIO 引脚?

ARM Linux 如何在sysfs用户态命令行中控制 GPIO 引脚?

我们在开发工作中,经常需要确定内核gpio驱动,是否有异常,或者在没有应用的情况下,像控制某个外设,这时我们就可以在控制台命令行中,用命令导出gpio符号来操作了,操作如下所示:

1、通过 sysfs 控制 gpio 引脚 /sys/class/gpio。

A-D 对应1-4:A->1,B->2,C->3,D->4。

GPIOn_xy = n*32 + (x-1)*8 + y

GPIO4_C6 = 4*32 + (3-1)*8 + 6 = 150

备注:不同平台GPIO计算方法不一样,上面例子是RK3568的计算方法,请注意。

2、配置 gpio 为输入读取状态。

[root@rk3568:/]# echo 150 > /sys/class/gpio/export //导出GPIO4_C6 引脚

[root@rk3568:/]# echo in > /sys/class/gpio/gpio150/direction //设置IO 输入方向

[root@rk3568:/]# cat > /sys/class/gpio/gpio150/value //查看IO 值

[root@rk3568:/]# echo 150 > /sys/class/gpio/unexport //取消导出引脚

3、配置 gpio 为输出设置状态。

[root@rk3568:/]# echo 150 > /sys/class/gpio/export //导出GPIO4_C6 引脚

[root@rk3568:/]# echo out > /sys/class/gpio/gpio150/direction //设置IO 输出方向

[root@rk3568:/]# echo 0 > /sys/class/gpio/gpio150/value //设置IO 输出为低电平

[root@rk3568:/]# echo 1 > /sys/class/gpio/gpio150/value //设置IO 输出为高电平

[root@rk3568:/]# echo 150 > /sys/class/gpio/unexport //取消导出引脚

http://www.lryc.cn/news/5483.html

相关文章:

  • 【Linux】生产者消费者模型 - 详解
  • 源码深度解析Spring Bean的加载
  • STL——priority_queue
  • Springboot集成工作流Activity
  • 2023软件测试工程师涨薪攻略,3年如何达到月薪30K?
  • Java面试——Spring Bean相关知识
  • 上班在群里摸鱼,逮到一个字节8年测试开发,聊过之后羞愧难当...
  • HTTP、WebSocket和Socket.IO
  • Fluent Python 笔记 第 11 章 接口:从协议到抽象基类
  • 【Spark分布式内存计算框架——Spark Core】11. Spark 内核调度(下)
  • Java中的函数
  • 实验6-霍纳法则及变治技术
  • IP地址:揭晓安欣警官自证清白的黑科技
  • 考研复试机试 | C++
  • 第四章.误差反向传播法—误差反向传播法实现手写数字识别神经网络
  • IB学习者的培养目标有哪些?
  • C++类基础(十三)
  • 03 OpenCV图像运算
  • 【C语言学习笔记】:动态库
  • Zookeeper
  • wav转mp3,wav转换成mp3教程
  • springboot项目配置文件加密
  • 公司招聘:33岁以上的和两年一跳的不要,开出工资我还以为看错了...
  • 【置顶】:文章合集系列
  • Go的web开发Gin框架1(八)——Gin
  • 吴思进——复杂美创始人首席执行官
  • apk简单介绍(组成以及打包安装流程)
  • ffmpeg学习笔记之SDL视频播放器
  • 【Git】合并多条 commit 注释信息
  • 【gcc/g++】程序的翻译(.c -->.exe)