GPIO的输入工作模式1——输入浮空模式:

GPIO_Mode_IN_FLOATING =0x04

工作原理:配置完相应寄存器为此工作模式后,高低电平信号通过1处的IO口输入进去,由于寄存器配置了的缘故VDD处上拉和下拉均为断开状态。通过TTL施密特触发器后进入到3(输入数据寄存器)中,然后由MCU将数据读取。

适用场景:一般多用于外部按键输入;

GPIO的输入工作模式2——输入上拉模式:

GPIO_Mode_IPU =0x48

工作原理:配置完相应寄存器为此工作模式后,高低电平信号通过1处的IO口输入进去,由于寄存器配置了的缘故VDD处上拉电阻(30K~50K)处于闭合状态。通过TTL施密特触发器后进入到3(输入数据寄存器)中,然后由MCU将数据读取。

适用场景:

GPIO的输入工作模式3——输入下拉模式:

GPIO_Mode_IPD =0x28

工作原理:配置完相应寄存器为此工作模式后,高低电平信号通过1处的IO口输入进去,由于寄存器配置了的缘故VSS处下拉电阻(       )处于闭合状态。通过TTL施密特触发器后进入到3(输入数据寄存器)中,然后由MCU将数据读取。

适用场景:

GPIO的输入工作模式4——输入模拟模式:

GPIO_Mode_AIN =0x0

工作原理:配置完相应寄存器为此工作模式后,模拟电压信号通过1处的IO口输入进去,由于寄存器配置了的缘故VDD处上拉和下拉电阻于断开状态。TTL施密特触发器也被关闭,一直将模拟电压信号输入至片上外设模块AD转换器,然后由MCU将数据读取。

适用场景:应用ADC模拟输入;低功耗下省电

GPIO的输出工作模式1——开漏输出模式:

GPIO_Mode_Out_OD=0x14

工作原理:配置完相应寄存器为此工作模式后,MCU将要发送的数据位设置/清除寄存器和输出数据寄存器将高低电平信号发送到输出控制电路中,当电平为0时输出控制电路向N-MOS管给出信号,N-MOS管导通,将IO口电平拉低,输出低电平;当电平为1时,MOS管截止,不向IO口给出高低电平信号,IO口此时电平信号由外部电路中的上拉电阻拉到电源电压。

适用场景:

1、这种方式适合在连接的外设电压比单片机电压低的时候

2、一般来说,开漏是用来连接不同电平的器件,匹配电平用的,因为开漏引脚不连 接外部的上拉电阻时,只能输出低电平,如果需要同时具备输出高电平的功 能,则需要接上拉电阻,很好的一个优点是通过改变上拉电源的电压,便可以 改变传输电平。比如加上上拉电阻就可以提供TTL/CMOS电平输出等。(上拉 电阻的阻值决定了逻辑电平转换的沿的速度 。阻值越大,速度越低功耗越小, 所以负载电阻的选择要兼顾功耗和速度。)

GPIO的输出工作模式2——复用开漏输出模式:

GPIO_Mode_AF_OD=0x1c

工作原理: 理解为GPIO口被用作第二功能时的配置情况,工作原理类似于“开漏输出模式”,只是要输出的电平信号来源不是mcu,而是复用功能输出通道,比如片上外设模块。

适用场景:

GPIO的输出工作模式3——推挽输出模式:

GPIO_Mode_Out_PP=0x10

工作原理:配置完相应寄存器为此工作模式后,MCU将要发送的数据位设置/清除寄存器和输出数据寄存器将高低电平信号发送到输出控制电路中,当电平为0时输出控制电路向N-MOS管给出信号,N-MOS管导通,P-MOS管截止,将IO口电平拉低,输出低电平;当电平为1时,P-MOS管导通,N-MOS管截止,将IO口电平拉高,输出高电平,与此同时,IO口的高低电平状态可通过TTL施密特触发器后进入到3(输入数据寄存器)中,然后由MCU将IO口读取。

适用场景:

GPIO的输出工作模式3——复用推挽输出模式:

GPIO_Mode_AF_PP=0x18

工作原理:理解为GPIO口被用作第二功能时的配置情况,工作原理类似于“推挽输出模式”,只是要输出的电平信号来源不是mcu,而是复用功能输出通道,比如片上外设模块。

