Android系统 GPIO状态查询
GPIO口状态查询
定制的上位机(Android系统) 外接的传感器,需要使用距离感应器功能,定位问题原因,采用分段调试:
先查看上位机板子是否可以正常返回距离感应的状态
检查传输线
检查感应头是否正常
我这里是第一步的问题,线和感应头都正常,所以先说一下如何来返回正常的感应状态
距离传感器在检测到距离变化或者物体靠近时候会有高低电压的变化,并将信息通过数据线传输到上位机,adb shell 命令来进入到上位机,查看gpio口的状态变化
C:\Users\Administrator>adb shell
rk3399_mid:/ $ su
rk3399_mid:/ # cd sys/class/gpio
rk3399_mid:/sys/class/gpio # ls -al
total 0
drwxr-xr-x 2 root root 0 2013-01-18 16:54 .
drwxr-xr-x 73 root root 0 2013-01-18 16:54 ..
--w------- 1 root root 4096 2013-01-18 17:27 export
lrwxrwxrwx 1 root root 0 2013-01-18 17:28 gpio1058 -> ../../devices/platform/pinctrl/gpio/gpio1058
lrwxrwxrwx 1 root root 0 2013-01-18 17:14 gpio1069 -> ../../devices/platform/pinctrl/gpio/gpio1069
lrwxrwxrwx 1 root root 0 2013-01-18 16:55 gpio1154 -> ../../devices/platform/pinctrl/gpio/gpio1154
lrwxrwxrwx 1 root root 0 2013-01-18 17:14 gpiochip1000 -> ../../devices/platform/pinctrl/gpio/gpiochip1000
lrwxrwxrwx 1 root root 0 2013-01-18 17:14 gpiochip1032 -> ../../devices/platform/pinctrl/gpio/gpiochip1032
lrwxrwxrwx 1 root root 0 2013-01-18 17:14 gpiochip1064 -> ../../devices/platform/pinctrl/gpio/gpiochip1064
lrwxrwxrwx 1 root root 0 2013-01-18 17:14 gpiochip1096 -> ../../devices/platform/pinctrl/gpio/gpiochip1096
lrwxrwxrwx 1 root root 0 2013-01-18 17:14 gpiochip1128 -> ../../devices/platform/pinctrl/gpio/gpiochip1128
--w------- 1 root root 4096 2013-01-18 17:14 unexport
以上命令 查看所有gpio口的信息
格式化显示信息:
rk3399_mid:/sys/class/gpio # cat /d/gpio
rk3399_mid:/sys/class/gpio # cat /d/gpio
GPIOs 1000-1031, platform/pinctrl, gpio0:gpio-1001 ( |WK_iqr_int ) in higpio-1004 ( |bt_default_wake_host) in logpio-1005 ( |power ) in higpio-1008 ( |enable ) out higpio-1009 ( |bt_default_reset ) out logpio-1010 ( |reset ) out higpio-1011 ( |? ) out higpio-1012 ( |? ) out loGPIOs 1032-1063, platform/pinctrl, gpio1:gpio-1034 ( |reset ) out higpio-1042 ( |WK_cs_int ) out higpio-1045 ( |enable ) out logpio-1046 ( |vsel ) out logpio-1049 ( |vsel ) out logpio-1058 ( |sysfs ) in loGPIOs 1064-1095, platform/pinctrl, gpio2:*gpio-1068 ( |gpio_radar ) in hi*gpio-1069 ( |pic_int ) in higpio-1083 ( |bt_default_rts ) in higpio-1090 ( |bt_default_wake ) in hiGPIOs 1096-1127, platform/pinctrl, gpio3:gpio-1112 ( |mdio-reset ) out hiGPIOs 1128-1159, platform/pinctrl, gpio4:gpio-1153 ( |vcc5v0_host ) out higpio-1154 ( |ex_enable ) out logpio-1155 ( |enable ) out hi
其中 gpio-1068 ( |gpio_radar ) in hi
就是定制的上位机板子所用的距离传感器的命名 这里显示的hi 即为高电压状态,然后感应头的 地线与a4(我们用的是A4脚)短接 ,短接以后再次查询以上命令
gpio-1068 ( |gpio_radar ) in lo
此时 就显示的是低电量 说明板子本身没有问题,项目中用普通的传感器api调用即可
原文地址:https://blog.csdn.net/qq_15110579/article/details/82760991?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromBaidu-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromBaidu-1.control
在使用GPIO的时候,有时候不知道GPIO的状态,也不知道在内核中GPIO是否申请成功。
可以通过/sys/kernel/debug/gpio这个文件来查看。这个文件显示了申请成功的GPIO的输入输出状态和电平。
参考
http://elinux.org/GPIO
https://developer.ridgerun.com/wiki/index.php/How_to_use_GPIO_signals
配置
内核打开debugfs支持
Symbol: DEBUG_FS [=y]Prompt: Debug FilesystemDefined at lib/Kconfig.debug:77Depends on: SYSFS Location:-> Kernel configuration-> Kernel hacking
挂载debugfs
mount -t debugfs none /sys/kernel/debug
测试
root@android:/data # cat /sys/kernel/debug/gpio
GPIOs 0-31, gpio-0:gpio-0 (ESDHC_CD ) in logpio-4 (btn volume-up ) in higpio-5 (btn volume-down ) in higpio-22 (AD7606_STBY ) out logpio-31 (AD7606_CONVST ) out loGPIOs 32-63, gpio-1:gpio-58 (spi_imx ) out logpio-59 (spi_imx ) in logpio-60 (sysfs ) out loGPIOs 64-95, gpio-2:gpio-83 (sensor pwr en ) out logpio-86 (usb-pwr ) out logpio-93 (btn power-key ) in hiGPIOs 96-127, gpio-3:gpio-102 (matrix_kbd_col ) out logpio-103 (matrix_kbd_row ) in higpio-104 (matrix_kbd_col ) out logpio-105 (matrix_kbd_row ) in higpio-106 (matrix_kbd_col ) out logpio-107 (matrix_kbd_row ) in higpio-108 (matrix_kbd_col ) out logpio-109 (matrix_kbd_row ) in higpio-110 (scl ) in higpio-111 (sda ) in hiGPIOs 128-159, gpio-4:GPIOs 160-191, gpio-5:gpio-167 (AD7606_OS1 ) out logpio-168 (AD7606_OS0 ) out logpio-169 (AD7606_OS2 ) out logpio-170 (AD7606_RESET ) out logpio-175 (cabc-en0 ) out logpio-176 (cabc-en1 ) out loGPIOs 192-223, gpio-6:gpio-192 (usb-h1-pwr ) out logpio-205 (pFUZE-int ) in hi
Android系统 GPIO状态查询相关推荐
- Android DownloadManager下载状态查询(2)
Android DownloadManager下载状态查询(2) 在我写的前一篇文章中, <Android大数据.断点续传.耗时下载之DownloadManager开发简介(1)> ...
- android 查看gpio状态_iTOP-iMX6开发板-GPIO读写配置文档_V1.0《2》
本文档主要介绍 iMX6 板子 gpio 引脚读写配置.有关平台文件的设备注册的资料可以参 考"iTOP-iMX6-平台文件注册设备"文档.注册的设备名称是"gpio_c ...
- android 查看gpio状态_android gpio 调试
android gpio 调试 gpio_chip gpio 端口控制芯片 gpio 端口:系统全局的gpio号 gpio口dts配置qcom,msm-ear-hac-pa = ;这里的msm_gpi ...
- android 查看gpio状态_GPIO子系统重要概念
来源:百问网 作者:韦东山 本文字数:3161,阅读时长:5分钟 1.1 引入 要操作GPIO引脚,先把所用引脚配置为GPIO功能,这通过Pinctrl子系统来实现. 然后就可以根据设置引脚方向(输入 ...
- Android系统APK操作GPIO读写及添加权限
需求描述 上层APK操作GPIO的diretction.value节点,实现点亮和熄灭灯,使用JNI方式,使用以下方式无效 extern "C" JNIEXPORT jint JN ...
- Android系统中的屏幕状态切换以及亮度设置
Android系统的状态包括wake.earlysuspend以及suspend状态,其使用锁和定时器来进行状态的切换. 而在wake状态,屏幕首先是调至设定的亮度,如果没有其他动作,当经过一段时间后 ...
- Android的公交线路查询系统
基于Android的公交线路查询系统的设计与实现 emmmm 本系统带程序说明书 有需要的可以去我上传的资源里面找,找不到的话,评论我,或者站内私信留下邮箱, 我看到机会给你发,也可以主动联系我博 ...
- 2021年四川高考成绩及录取结果查询,2021年四川高考录取状态查询系统,录取结果什么时候出来公布...
现阶段正是四川高考录取阶段,2018年四川高考已经走过最重要的两大步--考试和志愿填报.令考生和家长最激动的时刻--录取查询即将到来.那么,面对自己完全不了解的录取状态,很多人却又一头雾水.不知已经进 ...
- android流程点击开机键熄屏,一种基于android系统的灭屏状态下指纹解锁加速亮屏方法与流程...
本发明涉及android系统解锁显示方法,尤其涉及一种基于android系统的灭屏状态下指纹解锁加速亮屏方法. 背景技术: 目前,随着指纹技术越来越普及,很多android系统设备都带有指纹外设,特别 ...
- 基于Android的app公交查询论文,基于Android平台的公交查询系统的设计与实现.doc
摘要:本系统是在Android开发平台上,基于百度地图API实现的.解决的问题是随着城市的不断扩增,所导致的盐城市公交信息不能有效分享的情况.现在人们出行时的选择越来越多,但是公交仍然是大部分市民的首 ...
最新文章
- MyBatis框架使用(一)
- Redis 的机制为什么不会产生 ABA 问题
- 广义的B端产品人,都是什么职位?
- 参考灵敏度_美信MAXREFDES103评测:集成算法处理的高灵敏度健康传感器腕带参考设计方案...
- hive集成spark和mysql
- Jquery技巧:使用ajax技术提交表单数据
- 中柏平板电脑安linux,中柏平板电脑重装系统
- CSS-返回顶部代码
- 2019年软考程序员考试大纲
- matlab2010b支持svmlib
- 怎样设计访谈提纲_如何设计调查问卷与访谈提纲要点分析.ppt
- 计算机表格数字怎么,电脑表格数字打不出来
- 单片机外部中断详解及程序
- Word 重复引用同一个脚注
- python从0到1_python从0到1--9 函数
- LeetCode714_买卖股票的最佳时机含手续费
- 基于C语言实现离散时域积分算法
- 中国移动,联通,电信
- layui xm-select的使用
- 新手自主创业需要注意哪些误区?