GPIO
文章目录
- GPIO
- 单片机的工作方式
- CPU是通过读写寄存器来控制GPIO的
- GPIO硬件框架
- 8种模式结构
- 推挽/推挽复用输出模式
- 开漏/开漏复用输出
- 输入结构
- 单片机是如何访问寄存器的?
- GPIO输出速度
GPIO,General Purpose lnput Outpu,指的是芯片的通用输入输出管脚。

单片机的工作方式

①CPU负责执行程序指令和运算
②FLASH负责保存程序指令
③RAM负责保存运行时变量的数据,
④外设负责与外部器件交互。
CPU是通过读写寄存器来控制GPIO的

GPIO硬件框架

写/读:数据来源普通IO口寄存器数据
备用输出(复用输出):数据来源IIC,串口,SPI寄存器数据

8种模式结构
推挽/推挽复用输出模式

输出控制为1,再取反为0,使PMOS导通接VCC,NMOS断开,输出高电平,发光二级管熄灭
输出控制为0,再取反为1,使PMOS截止,NMOS导通接GND,输出低电平,发光二级管亮,电流由外部流向内
同理可推出另一种发光二极管电路情况

输出控制为1,再取反为0,使PMOS导通接VCC,NMOS断开,输出高电平,发光二级管亮,电流由内流向外部
输出控制为0,再取反为1,使PMOS截止,NMOS导通接GND,输出低电平,发光二级管熄灭
开漏/开漏复用输出

输出控制为1,再取反为0,使NMOS断开,为高阻态,发光二级管熄灭
输出控制为0,再取反为1,NMOS导通接GND,输出低电平,发光二级管亮

输出控制为1,再取反为0,使NMOS断开,为高阻态,发光二级管熄灭
输出控制为0,再取反为1,NMOS导通接GND,发光二级管熄灭
开漏/开漏复用输出只能输出低电平,不能输出高电平,使用下面电路后可以解决该问题,开漏/开漏复用输出能实现电平转换,也能实现线与功能

该电路能实现电平转换,VCC接5v,
输出控制为1,再取反为0,使NMOS截止,断开,使其为5v电平
线与功能


推挽无法实现线与功能,开漏输出则可以。

输入结构

当外部输入大于等于0.7VDD时为输入高电平,小于等于0.3VDD时为输入低电平
浮空输入

端口在单片机内部为高阻态,输入取决于外部输入的状态,应用场景:配置为串口RX引脚

浮空输入直接检测按键输入不可取
上拉输入

下拉输入

浮空输入实现检测按键

单片机是如何访问寄存器的?

GPIO寄存器

GD32F303-ZET6的GPIO

GPIO输出速度
什么是最大输出速度?

输出速度对GPIO硬件有什么影响?

如何减小上升和下降时间?

负载等效为电容,输出高低电平就是对电容进行充放电。
输出交流特性参数