STM32——GPIO口的八种工作模式的更多相关文章

  1. ST MCU_GPIO的八种工作模式详解。

    补充: N.P型的区别,就是一个为正电压启动(NMOS),一个为负电压启动(PMOS) GPIO的八种工作模式详解 浮空输入_IN_FLOATING带上拉输入_IPU带下拉输入_IPD模拟输入_AIN ...

  2. 【转载】stm32的GPIO八种工作模式

    一.推挽输出:可以输出高.低电平,连接数字器件:推挽结构一般是指两个三极管分别受两个互补信号的控制,总是在一个三极管导通的时候另一个截止.高低电平由IC的电源决定.         推挽电路是两个参数 ...

  3. 再谈STM32的CAN过滤器-bxCAN的过滤器的4种工作模式以及使用方法总结

    1. 前言 bxCAN是STM32系列最稳定的IP核之一,无论有哪个新型号出来,这个IP核基本未变,可见这个IP核的设计是相当成熟的.本文所讲述的内容属于这个IP核的一部分,掌握了本文所讲内容,就可以 ...

  4. GPIO 的 8 种工作模式

    GPIO 的 8 种工作模式 在初始化 GPIO 的时候,根据我们的使用要求,必须把 GPIO 设置为相应的模式.如 LED 例程中的 GPIO 引脚如果配置为模拟输入模式是必然会导致错误的. 我们配 ...

  5. LoRa---她的芯片和她的几种工作模式

    LoRa对应的芯片------sx1278芯片 sx1278芯片为Semtech公司推出的具有新型LoRa扩频技术的RF芯片,具有功耗低.容量大.传输距离远.抗干扰能力强的优点.我接下来在这块芯片上进 ...

  6. VMWare提供了三种工作模式上网

    VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式).要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式. 1 ...

  7. VMWare三种工作模式 :bridge、host-only、nat

    VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式).要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式.这里 ...

  8. ARM体系的7种工作模式

    一.ARM体系的CPU有以下7种工作模式:   用户模式(usr)    大多数程序运行于用户模式 特权模式   系统模式(sys)   运行具有特权的操作系统任务 异常模式 中断模式(irq)   ...

  9. VMWare虚拟机网络的三种工作模式

    VMWare提供了三种工作模式: 1.bridged(桥接模式) 在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器.在桥接模式下,需要手工为虚拟系 ...

随机推荐

  1. Python从网页上爬取图片

    在搜索壁纸的时候,想把壁纸保存到本地,一张一张的保存太过麻烦,所以想到用Python来爬取壁纸. 设计思路: 1.首先先去找有壁纸的网页: http://www.acfun.cn/a/ac334521 ...

  2. [luogu4931]情侣?给我烧了!

    题解 有\(i\)对情侣全都不和谐那里推不出来只好写了一个暴力容斥然后大力卡常卡过去了== 容斥太过暴力,还是说正解吧 可以考虑直接计算\(n\)对情侣有\(k\)对和谐的方案数 设\(g[i]\)表 ...

  3. 【洛谷3343_BZOJ3925】[ZJOI2015]地震后的幻想乡(状压 DP_期望)

    题目: 洛谷 3343 BZOJ 3925 分析: 谁给我说这是个期望概率神题的,明明没太大关系好吧 「提示」里那个结论哪天想起来再问 Jumpmelon 怎么证. 首先,由于开始修路前 \(e_i\ ...

  4. 51nod 1213 二维曼哈顿距离最小生成树

    1213 二维曼哈顿距离最小生成树 基准时间限制:4 秒 空间限制:131072 KB 分值: 160 难度:6级算法题  收藏  关注 二维平面上有N个坐标为整数的点,点x1 y1同点x2 y2之间 ...

  5. ACM_回文素数

    回文素数 Time Limit: 2000/1000ms (Java/Others) Problem Description: 131号是一个主回文,因为它是一个素数和一个回文(当向后读时,它是相同的 ...

  6. 017:COM1无法打开

    重新安装系统以后,COM1无法正常打开,重启以后也是如此.到设备管理器下,禁用COM1然后重启可以正常使用.修改COM1为别的COM号,重启以后可以正常使用.用Pcomm控件,打开该串口,错误号是-8 ...

  7. C. Two strings 二分 + 预处理

    http://codeforces.com/contest/762/problem/C 第一个串str[],第二个sub[] 预处理出prefix[i]表示sub的前i位和str[]的最长lcs去到s ...

  8. apache-storm-1.0.2.tar.gz的集群搭建(3节点)(图文详解)(非HA和HA)

    不多说,直接上干货! Storm的版本选取 我这里,是选用apache-storm-1.0.2.tar.gz apache-storm-0.9.6.tar.gz的集群搭建(3节点)(图文详解) 为什么 ...

  9. CF916C Jamie and Interesting Graph

    思路:构造 实现: #include <bits/stdc++.h> using namespace std; int main() { int n, m; cin >> n ...

  10. wordpress在撰写新文章界面的显示选项按钮点击无反应的解决办法

    原文链接:wordpress在撰写新文章界面的显示选项按钮点击无反应的解决办法 最近升级wordpress之后,发现在文章编辑界面的添加新媒体和可视化按钮点击无反应,如下:  然后就在网上找解决办法, ...