资讯详情

学习笔记1——关于STM32的I/O口的8种工作模式

浮空,顾名思义,就是浮在空中,上面用绳子拉起来,下面用绳子拉下来就沉了。. 泄漏等于输出口连接NPN而且只接了三极管e,b.c极是开路的,你可以连接一个电阻到3.3V,也可以接一个电阻到5V,这样,当输出1时,它可以是5V电压,也可以是3.3V电压了.但是,当电阻不上拉时,高输出无法实现. 推挽,就是有推拉,任何时候IO口的电平是确定的,不需要外拉或下拉电阻. (1)GPIO_Mode_AIN模拟输入 (2)GPIO_Mode_IN_FLOATING浮空输入 (3)GPIO_Mode_IPD下拉输入 (4)GPIO_Mode_IPU上拉输入 (5)GPIO_Mode_Out_OD开漏输出 (6)GPIO_Mode_Out_PP推挽输出 (7)GPIO_Mode_AF_OD复用开漏输出 (8)GPIO_Mode_AF_PP复用推挽输出 推挽电路是两个参数相同的三极管或MOSFET,电路中存在推拉方式,负责正负波形放大任务半周。当电路工作时,两个对称的功率开关管每次只有一个导管,因此导管损耗小,效率高。输出不仅可以向负载灌注电流,还可以从负载中提取电流。推拉输出级不仅提高了电路的负载能力,而且提高了开关速度。 泄漏输出:输出端相当于三极管的集电极.需要上拉电阻才能获得高电平状态.适用于电流驱动,其吸收电流的能力相对较强(一般20ma以内). 泄漏电路具有以下特点: 1.利用外部电路的驱动能力降低IC内部驱动IC内部MOSFET导通时,驱动电流来自外部VCC流经Rpull-up,MOSFET到GND。IC内部仅需很下的栅极驱动电流。 2.一般来说,泄漏是用来连接不同的电平设备,匹配电平,因为泄漏引脚不连接外部拉电阻,只能输出低电平,如果需要同时输出高电平功能,需要连接拉电阻,一个好的优点是通过改变拉电源电压,可以改变传输电平。例如,可以提供上拉电阻TTL/CMOS电平输出等。(上拉电阻的电阻决定了逻辑电平转换沿的速度。电阻值越大,功耗越低,因此负载电阻的选择应考虑功耗和速度。) 3.OPEN-DRAIN它提供了一种灵活的输出模式,但也有其弱点,即上升边缘的延迟。由于上升边缘通过外部上拉无源电阻充电负载,当电阻选择小时延迟小,但功耗大;相反,延迟大功耗小。因此,如果有延迟要求,建议使用下降边缘输出。 4.多个泄漏输出可以输出Pin,连接到一条线上。在不增加任何设备的情况下,通过上拉电阻形成逻辑关系。I2C,SMBus等待总线判断总线占用状态的原理。补充:什么是线与? 在结点(线)上,连接一个上拉电阻VCC或VDD和n个NPN或NMOS晶体管的集电极C或漏极D,晶体管的发射极E或源极S都接到地线上,只要晶体管饱和,结点(线)被拉到地线电平上.因为这些晶体管的基极注入电流(NPN)或者栅极加高电平(NMOS),晶体管饱和,因此,这些基极或栅极对这个结点(线)的关系是非NOR逻辑.假如在这个结点后面加一个反相器,就是或OR逻辑. 事实上,可以简单地理解为:当所有引脚连接在一起时,外部拉电阻,如果引脚输出为逻辑0,相当于接地,并联电路相当于短路,所以外部电路逻辑电平为0,只有高电平时,结果为逻辑1。 由于浮空输入通常用于外部按钮输入,结合图中输入的部分电路,我理解为浮空输入状态,IO电平状态不确定,完全由外部输入决定。如果引脚悬挂,则不确定读取端口的电平。 上拉输入/下拉输入/模拟输入:这些概念很容易理解,从字面上很容易理解。 可理解为复用开漏输出和复用推挽输出GPIO当口被用作第二个功能时(即不是通用)的配置IO口使用) 最后总结使用情况: 在STM32中选用IO模式 (1)浮空输入_IN_FLOATING——可以做浮空输入KEY识别,RX1 (2)带上拉输入_IPU——IO内部上拉电阻输入 (3)带下拉输入_IPD——IO输入内部下拉电阻 (4)模拟输入_AIN——应用ADC模拟输入或低功耗省电 (5)泄漏输出_OUT_OD——IO输出0接GND,IO输出1,悬挂,需要外部上拉电阻才能实现高输出电平。当输出为1时,IO口的状态由上拉电阻拉高,但由于是泄漏输出模式,因此IO口可由外部电路改为低电平或不变。IO实现输入电平的变化C51的IO双向功能 (6)推拉输出_OUT_PP——IO输出0-接GND,IO输出1-接VCC,读输入值未知 (7)复用功能推拉输出_AF_PP——片内外设功能(I2C的SCL,SDA) (8)复用功能的泄漏输出_AF_OD——片内外设功能(TX1,MOSI,MISO.SCK.SS) STM32设置实例: (1)模拟I2C使用泄漏输出_OUT_OD,连接拉电阻,正确输出0和1;读值时先GPIO_SetBits(GPIOB,GPIO_Pin_0);拉高,然后读IO的值;使用GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_0); (2)若为无上拉电阻,IO默认为高电平;需要读取IO可使用带上拉输入的值_IPU和浮空输入_IN_FLOATING和开漏输出_OUT_OD;

转载STM32的I/O八种口腔工作模式-OpenEdv-开源电子网

标签: 1o5o三极管

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台