千古八方的博客

  • 程序开发
    • Android
    • Spring Boot
  • 数据私有化
    • NAS
    • 私有云
    • 内网穿透
    • 服务器
  • 留言
  • 搞事
进学
为学无间断,如流水行云,日进而不已也
  1. 首页
  2. Android
  3. 正文

RK3399 Android7.1系统,GPIO控制详解

2022年6月28日 476点热度 1人点赞 0条评论
基础词语:GPIO —— CPU 引脚通用 I/O 口序号
目录
1. 查看GPIO与物理引脚的对应关系
2. Android系统导出GPIO
3. Android系统在用户空间使用系统命令控制GPIO
4. GPIO功能测试
Android 系统编译相关文章

1. 查看GPIO与物理引脚的对应关系

本文以GPIO0_A6为例,即电路板上的CPU引出的零号第六个引脚,查看硬件线路与系统gpio路径的对应关系。

其中rk3399 P2引出的GPIO0_A6 原理图与实物,如下:

首先需要计算对应的gpio number的值,可以通过/sys/kernel/debug/gpio查询信息:

rk3399_rangotec:/ $ cat /sys/kernel/debug/gpio
GPIOs 1000-1031, platform/pinctrl, gpio0:
gpio-1002 ( |3G_power ) out lo
gpio-1004 ( |bt_default_wake_host) in lo
gpio-1005 ( |power ) in hi
gpio-1009 ( |bt_default_reset ) out lo
gpio-1010 ( |reset ) out hi
gpio-1011 ( |pwd_en_3G ) out hi


GPIOs 1032-1063, platform/pinctrl, gpio1:
gpio-1033 ( |led_Test ) in lo
gpio-1034 ( |int-n ) in hi
gpio-1035 ( |vbus-5v ) out hi
gpio-1045 ( |enable ) out lo
gpio-1046 ( |vsel ) out hi
gpio-1049 ( |vsel ) out lo


GPIOs 1064-1095, platform/pinctrl, gpio2:
gpio-1076 ( |camsys_gpio ) out lo
gpio-1083 ( |bt_default_rts ) in hi
gpio-1090 ( |bt_default_wake ) in lo
gpio-1091 ( |camsys_gpio ) out lo

通过上面的返回结果可以看到,GPIO0是以nubmer为1000开始, 那么GPIO0_A6就是 1000 +  6 = 1006。

然后查看/sys/class/gpio目录下存在的gpio,这时候并没有gpioxxxx_1006,需要我们导出一个。

rk3399_rangotec:/ $ ls /sys/class/gpio                               
export     gpiochip1032 gpiochip1096 unexport 
gpiochip1000 gpiochip1064 gpiochip1128

 

2. Android系统导出GPIO

导出时需要切换到root执行export命令,否则权限阻止,导出命令如下:

rk3399_rangotec:/sys/class/gpio $ su 
rk3399_rangotec:/sys/class/gpio # echo 1006 > export                       
rk3399_rangotec:/sys/class/gpio # ls
export  gpiochip1000 gpiochip1064 gpiochip1128 
gpio1006 gpiochip1032 gpiochip1096 unexport

此时就会发现多了一个 gpio1006的文件夹,  这个文件对应着GPIO0_A6引脚对应的功能。

注意:由于rk3399 kernel自带了通用GPIO驱动,所以这里可以直接export对应的引脚。

 

3. Android系统在用户空间使用系统命令控制GPIO

这里我们把gpio1006设置为输出,这样用万用表测量起来比较方便。

进入到gpio1006文件夹,然后 echo out > direction,如下:

rk3399_rangotec:/sys/class/gpio # cd gpio1006/     
rk3399_rangotec:/sys/class/gpio/gpio1006 # echo out > direction

 

4. GPIO功能测试

使能与关闭只需向value里传1和0即可,如下:

# 使能
rk3399_rangotec:/sys/class/gpio/gpio1006 # echo 1 > value                   
rk3399_rangotec:/sys/class/gpio/gpio1006 # cat value                       
1
# 关闭
rk3399_rangotec:/sys/class/gpio/gpio1006 # echo 0 > value 
rk3399_rangotec:/sys/class/gpio/gpio1006 # cat value 
0

使能gpio1006引脚,用万用表测量下对应的针脚是否为1.8V(FET3399-C 核心板引出的 GPIO,除了 RGMII 和 MDC,MDIO 是 3.3V 的,其余 GPIO 全部是 1.8V电平)。

 

Android 系统编译相关文章

  • RK3399 Android7.1系统,GPIO控制详解
  • RK3399 Android7.1系统,GPIO内核驱动开发
  • ubuntu 18.04 LTS 上编译 RK3399 Android 7.1 遇到的错误及解决方法
标签: Android系统编译
最后更新:2022年6月28日

千古八方

物格而后知至,知至而后意诚,意诚而后心正

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

千古八方

物格而后知至,知至而后意诚,意诚而后心正

最新 热点 随机
最新 热点 随机
火狐下远离内容农场的方法! 中国城市生活成本查询 Debian11 系统备份与灾备盘制作 Debian logwatch 自定义配置文件,根据规则忽略掉某些日志内容 Ampache 5.0 报错 The root Ampache folder has changed to ./public socat 正反向传输文件
ubuntu 18.04 LTS 上编译 RK3399 Android 7.1 遇到的错误及解决方法 Haproxy搭配NPS内网穿透,获取客户端的源IP Android widget - 直播右下角点击刷礼物特效 留言板 ubuntu 更改boot分区格式,重建引导 服务器为什么大多用Linux 系统?
分类
  • Android
  • Linux
  • NAS
  • Spring Boot
  • Windows
  • 内网穿透
  • 回忆
  • 基于NEAT的瞎几把寻思算法笔记
  • 散篇
  • 普通人的致富之路在哪里
  • 服务器
  • 未分类
  • 私有云
标签聚合
Android系统编译 Android Widgets 散篇 我开源的APP 安全维护 ubuntu NPS NAS 服务器 群晖NAS linux Android Utils TrueNAS 私有云 Spring Boot Nextcloud Windows 内网穿透
工具/友链

资源导航 – NAS、私有云存储
在线工具 – MD5、SHA、BASE64、URL编解码
在线工具 – 贷款计算器
在线工具 – IPv4/IPv6地址查询

千古八方 在 B站

千古八方 在 知乎

我的微信小程序:
微信小程序-城市生活成本查询
城市生活成本查询
库房物资流水记账簿
最近评论
Avatar photo
千古八方 发布于 1 个月前(12月28日) 重置命令是Nextcloud提供的,和哪个平台没关系。 如果报错,一般是路径或权限的问题导致的。 ...
Avatar photo
aron 发布于 1 个月前(12月24日) 博主你好 我的nextcloud管理员密码过期了 用了occ命令重置但是报错,能请教下是什么原因...
Avatar photo
千古八方 发布于 2 个月前(12月15日) 贝塞尔这个类在这里 https://gitee.com/aityu/AndroidUtils/blo...
Avatar photo
disco 发布于 2 个月前(12月05日) 有demo链接吗?贝塞尔曲线这个关键类没有写出来~
Avatar photo
HJM 发布于 3 个月前(10月20日) 必须点赞!很有效!

COPYRIGHT © 2022 千古八方的博客. ALL RIGHTS RESERVED.

京ICP备14020471号