Android 如何查看某个GPIO被谁占用和当前的状态

cat /sys/kernel/debug/gpio

/sys/kernel/debug/gpio 输出的各列含义如下:

  1. 第一行gpiochip0: GPIOs 0-127, xxx-gpio:
  • 表示GPIO控制器信息:控制器编号(0)、管理的GPIO范围(0-127)和控制器名称(xxx-gpio)
  1. 对于每个GPIO引脚的信息
  • 第一列gpio-XX (如 gpio-48)
    • GPIO的编号,表示特定的GPIO引脚
  • 第二列:括号内的信息 ( |reset )
    • 左侧部分:通常表示GPIO的消费者/拥有者(在大多数您的示例中为空)
    • 右侧部分:表示GPIO的功能/标签名(如 reset, pwdn, custom1en 等)
  • 第三列outin
    • 表示GPIO的方向/模式:
      • out = 输出模式
      • in = 输入模式
  • 第四列hilo
    • 表示GPIO的当前电平状态:
      • hi = 高电平
      • lo = 低电平
  • 第五列(如果存在):特殊标志
    • 例如 ACTIVE LOW 表示该GPIO是低电平有效的

举例说明:

CopyInsert

gpio-48  (                    |reset               ) out lo 

这表示:

  • GPIO 48
  • 被用作"reset"功能
  • 配置为输出模式
  • 当前状态为低电平