历史上的今天
今天是:2025年12月19日(星期五)
2022年12月19日 | STM32端口输入输出模式配置
2022-12-19 来源:zhihu
STM32的IO口模式配置
根据数据手册提供的信息,stm32的io口一共有八种模式,他们分别是:
四种输入模式
上拉输入:通过内部的上拉电阻将一个不确定的信号通过一个电阻拉到高电平。
下拉输入:把电压拉到GND。与上拉原理相似。
浮空输入:引脚内部什么都不接,处于浮空模式下,电平状态是不确定的。外部信号输入什么,IO口就是什么状态。
模拟输入:接收到的是连续的模拟信号,一般用于AD转换。
四种输出模式
推挽输出:可以输出高低电平,连接数字器件。在stm32中推挽电路由两个MOS管组成:输出高电平时P-MOS管导通,引脚联通VDD(3.3v)。输出低电平时N-MOS导通,引脚联通GND。**该方式既提高电路的负载能力,又提高开关速度。 **
开漏输出:无法直接输出高电平,要在外部连接上拉电阻才行,输出的电压由上拉电阻连接的电源决定。适合做电流型的驱动,其吸收电流的能力相对强(一般20ma以内)。开漏输出还有一个特性:线与。即很多开漏模式引脚连接在一起,只有当所有引脚都输出1时,才能够被上拉电阻拉到高电平。若有一个引脚为低电平,则所有引脚相当于接地。
复用推挽输出:简单来说就是给内部外设使用的推挽输出模式,
复用开漏输出:简单来说就是给内部外设使用的开漏输出模式
在STM32中,根据不同的使用场景,选用不同的IO模式:
GPIO_Mode_AIN: 模拟输入,一般用作模数转换
GPIO_Mode_IN_FLOATING: 浮空输入,常用在key识别上
**GPIO_Mode_IPD: **下拉输入--- IO内部下拉电阻输入
GPIO_Mode_IPU:上拉输入--- IO内部上拉电阻输入
GPIO_Mode_Out_OD: 开漏输出---可以外接上拉电阻输出较高的电平,也能够通过读取IO的电平变化实现C51的IO双向功能。
**GPIO_Mode_Out_PP: **推挽输出---IO输出0-接GND,IO输出1 -接VCC,读输入值是未知的。
GPIO_Mode_AF_OD:复用开漏输出---片内外设功能(TX1,MOSI,MISO.SCK.SS)。
GPIO_Mode_AF_PP: 复用推挽输出---片内外设功能(I2C的SCL,SDA)。
根据下面的IO结构图可能更有利于理解:

上一篇:关于STM32的基础知识
下一篇:STM32 DMA简述
史海拾趣
|
各位大侠: 小弟定制WinCE6.0 平台,导出并安装SDK, 用VS2005创建一个智能设备的MFC设备应用程序,最简单的那种,基于对话框, 不做任何修改,直接编译,报错.... 错误信息如下,跟官方技术支持联系过,无果,望各位大侠路过留香 ...… 查看全部问答> |
|
我是做STM8升级,出现了这个假象,具体STM8升级的思路是:8000到a000地址做第一个bootload工程,用这个工程来升级a000后的第二个工程。我用STVP把两个工程的s19文件合起来下载进芯片里是可以正常跑的。然后用STM8的SPI接受另一个芯片发过来的第二个 ...… 查看全部问答> |
|
我自己做了一块dsp28016的最小系统,测得电压、时钟信号都是正常的,用的仿真器是spectrum digital XDS510LC usb 每次连接报错是: Error connecting to the target: Error 0x80000200/-1135 Fatal Error during: OCS, Unrecoverable emulati ...… 查看全部问答> |




