推挽输出:输出高电平时,T1导通,T2截止,IO口输出高。输出低电平时T1截止,T2导通输出低电平。ODR输出高电平后,读取IDR无法读取到IO口当前状态。
开漏输出:T1被屏蔽,输出高电平是1,T1,T2都截止,所以无法输出高电平,若要输出高电平需配合上拉电阻使用。输出低电平时T1截止,T2导通输出低电平。
读取IDR可以读取到IO口当前状态。
所以使用IIC时,SDA线若是使用推完模式时需要切换方向,重新配置是输入还是输出模式。
开漏模式时ODR输出高电平时,不用切换为输入模式也可以读取到IO口当前状态。
以上在使用IIC是需要注意。 |