全志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. ...
随机推荐
- Elasticsearch分布式安装启动失败
配置config目录下的 elasticsearch.yml http.cors.enabled: true http.cors.allow-origin: "*" #分布安装. ...
- set STL 简单说说
set 这个容器,可以排序,以及去掉重复的东西 #include<bits/stdc++.h> using namespace std; int main() { string s; se ...
- POJ2142:The Balance (欧几里得+不等式)
Ms. Iyo Kiffa-Australis has a balance and only two kinds of weights to measure a dose of medicine. F ...
- Barn Repair
链接 分析:我们不断统计相邻两个元素之间的差值,按照差值从大到小排序,在进行贪心即可 /* PROB:barn1 ID:wanghan LANG:C++ */ #include "iostr ...
- Unreachable code
Unreachable code 错误 不可达代码,比如在循环的break或者return后面的代码就是不可达代码,因为在执行它们之前就已经跳出方法了,只要把这段代码移到break或者return之前 ...
- wcf中事务的操作
using System; using System.ServiceModel; namespace Larryle.Wcf.ServiceContract.Transaction { [Servic ...
- Bid和Ask
一直很懵到底哪个是哪个,记吧,很快就又懵了.网上又坑,每一个解释清楚的.这次搞明白了记下来. 当然,这么逗比的取名法我也是醉了.直接加点东西,UserBuy,UserSell,BankBuy,Bank ...
- 洛谷 - P1361 - 小M的作物 - 最小割 - 最大权闭合子图
第一次做最小割,不是很理解. https://www.luogu.org/problemnew/show/P1361 要把东西分进两类里,好像可以应用最小割的模板,其中一类A作为源点,另一类B作为汇点 ...
- Mac下的常用终端命令与vim常用命令
因为很少用命令行,老被鄙视,所以今天记录一下常用的命令行: cd 切换工作目录 . 表示当前目录 .. 表示当前目录的上一级目录 / 根目录/目录分隔符 ./ 当前目录 ../ 回到上一级目录 ls ...
- hdoj1260【简单DP】
这题就是一个人买还是两个人买,直接选择一下,而且默认是排好了的,就是DP一下,可能不知道DP的人,也是这么写的吧.DP是一种思想啊. #include <bits/stdc++.h> us ...