欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

普适的GPIO引脚操作方法

发布时间:2025/4/5 编程问答 47 豆豆
生活随笔 收集整理的这篇文章主要介绍了 普适的GPIO引脚操作方法 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

文章目录

    • 1 普适的GPIO引脚操作方法
      • 1.1 GPIO模块一般结构
      • 1.2 GPIO相关寄存器
      • 1.3 GPIO寄存器的2种操作方法
      • 1.4 GPIO的其他功能:防抖动、中断、唤醒

1 普适的GPIO引脚操作方法

GPIO:General-purpose input/output,通用的输入输出口。

1.1 GPIO模块一般结构

有多组 GPIO,每组有多个 GPIO。

使能: 电源/时钟。

模式(Mode): 引脚可用于 GPIO 或其他功能。

方向: 引脚 Mode 设置为 GPIO 时,可以继续设置它是输出引脚,还是输入引脚。

数值: 对于输出引脚,可以设置寄存器让它输出高、低电平;对于输入引脚,可以读取寄存器得到引脚的当前电平。

1.2 GPIO相关寄存器

使能:

  • 芯片手册一般有相关章节,用来介绍:power/clock。
  • 可以设置对应寄存器使能某个 GPIO 模块(Module)。
  • 有些芯片的 GPIO 是没有使能开关的,即它总是使能的。

模式(Mode):

  • 一个引脚可以用于 GPIO、串口、USB 或其他功能。
  • 有对应的寄存器来选择引脚的功能。

方向:

  • 对于已经设置为 GPIO 功能的引脚,有方向寄存器用来设置它的方向:输出、输入。

数值:

  • 对于已经设置为 GPIO 功能的引脚,有数据寄存器用来写、读引脚电平状态。

1.3 GPIO寄存器的2种操作方法

原则:不能影响到其他位。

1. 直接读写:读出、修改对应位、写入。

//要设置 bit n: val = data_reg; val = val | (1<<n); data_reg = val;//要清除 bit n: val = data_reg; val = val & ~(1<<n); data_reg = val;

2. set-and-clear protocol:
set_reg, clr_reg, data_reg 三个寄存器对应的是同一个物理寄存器,要设置 bit n:set_reg = (1<<n);要清除 bit n:clr_reg = (1<<n)。

1.4 GPIO的其他功能:防抖动、中断、唤醒

后续介绍。


参考资料:

  • 韦东山全系列视频第1季快速入门
  • 《新程序员》:云原生和全面数字化实践50位技术专家共同创作,文字、视频、音频交互阅读

    总结

    以上是生活随笔为你收集整理的普适的GPIO引脚操作方法的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。