【江科大STM32学习笔记】GPIO输出

一、GPIO简介

1.GPIO(General Purpose Input/Output)通用输入输出

2.可配置为8种输入输出模式

3.引脚电平:0V~3.3V,部分引脚可容忍5V

部分引脚输入可为5V但输出只能是3.3V

4.输出模式下可控制端口输出高低电平,用以驱动LED、控制蜂鸣器、模拟通信协议输出时序等

5.输入模式下可读取端口的高低电平或电压,用于读取按键输入、外接模块电平信号输入、ADC电压采集、模拟通信协议接收数据等

二、GPIO基本结构

GPIO(General Purpose Input/Output,通用输入输出)是微控制器与外部电路交互的基础接口。其基本结构通常包括以下几个部分:

  • 保护二极管:防止因外部电压过高或过低而对微控制器造成损害。
  • 上拉和下拉电阻:提供引脚的稳定状态,上拉电阻将引脚拉向高电平,下拉电阻将引脚拉向低电平。
  • P-MOS管和N-MOS管:用于驱动引脚的电平。
  • 数据寄存器:包括输入数据寄存器和输出数据寄存器,分别用于存储引脚的输入和输出数据。
  • 复用功能:某些GPIO口可以被配置为特定的外设功能,如串行通信接口等。

三、GPIO位结构 

GPIO位结构是构成通用输入输出接口的基本单元,它决定了引脚的功能和行为。以下是一些关于GPIO位结构的详细解释:

  • 保护二极管:用于防止因外部电压过高或过低而对微控制器造成损害。一个连接到VDD(供电电压),另一个连接到VSS(接地电压)。
  • 上拉和下拉电阻:提供引脚的稳定状态,上拉电阻将引脚拉向高电平,下拉电阻将引脚拉向低电平。
  • 施密特触发器:用于提高信号的稳定性,确保输入信号在边缘处清晰无噪声。
  • 输入数据寄存器:保存当前引脚的状态,无论是作为输入还是输出。
  • 位设置/清除寄存器:允许单独设置或清除每个位的状态,从而提供了灵活控制单个引脚的能力。
  • 输出数据寄存器:存储即将输出到对应引脚的数据。
  • P-MOS和N-MOS:分别连接VDD和VSS的金属氧化物半导体场效应晶体管,用于驱动引脚的电平。
  • 数据选择器:决定是将输入数据还是输出数据发送到引脚。

四、GPIO模式 

GPIO(General Purpose Input/Output)是微控制器中用于与外部设备通信的通用输入输出端口。其模式主要可以分为以下几种:

  • 浮空输入模式:这种模式下,GPIO端口不会给引脚提供上拉或下拉电阻,引脚的状态完全由外部电路决定。
  • 带上拉输入模式:在带上拉输入模式下,GPIO端口会通过一个上拉电阻连接到电源,使得引脚在没有外部信号输入时保持高电平状态。
  • 带下拉输入模式:与带上拉输入模式相反,带下拉输入模式通过下拉电阻将引脚连接到地,使得引脚在无外部信号输入时保持低电平状态。
  • 模拟输入模式:此模式下,GPIO端口被配置为模拟信号输入,通常用于读取模拟电压值。
  • 开漏输出模式:在开漏输出模式下,GPIO端口通过一个NMOS晶体管连接到地,当引脚需要输出低电平时,NMOS导通;而当需要输出高电平时,NMOS关闭,引脚悬空,需要外部上拉电阻来提供高电平。
  • 推挽输出模式:推挽输出模式下,GPIO端口通过一个PMOS和一个NMOS晶体管分别连接到电源和地,可以直接输出高电平和低电平,不需要外部电阻。
  • 复用功能推挽输出:除了作为通用IO口外,还可以作为特定外设功能的推挽输出,如串行通信接口等。
  • 复用功能开漏输出:与复用功能推挽输出类似,但是以开漏形式输出,需要外部上拉电阻来完成高电平的输出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值