推挽输出
输出寄存器输出为1时P-MOS导通,N-MOS断开,输出接到VCC输出高电平。输出寄存器输出为0时P-MOS断开,N-MOS导通,输出接到VDD输出低电平
开漏输出
只有N-MOS有效,输出寄存器输出为1时,N-MOS断开,输出呈现高阻态。输出寄存器输出为0时,N-MOS导通,输出接到VDD输出为低电平。
如果将IO口外接一个上拉电阻到5V的电源,则可以输出5V的电平,可以兼容5V的设备
IIC为什么会选择开漏输出
在一主多从的模式下SCL可以采用推挽输出,但是SDA必须采用开漏输出,由于IIC是半双工的协议,如果总线时序没协调好极有可能发生主机和从机均处于输出状态,如果采用推挽输出一方输出高电平,一方输出低电平,那么就会处于电源短路的状态。因此IIC禁止所有设备输出高电平,SDA和SCL采用开漏输出并且SDA和SCL线上连接上拉电阻连接VDD的形式,这样输出高电平就不能抵消低电平造成电源短路了。
SPI避免各设备MISO冲突
从机采用推挽输出的模式就会导致多个从机输出的时候造成冲突,那么SPI在协议规定,如果从机没被选中,它的MISO引脚要保持高阻态
标签:输出,高电平,MOS,推挽,低电平,开漏 From: https://www.cnblogs.com/Sandals-little/p/18002041