转载
3359 blog.csdn.net/hailin 0716/article/details/24333951
一、推挽输出:
可以输出高,低电平,连接数字设备; 推挽结构一般是指两个晶体管分别由两个互补的信号控制,总是一个晶体管导通时另一个截止。 高低等级由集成电路的电源决定。
推挽电路是两个参数相同的晶体管或MOSFET,以推挽方式存在于电路中,分别负责正负半周的波形放大。 电路工作时,对称的2根功率开关管一次只导通1个,因此导通损耗小,效率高。 输出既可以使电流通过负载,也可以从负载中引出电流。 推挽型输出级在提高电路负载能力的同时,提高开关速度。
一条三级管开通时,另一条断路由b端确定,
这是对于ab,b的输出为0的比较器。 对于ab,b输出为1
b为1时,上边晶体管导通,下边截止;
b为0时,下面的晶体管导通,上面的晶体管截止。
这是推挽
二、开漏输出:
当b为1时,该管道导通,OUT接地,输出为0; b为0时管导通,OUT连接VCC输出为1 .
漏极输出: 一般只能输出低电平,输出端子相当于晶体管的集电极。 要得到高电平状态需要上拉电阻。 适合电流型驱动,吸收电流的能力相对较强(通常20ma以内)。
开路泄漏形式的电路包括以下特点
利用外部电路的驱动能力,减少IC (集成电路,也称为芯片)内部的驱动。 IC内部的MOSFET导通时,驱动电流从外部的VCC流向R pull-up,从MOSFET流向GND。 IC内部只需要小的栅极驱动电流。
一般来说,开路漏极用于连接不同等级的器件并匹配等级。 开路漏极引脚上不连接外部上拉电阻的话,只能输出低电平,所以需要同时具备输出高电平的功能时,需要连接上拉电阻。 具有通过改变上拉电源的电压,可以改变传输电平的优秀优点。 例如,如果加上上拉电阻,就可以提供TTL/CMOS电平的输出等。 (上拉电阻的电阻值决定了逻辑电平转换的边沿的速度。 电阻值越大,速度越低,消耗电力越小,因此选择负载电阻时请兼顾消耗电力和速度。 )
OPEN-DRAIN提供了灵活的输出方式,但也有弱点。 带来启动的延迟。 由于上升沿通过外置牵引无源电阻对负载进行充电,所以电阻选择小时延迟小,但功耗大,相反延迟大时功耗小。 需要延迟时,建议在下降沿输出。
开放输出的多个Pin可以连接到一条线上。 通过一个上拉电阻,在不增加任何器件的情况下形成“逻辑和”的关系。 这也是I2C、SMBus等总线判断总线占用状态的原理。 补记:什么是“线和”?
在一个节点(线)上,上拉电阻与电源VCC或VDD和n个NPN或NMOS晶体管集电极c或漏极d连接,这些晶体管的发射极e或源极s在一个晶体管饱和时由于这些晶体管的基极注入电流(NPN )或栅极加上高电平(NMOS )会使晶体管饱和,因此这些基极或栅极与“节点”线路的关系是非NOR逻辑。 在该节点后加上变频器,即为OR逻辑。
实际上,可以简单理解的是,在所有管脚连接时,向外部引入电阻,如果一个管脚的输出为逻辑0,则相当于接地,与其并联的电路"相当于被一根引线短路",所以外部电路的逻辑电平为0
三、浮空输入
花痴的哈密瓜漂浮在空中,上面用绳子拉就会上升,下面用绳子拉就会下沉。 浮动输入时,很难输入大电流。 浮动输入、内阻大,需要高电压。
逻辑器件的输入端子既不与高电平连接也不与低电平连接。 由于逻辑器件的内部结构,输入引脚悬浮在空中时,相当于该引脚与高电平连接。 在实际运用中,不建议引线悬空,容易碍事。
四、上拉输入/下拉输入/模拟输入:
1、上拉输入:上拉是指提高电位,如上拉至Vcc。 上拉是指通过电阻将不确定的信号嵌入高电平!
2、下拉输入:是降低电压,拉至GND。
3、模拟输入:模拟输入是指传统方式的输入。 数字输入是PCM数字信号,即输入0、1的二进制数字信号,被数模转换为模拟信号,经过前级放大后进入功率放大器。
五、复用开漏输出、复用推挽输出:
.可以理解为当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;
通常有 5 种方式使用某个引脚功能,它们的配置方式如下:
1)作为普通 GPIO 输入:根据需要配置该引脚为浮空输入、 带弱上拉输入或带弱下拉输入,同时不要使能
该引脚对应的所有复用功能模块。
2)作为普通 GPIO 输出:根据需要配置该引脚为推挽输出或开漏输出,同时不要使能该引脚对应的所有复
用功能模块。
3)作为普通模拟输入:配置该引脚为模拟输入模式,同时不要使能该引脚对应的所有复用功能模块。
4)作为内置外设的输入:根据需要配置该引脚为浮空输入、 带弱上拉输入或带弱下拉输入,同时使能该引
脚对应的某个复用功能模块。
5)作为内置外设的输出:根据需要配置该引脚为复用推挽输出或复用开漏输出,同时使能该引脚对应的所
有复用功能模块。