首页 > 编程知识 正文

io接口概念,常见io接口

时间:2023-05-06 10:44:45 阅读:233975 作者:1730

文章目录 1.IO口介绍2.IO口的状态2.1准双向IO2.2开漏、推挽输出2.3上下拉输入、浮空输入 3.总结

1.IO口介绍

  IO即input output,是计算机种输入输出系统,用于cpu与外界进行信息交互,例如cpu读内存数据需要io系统,cpu输出数据到屏幕显示出来也需要io系统,信息在io系统上传输有并行或并行,所谓串行就是数据在一条线上传输,并行就是数据在多条线上传输,即并行一次传输多个bit,串行每次传输一个bit,但随着技术的发展这两种传输优势是在不断变化的,由于不是重点我在这里不展开讲。

2.IO口的状态 2.1准双向IO

  在学习51单片机的时候会遇到一个叫准双向IO的概念,跟多人认为准的意思是输入和输出不能随意,即输入的时候要先写输出1,这完全是一种不正确的理解,双向IO的全称是双向三态,也就是你输入输出的时候能不能呈现三态,而51单片机的P1、P2、P3因内部有上拉电阻不能表现高阻态是准双向,P0口没有上拉电阻能够呈现高阻态,由于作为普通IO的时候不能输出1,所以作为普通IO的时候不是双向的,只有当它作为数据/地址的时候才是。

2.2开漏、推挽输出

  开漏输出相当于一个MOS管/三极管的VCC断开了(NPN型),即IO口可以输出高阻态或者接到GND,要想输出高电平必须要接外部上拉电阻(一般没有说上拉输出这个名词的),所以开漏输出的驱动能力由外部决定, 可以将多个开漏输出的Pin,连接到一条线上。通过一只上拉电阻,在不增加任何器件的情况下,形成“与逻辑”关系。当多个引脚任意一个变低后,开漏线上的逻辑就为0了。这也是I2C,SMBus等总线判断总线占用状态的原理。

  推挽输出是上下接了两个晶体管,输出能够接到VCC或GND,由于推挽输出模式可以不需要外部辅助电路就可以直接输出高低电平,所以可以用于直接控制数字电路,比如我们可以通过CPU的IO口,直接控制一些数字芯片,ADC、DAC、触发器、锁存器、三极管控制引脚等等,不能像开漏一样将多个pin接到同一条线上,因为当有一个引脚输出低的时候相当于直接短路了,即推挽能接多个输入,不能接多个输出,而开漏能接多个输出(开漏),也能接多个输入。

2.3上下拉输入、浮空输入

  上拉下拉就是将不确定的电平定位到高或低,相应的应用场景为外部输入高阻态和高电平/低电平,例如按键接到GND,当没有按下的时候需要使用上拉将电平定位到高。浮空输入就是即没有上拉和下拉电阻。

3.总结

  这里总结了几种IO的使用模式和应用场景,实际需要注意的细节可能更为复杂,复杂的涉及到数电与模电知识,以后如果有机会接触再来分享吧。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。