当前位置: 首页 > web >正文

RK3568驱动指南|第十二篇 GPIO子系统-第130章 GPIO的调试方法

瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工艺,搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码,支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU,可用于轻量级人工智能应用。RK3568 支持安卓 11 和 linux 系统,主要面向物联网网关、NVR 存储、工控平板、工业检测、工控盒、卡拉 OK、云终端、车载中控等行业。

迅为RK3568开发板瑞芯微Linux安卓鸿蒙ARM核心板人工智能AI主板

第130章 GPIO的调试方法

GPIO的调试方法除了使用IO命令去查看寄存器,还可以使用其他方法进行GPIO的调试。

130.1 方法一

debugfs是Linux内核提供的一个调试文件系统,可以用于查看和调试内核中的各种信息,包括GPIO的使用情况。通过挂载debugfs文件系统,并查看/sys/kernel/debug/目录下的相关文件,可以获取GPIO的状态,配置和其他调试信息。如下图所示,我们进入/sys/kernel/debug/目录下。

图130-1

如果上图目录/sys/kernel/debug目录下没有文件,需要在Linux内核源码配置debugfs,如下图所示:

图130-2

配置好之后,重新编译内核源码,烧写内核镜像。

如果没有debugfs,可以使用以下命令进行挂载:

mount -t debugfs none /sys/kernel/debug/

如果有debugfs,可以使用以下命令查看GPIO的信息。

cat /sys/kernel/debug/gpio

图130-3

130.2 方法二

当你进入/sys/kernel/debug/pinctrl目录时,你可以获取有关GPIO控制器的调试信息。在该目录下,通常会有以下文件和目录:

1. /sys/kernel/debug/pinctrl/*/pinmux-pins:这些文件列出了每个GPIO引脚的引脚复用配置。你可以查看每个引脚的功能模式、引脚复用选择以及其他相关的配置信息。我们进入到/sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl/下面,输入“cat pinmux-pins”,如下图所示:

图130-4

2. /sys/kernel/debug/pinctrl/*/pins:这些文件列出了GPIO的引脚编号,可以查看GPIO编号。我们进入到/sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl/下面,输入“cat pins”,如下图所示:

图130-5

3. /sys/kernel/debug/pinctrl/*/gpio-ranges:这些文件列出了每个GPIO控制器支持的GPIO范围。你可以查看GPIO编号的范围和对应的控制器名称。我们进入到/sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl/下面,输入“cat gpio-ranges”,如下图所示:

图130-6

4. /sys/kernel/debug/pinctrl/*/pinmux-functions:这些文件列出了每个功能模式的名称以及与之关联的GPIO引脚。你可以查看各个功能模式的名称和对应的引脚列表。我们进入到/sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl/下面,输入“cat pinmux-functions”,如下图所示:

图130-7

5. /sys/kernel/debug/pinctrl/*/pingroups:该路径提供有关用于配置和控制系统上的 GPIO引脚的引脚组的信息。我们进入到/sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl/下面,输入“cat pingroups”,如下图所示:

图130-8

6. /sys/kernel/debug/pinctrl/*/pinconf-pins:这些文件包含了GPIO引脚的配置信息,如输入/输出模式、上拉/下拉设置等。你可以查看和修改GPIO的电气属性,以便进行GPIO的调试和配置。我们进入到/sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl/下面,输入“cat pinconf-pins”,如下图所示:

图130-9

在这些文件和目录中,你可以浏览GPIO控制器和引脚的相关信息,包括功能模式、复用配置、范围和配置参数等。这些信息可以帮助你了解GPIO的当前状态和配置,并进行相应的调试和修改。

http://www.xdnf.cn/news/10957.html

相关文章:

  • 数据安全管理进阶:81页 2024数据安全典型场景案例集【附全文阅读】
  • MyBatis常用注解全解析:从基础CRUD到高级映射
  • Shell脚本编程入门与实战指南
  • Qwen2.5-VL 视觉编码器的SwiGLU
  • IT运维工具的选择标准有哪些?
  • [蓝桥杯]求解台阶问题
  • PCI DSS培训记录
  • 便携式雷达信号模拟器,定义复杂电磁环境模拟新标准
  • Docker 容器化:核心技术原理与实践
  • 微软PowerBI考试 PL300-Power BI 入门
  • Vue2 父子组件数据传递与同步详解
  • 访谈 | 吴恩达全景解读 AI Agents 发展现状:多智能体、工具生态、评估体系、语音栈、Vibe Coding 及创业建议一文尽览
  • vue实现点击单选或者多选模式
  • 简单爬虫框架实现
  • JavaScript 字符串的常用方法有哪些?
  • SpringCloud 分布式锁Redisson锁的重入性与看门狗机制 高并发 可重入
  • ALLEN BRADLEY特价型号1715-OB8DE 模块
  • 屈原精神的深度剖析:阶级局限与时代启示
  • 涨薪技术|0到1学会性能测试第94课-全链路脚本开发
  • 【iOS安全】Macbook更换brew源
  • 2025 年人脸识别技术应用备案政策已落地
  • 基于SpringBoot的“嗨玩旅游”网站设计与实现(源码+定制+开发)嗨玩旅游平台开发:景点展示与个性化推荐系统(SpringBoot)
  • Foundation Models for Generalist Geospatial Artificial Intelligence(NASA发布Prithvi)论文阅读
  • 定时线程池失效问题引发的思考
  • 远程桌面端口如何设置?你知道本地计算机怎么让外网电脑远程桌面连接访问吗?
  • nginx去掉暴漏外边的版本号
  • RTOS,其基本属性、语法、操作、api
  • Python 子进程通信:构建可靠的进程间消息交换系统
  • 5.3_3由遍历序列构造二叉树
  • 集合类基础概念