GPIO通用输入输出管脚

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硬件有什么影响?
在这里插入图片描述

如何减小上升和下降时间?
在这里插入图片描述

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

在这里插入图片描述

  • 26
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苦梨甜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值