通过学习stm32F103ZET6学习,记录GPIO工作模式的原理

声明:本人是刚学习stm32的菜鸟,现在大一下学期在读,专业电子信息工程。这篇文章仅作为学习心得发布,以及考虑到新人同学学习中可能和我遇到一样的问题,在这篇文章中,把我原先不懂的点搞清楚作为发布目的。本人没有学习过模电数电,有什么错误大家一定要提出,本人必定虚心学习改正。这篇文章的发布是基于学习正点原子官方、野火、中文手册及网络搜索所获得的学习心得,侵权必删。文章的文字皆为自己著写。

GPIO工作方式:

GPIO(通用输入输出端口):可控制GPIO引脚电平变化,达到目的。

输入结构:输入浮空、输入上拉、输入下拉、模拟输入

输出结构:开漏输出、开漏复用功能、推挽式输出、推挽式复用功能


图二的端口配置表,CNF代表高两位,MODE代表低两位;首先,MODE1、MODE0是用来配置IO输入、输出状态;CNF1和CNF2是根据IO口输入和输出状态的不同,配置不同的IO功能。配置IO时,先通过MODE1和MODE0配置IO为输入还是输出,再通过CNF1和CNF0来配置IO是什么功能的输入或输出。

IO口是通过ODR数据寄存器来区分设置成上拉输入还是下拉输入的。若ODR置1,IO设置为上拉输入;若ODR置0,IO口被设置为下拉输入。


 

 该图是野火视频里面的,根据自己的学习心得和网上资料总结,把了解到的东西分享给大家:

上拉电阻:保证在无信号输入时输入端电平为高电平;

下拉电阻:保证在无信号输入时输入端电平为低电平;

端口复用功能:不仅可作为通用IO口,还可复用一些外设引脚。作用:最大限度利用端口资源。

端口重映射功能:把某些功能引脚映射到其他引脚。作用:方便布线。

TTL肖特基触发器:连续的信号通过这个触发器会变成离散的信号;当触发器进入一个正弦波时会转变为矩形波,即变成一个确定的电平,是1或0.

 上面两幅图是作者方便学习所画,有点丑请见谅!

GPIO常用的两种输出方式:

①推挽式输出电路:

原理:当IN输入端置高电平时,上面的NPN型三极管导通,下面的PNP三极管闭合,因此VDD端会被推到OUT口;当IN输入端置低电平时,上面的NPN型三极管会闭合,下面的PNP三极管导通,因此OUT口会被拉到接地。

简单来说,就是NPN有电导通,PNP接地导通。

②开漏输出电路:

原理:开漏输出模式会接一个上拉电阻,上拉电阻是什么,上面有提到。当IN口置高电平时,PNP三级管会闭合,此时因为上拉电阻持续为高电平,所以导致OUT口输出高电平;当IN口置低电平时,PNP三极管导通,OUT口接地,置为低电平,因此能有效控制OUT口为何种电平。

最后,对这两种输出模式作个简单的比较:

推挽输出模式:驱动能力强,适合电流型驱动。

开漏输出模式:可输出强高低电平,对连接数字器件作用较大。必须外接上拉电阻,否则驱动能力不足。能实现线与功能,I2C便是使用这种模式。

什么是线与功能,本人知识浅薄,只能把自身了解到的说出来,线与功能就是例如上图的OUT口,若OUT口后面连接了一系列的元器件、外设时,当OUT口置高电平,则他后面的元器件都接受为高电平;反之亦然。

本次要分享的学习心得大概完结,该文章为作者第一次书写,有什么不正确的地方请多多指出,必定加以修改,不断学习提升自己。祝看到文章的各位,学习顺利,期末不挂,比赛获奖,考研成功!

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值