欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > Android >内容正文

Android

gpio驱动广播Android,[RK3288][Android6.0] 调试笔记 --- 通用GPIO驱动控制LED【转】

发布时间:2024/9/27 Android 42 豆豆
生活随笔 收集整理的这篇文章主要介绍了 gpio驱动广播Android,[RK3288][Android6.0] 调试笔记 --- 通用GPIO驱动控制LED【转】 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Platform: ROCKCHIP

OS: Android 6.0

Kernel: 3.10.92

由于板子没有lcd无法得知sd卡升级是否完成,因此使用LED显示.

Recovery中升级完成后控制GPIO输出高电平点亮LED.

系统自带GPIO控制驱动:

内核已经自带了通用GPIO驱动,可以直接在用户空间操作.

路径: /sys/class/gpio

root@rk3288:/sys/class/gpio # ls

export

gpiochip0

gpiochip120

gpiochip152

gpiochip184

gpiochip216

gpiochip24

gpiochip248

gpiochip280

gpiochip56

gpiochip88

unexport

比如我要操作GPIO8_A6作为高电平输出有效, 那么有以下问题:

1. 对应的gpio number是多少呢?

2. 如何设置成输出

3. 如何输出高电平

问题1:

可以通过/sys/kernel/debug/gpio查询信息:

root@rk3288:/sys/kernel/debug # cat gpio

//snip

GPIOs 184-215, platform/ff770000.pinctrl, gpio6:

gpio-193 (?                   ) in  hi

gpio-194 (?                   ) in  hi

GPIOs 216-247, platform/ff770000.pinctrl, gpio7:

gpio-218 (enable              ) out hi

gpio-219 (lcd_en              ) in  hi

gpio-220 (lcd_cs              ) in  hi

gpio-221 (gslX680 wake pin    ) out hi

gpio-222 (gslX680 irq pin     ) out lo

gpio-223 (headset_gpio        ) in  hi

gpio-233 (?                   ) in  hi

gpio-234 (?                   ) in  hi

GPIOs 248-279, platform/ff770000.pinctrl, gpio8:

GPIOs 280-311, platform/ff770000.pinctrl, gpio15:

可以看到gpio8是以nubmer为248开始, 那么GPIO8_A6就是 248 + 6 = 254

接下来就可以导出gpio了

root@rk3288:/sys/class/gpio # echo 254 > export

root@rk3288:/sys/class/gpio # ls

export

gpio254

......

问题2

root@rk3288:/sys/class/gpio/gpio254 # echo out > direction

root@rk3288:/sys/class/gpio/gpio254 # cat direction

out

问题3:

root@rk3288:/sys/class/gpio/gpio254 # echo 1 > value

root@rk3288:/sys/class/gpio/gpio254 # cat value

1

解决方法:

init.rc

[kris@:~/rk3288/device/rockchip/common/recovery/etc]$ g df

diff --git a/recovery/etc/init.rc b/recovery/etc/init.rc

index efe2a5d..75d7554 100755

--- a/recovery/etc/init.rc

+++ b/recovery/etc/init.rc

@@ -85,6 +85,12 @@ on late-init

on property:sys.powerctl=*

powerctl ${sys.powerctl}

+#Kris, 170407, GPIO8_A6 -> gpio254, used to inform sd upgrade complete.

+on property:sdupgrade.complete=true

+       write /sys/class/gpio/export 254

+       write /sys/class/gpio/gpio254/direction out

+       write /sys/class/gpio/gpio254/value 1

+

service ueventd /sbin/ueventd

critical

seclabel u:r:ueventd:s0

recovery.cpp

[kris@:~/rk3288/bootable/recovery]$ g df

diff --git a/recovery.cpp b/recovery.cpp

index 8299672..a0edc15 100755

--- a/recovery.cpp

+++ b/recovery.cpp

@@ -2285,6 +2285,10 @@ HANDLE_STATUS :

strcat(kernellogPath, "/kernel.txt");

save_kernel_log(kernellogPath);

#endif

+

+       //Kris, 170407, light led on after sd upgrade complete.

+       property_set("sdupgrade.complete", "true");

+

if (bSDMounted)

checkSDRemoved();

参考:

http://blog.csdn.net/cjsycyl/article/details/46310939

