快速搞懂GPIO控制器的六种模式

发布时间: 2024-07-02
来源: 电子工程世界

在嵌入式系统和单片机开发中,GPIO(通用输入输出)控制器是一个非常重要的组件。GPIO引脚的灵活性使它们能够执行多种功能,从简单的输入输出到复杂的通信任务。为了帮助大家快速了解和掌握GPIO控制器的六种常见模式,我们特地整理了这篇文章。。
快速搞懂GPIO控制器的六种模式


我们拿STM32芯片举例,下图是GPIO控制器的简单框图:

33cfc212-14aa-11ef-bebc-92fbcf53809c.png


通过框图可以分为输入和输出两个部分



33ec784e-14aa-11ef-bebc-92fbcf53809c.png


3402039e-14aa-11ef-bebc-92fbcf53809c.png

通用输入模式:直接读(检测)IO口的电平状态;


复用输入模式:从IO进来的数据信号要经过片上外设(串口控制器),再到核心;


模拟输入模式:外界的模拟量(电压)通过IO口进入到ADC控制器,ADC控制器转换成数字量。



340e82f4-14aa-11ef-bebc-92fbcf53809c.png

34124e20-14aa-11ef-bebc-92fbcf53809c.png


通用输出模式:核心直接控制IO输出高低电平;


复用输出模式:核心将数据信号发送到片上外设,片上外设再通过IO口传送出去;


模拟输出模式:核心将数字信号发送到DAC上,DAC将数字信号转换成电压值,通过IO出去。


在单片机开发过程中,需要根据实际场景去选择对应的模式,拿STM32举例,模式的选择可以通过配置GPIO端口模式寄存器来进行选择,如下图:


3428c74a-14aa-11ef-bebc-92fbcf53809c.png

看图可知这个寄存器一共有32个位,每2位控制一个GPIO口,根据寄存器每个位的描述可以知道,对应位写入0和1就可以将对应的IO口配置成相应的模式。 


总结

理解和掌握GPIO控制器的六种模式是嵌入式系统开发中的基础技能。每种模式都有其独特的应用场景和优势,通过合理配置和使用GPIO引脚,可以极大地提升系统的功能和性能。


文章来源于: 电子工程世界 原文链接

本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。