全志R58平台的GPIO引脚控制
全志R58平台的GPIO引脚控制
2017/8/18 15:50
版本:V1.0
开发板:SC5806(全志R58平台)
SDK:android4.4.4
本文以GPIO引脚PD24为例,在开发板的背面。J18座子上,+5V旁边(可以用这个引脚来定位!)。
rootroot@cm-System-Product-Name:/home/wwt/vxiaoyu_s5k5eya/lichee/linux-3.4$ make ARCH=arm menuconfig
Device Drivers --->
-*- GPIO Support --->
[ ] /sys/class/gpio/... (sysfs interface)
修改为:
[*] /sys/class/gpio/... (sysfs interface)
rootroot@cm-System-Product-Name:/home/wwt/vxiaoyu_s5k5eya/lichee$ find . -name gpio.h
./linux-3.4/arch/arm/mach-sunxi/include/mach/gpio.h
W:\xiaoyu_s5k5eya\lichee\linux-3.4\arch\arm\mach-sunxi\include\mach\gpio.h
得知GPIO号:
#define SUNXI_PINCTRL "sunxi-pinctrl"
#define SUNXI_BANK_SIZE 32
#define SUNXI_PA_BASE 0
#define SUNXI_PB_BASE 32
#define SUNXI_PC_BASE 64
#define SUNXI_PD_BASE 96
#define SUNXI_PE_BASE 128
#define SUNXI_PF_BASE 160
#define SUNXI_PG_BASE 192
#define SUNXI_PH_BASE 224
#define SUNXI_PI_BASE 256
#define SUNXI_PJ_BASE 288
#define SUNXI_PK_BASE 320
#define SUNXI_PL_BASE 352
#define SUNXI_PM_BASE 384
#define SUNXI_PN_BASE 416
#define SUNXI_PO_BASE 448
#define AXP_PIN_BASE 1024
PD24的GPIO引脚号为:
96+24=120
在串口终端中的调试方法:
shell@octopus-f1:/ $
shell@octopus-f1:/ $ cd /sys/class/gpio/
shell@octopus-f1:/sys/class/gpio $ ll
--w------- root root 4096 1970-01-01 09:01 export
lrwxrwxrwx root root 1970-01-01 09:01 gpiochip0 -> ../../devices/platform/sunxi-pinctrl/gpio/gpiochip0
lrwxrwxrwx root root 1970-01-01 09:01 gpiochip1024 -> ../../devices/platform/axp-pinctrl/gpio/gpiochip1024
--w------- root root 4096 1970-01-01 09:01 unexport
shell@octopus-f1:/sys/class/gpio $
shell@octopus-f1:/sys/class/gpio $
(必须su权限:)
shell@octopus-sc5806:/sys/class/gpio $
shell@octopus-sc5806:/sys/class/gpio $ echo 120 > export
/system/bin/sh: can't create export: Permission denied
1|shell@octopus-sc5806:/sys/class/gpio $
1|shell@octopus-sc5806:/sys/class/gpio $ su
shell@octopus-sc5806:/sys/class/gpio #
shell@octopus-sc5806:/sys/class/gpio #
shell@octopus-sc5806:/sys/class/gpio # echo 120 > export
shell@octopus-sc5806:/sys/class/gpio # ll
--w------- root root 4096 1970-01-02 09:13 export
lrwxrwxrwx root root 1970-01-02 09:13 gpio120 -> ../../devices/platform/sunxi-pinctrl/gpio/gpio120
lrwxrwxrwx root root 1970-01-02 09:11 gpiochip0 -> ../../devices/platform/sunxi-pinctrl/gpio/gpiochip0
lrwxrwxrwx root root 1970-01-02 09:11 gpiochip1024 -> ../../devices/platform/axp-pinctrl/gpio/gpiochip1024
--w------- root root 4096 1970-01-02 09:11 unexport
shell@octopus-sc5806:/sys/class/gpio #
切换到DP24的目录:
shell@octopus-sc5806:/sys/class/gpio # cd gpio120/
shell@octopus-sc5806:/sys/class/gpio/gpio120 # ll
-rw-r--r-- root root 4096 1970-01-02 09:14 active_low
lrwxrwxrwx root root 1970-01-02 09:14 device -> ../../../sunxi-pinctrl
-rw-r--r-- root root 4096 1970-01-02 09:14 direction
drwxr-xr-x root root 1970-01-02 09:14 power
lrwxrwxrwx root root 1970-01-02 09:14 subsystem -> ../../../../../class/gpio
-rw-r--r-- root root 4096 1970-01-02 09:14 uevent
-rw-r--r-- root root 4096 1970-01-02 09:14 value
shell@octopus-sc5806:/sys/class/gpio/gpio120 #
shell@octopus-sc5806:/sys/class/gpio/gpio120 # cat direction
in
shell@octopus-sc5806:/sys/class/gpio/gpio120 # echo out > direction
shell@octopus-sc5806:/sys/class/gpio/gpio120 #
shell@octopus-sc5806:/sys/class/gpio/gpio120 #
shell@octopus-sc5806:/sys/class/gpio/gpio120 # cat direction
out
shell@octopus-sc5806:/sys/class/gpio/gpio120 #
shell@octopus-sc5806:/sys/class/gpio/gpio120 #
shell@octopus-sc5806:/sys/class/gpio/gpio120 # cat value
0
shell@octopus-sc5806:/sys/class/gpio/gpio120 #
shell@octopus-sc5806:/sys/class/gpio/gpio120 # echo 1 > value
shell@octopus-sc5806:/sys/class/gpio/gpio120 #
shell@octopus-sc5806:/sys/class/gpio/gpio120 # cat value
1
shell@octopus-sc5806:/sys/class/gpio/gpio120 #
万用表测得DP24为2.974V(高)
shell@octopus-sc5806:/sys/class/gpio/gpio120 # cat value
1
shell@octopus-sc5806:/sys/class/gpio/gpio120 # echo 0 > value
shell@octopus-sc5806:/sys/class/gpio/gpio120 # cat value
0
shell@octopus-sc5806:/sys/class/gpio/gpio120 #
万用表测得DP24为0.000V(低)
全志R58平台的GPIO引脚控制的更多相关文章
- 31全志r58平台Android4.4.2下打开USB摄像头
31全志r58平台Android4.4.2下打开USB摄像头 2018/10/26 16:00 版本:V1.0 开发板:SC5806 1.系统编译:(略) 2.需要修改的文件: W:\r58_andr ...
- 02全志r58平台Android4.4.4下关闭内核中的CPU的开启关闭提示
02全志r58平台Android4.4.4下关闭内核中的CPU的开启关闭提示 2017/8/18 13:53 版本:V1.0 开发板:SC5806(全志R58平台) SDK:android4.4.4 ...
- 51全志R58平台Android4.4下Camera的HAL层修改
51全志R58平台Android4.4下Camera的HAL层修改 2018/11/7 15:20 版本:V1.0 开发板:SC5806 1.系统编译: (略) 2.全志R58平台Android4.4 ...
- 04全志R58平台编译内核需要选择的配置
04全志R58平台编译内核需要选择的配置 2018/11/6 14:19 版本:V1.0 开发板:SC5806 1.系统编译:(略) 每次系统编译/内核的时候都需要选3次N: * * Xtables ...
- 全志R58平台调通s5k5eya(RAW+MIPI)
全志R58平台调通s5k5eya(RAW+MIPI) 2017/5/31 10:30 版本:V1.1 1.前期使用的是s5k5eyx的ISP的固件/tuning 文件 Y:\s5k5eya_r58_d ...
- GPIO引脚操作
Kernel: 4.4 Soc: msm8996 1.用户空间通过sysfs操作GPIO (1)启用GPIO sysfs interface 首先看系统中有没有“/sys/class/gpio”这个文 ...
- linux下对/sys/class/gpio中的gpio的控制 (转)
在嵌入式设备中对GPIO的操作是最基本的操作.一般的做法是写一个单独驱动程序,网上大多数的例子都是这样的.其实linux下面有一个通用的GPIO操作接口,那就是我要介绍的 “/sys/clas ...
- 21全志r58m平台的framework在使用过程中会莫名的崩溃掉
21全志r58m平台的framework在使用过程中会莫名的崩溃掉 2018/10/25 16:20 版本:V1.0 开发板:SC5806 1.系统编译: rootroot@cm88:/home/ww ...
- 461在全志r16平台tinav3.0系统下使用地磁计QMC5883L
461在全志r16平台tinav3.0系统下使用地磁计QMC5883L 2018/9/7 14:08 版本:V1.0 开发板:SC3817R SDK:tina v3.0 (基本确认全志tina v3. ...
随机推荐
- NSError分析
在iOS开发中,NSError的使用非常常见,使用也比较简单,也正因为简单,所以对这一部分知识不甚注重.但是近期在做app底层网络封装时发现了一些问题.我使用的网络框架是AFNetworking,AF ...
- 【Codeforces 757B】 Bash's big day
[题目链接] 点击打开链接 [算法] 若gcd(s1,s2,s3....sk) > 1, 则说明 : 一定存在一个整数d满足d|s1,d|s2,d|s3....,d|sk 因为我们要使|s|尽可 ...
- AJAX路径问题
如果发AJAX请求,看发送请求消息的路径,如果看到报404的错,而这个 时候看下发送头部的路径,如果看到%20,这个时候有可能就是写路劲的时候,不小心按了一个空格
- bzoj 4289 TAX —— 点边转化
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4289 把边转化成点,同一个原有点相连的边中,边权小的向大的连差值的边,大的向小的连0的边: ...
- 打印斐波那契(Fibonacci)数列
需求:打印 Fibonacci数列 思路: 当前项的值等于前两项数值的和 F=(F-1)+F(F-2) 样例: 输入:10 输出:1 1 2 3 5 8 13 21 34 55 辗转相加法实现 #in ...
- Struts2中的FilterDispatcher和StrutsPrepareAndExecuteFilter的区别
1.转自:https://blog.csdn.net/zwx521515/article/details/79300453 在Struts2开发中,很多人问到,声明过滤器的时候,为什么有的时候用&qu ...
- thinkpad开机引导方式变成PCI LAN选项解决
问题:开机的引导方式变成[PCI LAN],并且前面有一个小箭头,无法正常启动加载.在BIOS中重置调整启动顺序也无法解决.无法进入U盘启动盘 1.首先开机按F12进入BIOS,选择 APP Menu ...
- django基础知识
一.django的安装 1. pip3 install django 2. 把安装路径加到环境变量里以便以后启动admin相关命令,在windows系统中---我的电脑---属性----高级系统设置- ...
- bzoj 1385: [Baltic2000]Division expression【脑洞】
加括号再去括号就是除变加,显然尽可能多的除变加是最优的,然后发现唯一不能变成乘数的是第二个数,所以把其他数乘起来mod第二个数,如果是0就是YES,否则说明最后不能除尽,就是NO #include&l ...
- bzoj 3173: [Tjoi2013]最长上升子序列【dp+线段树】
我也不知道为什么把题看成以插入点为结尾的最长生生子序列--还WA了好几次 先把这个序列最后的样子求出来,具体就是倒着做,用线段树维护点数,最开始所有点都是1,然后线段树上二分找到当前数的位置,把这个点 ...