如果在Android中对GPIO PIN进行控制?

挑灯夜读凿壁偷光 2024-05-30 17:01:51

如果在Android中对GPIO PIN进行控制?

...全文
1287 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38498942 2024-05-31
  • 打赏
  • 举报
回复

使用命令行操作, 将GPIO获取到,现在以QCS8250, 需要控制gpio99为例子:

adb root
adb shell
mount -t debugfs debugfs /sys/kernel/debug
cat /sys/kernel/debug/gpio | grep gpiochip
gpiochip5: GPIOs 1058-1071, parent: platform/soc:qcom,msm-audio-apr:qcom,q6core-audio:lpi_pinctrl@33c0000, soc:qcom,msm-audio-apr:qcom,q6core-audio:lpi_pinctrl@33c0000:
gpiochip4: GPIOs 1072-1075, parent: platform/c440000.qcom,spmi:qcom,pm8009@a:pinctrl@c000, c440000.qcom,spmi:qcom,pm8009@a:pinctrl@c000:
gpiochip3: GPIOs 1076-1084, parent: platform/c440000.qcom,spmi:qcom,pm8150l@4:pinctrl@c000, c440000.qcom,spmi:qcom,pm8150l@4:pinctrl@c000:
gpiochip2: GPIOs 1085-1093, parent: platform/c440000.qcom,spmi:qcom,pm8150b@2:pinctrl@c000, c440000.qcom,spmi:qcom,pm8150b@2:pinctrl@c000:
gpiochip1: GPIOs 1094-1099, parent: platform/c440000.qcom,spmi:qcom,pm8150@0:pinctrl@c000, c440000.qcom,spmi:qcom,pm8150@0:pinctrl@c000:
gpiochip0: GPIOs 1100-1279, parent: platform/f000000.pinctrl, f000000.pinctrl:

我们可以看到这个主控的180个gpio偏移是1100, 所以我们就去在申请gpio的时候, 导入这个offset, 99+1100 = 1199, 就可以申请到这个gpio了, 并且可以在上层直接控制:

echo 1199 > /sys/class/gpio/export            
echo out > /sys/class/gpio/gpio1199/direction 
echo 1 > /sys/class/gpio/gpio1199/value       
cat /sys/class/gpio/gpio1199/value
1
echo 0 > /sys/class/gpio/gpio1199/value       
cat /sys/class/gpio/gpio1199/value   
0         

3,303

社区成员

发帖
与我相关
我的任务
社区描述
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
人工智能物联网机器学习 技术论坛(原bbs) 北京·东城区
社区管理员
  • csdnsqst0050
  • chipseeker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