️ GPIO 测试方法
使用 gpioset 和 gpioget 工具进行引脚电平的设置与读取。
指令格式:
# 设置引脚电平
gpioset <芯片号> <全局GPIO编号>=<电平值> # 电平值: 0(低) / 1(高)
# 读取引脚电平
gpioget <芯片号> <全局GPIO编号>常用示例:
gpioset 0 17=0 # 将 PA17 设置为输出低电平
gpioset 0 18=1 # 将 PA18 设置为输出高电平
gpioget 0 16 # 读取 PA16 的当前电平状态GPIO 全局编号计算方法
在 Linux 系统(如 libgpiod)中,GPIO 的全局编号由 组基地址 与 组内偏移量 相加得出。
计算公式:
全局 GPIO 编号 = GPIO 组基地址 + 组内引脚偏移量
计算示例:
以 PJ0 为例:
- PJ 组基地址:
288 - 组内偏移量:
0 - 全局编号 =
288 + 0 = 288
GPIO 组基地址映射表
| GPIO 组 | 基地址 (十进制) | 基地址 (十六进制) |
|---|---|---|
| PA | 0 | 0x00 |
| PB | 32 | 0x20 |
| PC | 64 | 0x40 |
| PD | 96 | 0x60 |
| PE | 128 | 0x80 |
| PF | 160 | 0xA0 |
| PG | 192 | 0xC0 |
| PH | 224 | 0xE0 |
| PI | 256 | 0x100 |
| PJ | 288 | 0x120 |
| PK | 320 | 0x140 |
实用提示
- 引脚命名转换:在实际操作中,需将原理图上的引脚名(如
PA17)转换为全局编号。例如PA17= PA基地址(0) + 17 = 17。 - 引脚复用:测试前请确认该引脚未被其他驱动(如 UART、SPI)占用,否则可能导致设置失败或系统异常。
作者:林晓燕 创建时间:2026-08-28 17:53
最后编辑:林晓燕 更新时间:2026-10-15 15:11
最后编辑:林晓燕 更新时间:2026-10-15 15:11