[RK3288][Android6.0] 调试笔记 --- Goodix GT9和GT9F区别【转】

本文转载自:http://blog.csdn.net/kris_fei/article/details/78341425 Platform: RK3288 OS: Android 6.0 Kernel ...

[RK3288][Android6.0] 调试笔记 --- 测试I2C设备正常传输方法【转】

本文转载自:http://blog.csdn.net/kris_fei/article/details/71515020 Platform: RockchipOS: Android 6.0Kernel ...

[RK3288][Android6.0] 调试笔记 --- 普通串口的添加 【转】

本文转载自:http://blog.csdn.net/kris_fei/article/details/54574073   标签: rk3288 串口添加 2017-01-16 14:52 1079 ...

[RK3288][Android6.0] 调试笔记 --- eMMC分区号和名字的对应【转】

本文转载自:http://blog.csdn.net/kris_fei/article/details/77318410 Platform: Rockchip OS: Android 6.0 Kern ...

[RK3288][Android6.0] 调试笔记 --- 替换系统签名【转】

本文转载自:http://blog.csdn.net/kris_fei/article/details/55100299 Platform: RK3288OS: Android 6.0Kernel: ...

[RK3288][Android6.0] 调试笔记 --- 软硬键盘同时使用【转】

本文转载自:http://blog.csdn.net/kris_fei/article/details/78748313 Platform: RK3288 OS: Android 6.0 Kernel ...

[RK3288][Android6.0] 调试笔记 --- 系统识别不同硬件版本方法【转】

本文转载自:http://m.blog.csdn.net/kris_fei/article/details/70226451 Platform: RockchipOS: Android 6.0Kern ...

[RK3288][Android6.0] 调试笔记 --- pmu(rk818)寄存器读写【转】

本文转载自:http://blog.csdn.net/kris_fei/article/details/76919134 Platform: Rockchip OS: Android 6.0 Kern ...

RK3288][Android6.0] 调试笔记 --- 关闭按键音后无法录音问题【转】

本文转载自:http://blog.csdn.net/kris_fei/article/details/70052413 Platform: ROCKCHIPOS: Android 6.0Kernel ...

随机推荐

[LeetCode] Closest Binary Search Tree Value II 最近的二分搜索树的值之二

Given a non-empty binary search tree and a target value, find k values in the BST that are closest t ...

C 标准库系列之ctype.h

ctype.h 主要提供了一些函数用以测试字符或字符处理的功能函数:包括字符判断检测.字符转换: 目前ASCII字符可分为以下一些类型,如:大写.小写.字母.数字.十六进制.空白字符.可打印字符.控制 ...

wp8.1 Study6: App的生命周期管理

一.概述 应用程序的生命周期详解可以参照Windows8.1开发中msdn文档http://msdn.microsoft.com/library/windows/apps/hh464925.aspx ...

转--android Toast大全(五种情形)建立属于你自己的Toast

Toast用于向用户显示一些帮助/提示.下面我做了5中效果,来说明Toast的强大,定义一个属于你自己的Toast. 1.默认效果 代码 Toast.makeText(getApplicationCo ...

Ubuntu系统下安装python2.7

第一步:下载python2.7相关版本源码(例如:Python-2.7.4.tgz) 第二步:安装 1) 解压 $tar zxvf Python-2.7.4.tar.tgz 2)进入文件夹: $cd ...

Java安全防御学习笔记V1.0

Java安全防御学习笔记V1.0http://www.docin.com/p-766808938.html

django学习——url的name

html中的地址可以用写死的,也可以用生成的,如:link

linux学习问题总结

目录 一.环境变量和普通变量的区别 二.rsyslog和logrotate会不会丢记录的问题 三.为什么有些文件夹大小不是4096的整数倍 四.reboot和shutdown等软链接实现原理 五.sy ...

如何用jQuery获得select的值

如何用jQuery获得select的值,在网上找了看了一下,下面将总结一下: 1.获取第一个option的值        $('#test option:first').val(); 2.最后一个o ...

qq互联php版本

https://zhidao.baidu.com/question/1495432442326804379.html qq互联php版本 http://www.jb51.net/article/104 ...

总结

以上是生活随笔为你收集整理的gpio驱动广播Android,[RK3288][Android6.0] 调试笔记 --- 通用GPIO驱动控制LED【转】的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。