gpio rk3399 控制_视壮嵌入式板卡rk3399 kernel通用GPIO驱动控制

视壮嵌入式板卡rk3399 kernel通用GPIO驱动控制

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

路径: /sys/class/gpio

rk3399_mid:/ $ ls /sys/class/gpio

export gpiochip1032 gpiochip1096 unexport

gpiochip1000 gpiochip1064 gpiochip1128

操作GPIO0_A6作为高电平输出有效, 操作步骤:

1. 计算对应的gpio number的值

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

rk3399_mid:/ $ 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

2. 设置该gpio为输出

rk3399_mid:/ $ cd /sys/class/gpio/

rk3399_mid:/sys/class/gpio $ echo 1006 > export

/system/bin/sh: can't create export: Permission denied

1|rk3399_mid:/sys/class/gpio $ su

rk3399_mid:/sys/class/gpio # echo 1006 > export

rk3399_mid:/sys/class/gpio # ls

export gpiochip1000 gpiochip1064 gpiochip1128

gpio1006 gpiochip1032 gpiochip1096 unexport

rk3399_mid:/sys/class/gpio # cd gpio1006/

rk3399_mid:/sys/class/gpio/gpio1006 # echo out > direction

3. 设置该gpio输出高电平

rk3399_mid:/sys/class/gpio/gpio1006 # echo 1 > value

rk3399_mid:/sys/class/gpio/gpio1006 # cat value

1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值