IO口模拟IIC总线的SCL引脚输出模式设置开漏输出和设置为推挽输出相比有哪些好处

之前老师回答过,但由于网站更新,好像没有了

开漏输出,在I2C总线有外部上拉的情况下,在接收数据或者读取信号的时候,模拟IO不需要将IO转为输入状态,只需要往输出寄存器写1放弃对I2C总线的控制权,那么信号线上的电平就将由从设备决定,主设备直接读取电平就行。
推挽输出的话,在获取信号的时候,就需要开发者将IO由输出模式,重新初始化为输入模式。