查看: 667|回复: 0

单片机IO口工作方式详细分析

[复制链接]

该用户从未签到

发表于 2020-11-22 19:48:38 | 显示全部楼层 |阅读模式
分享到:

单片机I/O口工作方式基本有以下几类:

1.准双向IO口配置(弱上拉)

小结:

灌电流能力强,拉电流能力弱

读外部状态前要先锁存“1”(断开下拉晶体管)

读IO口状态的原则是非高即低,只能准确识别外部的低电平信号,无法区分悬空和真正的高电平

作为输入时,输入阻抗不为高阻,可能出现将外部低电平误读为高电平的情况(例上拉电阻10K,外部电阻100K,IO=5*100/110=4.54V)

12.jpg


其应用方式参考:

13.jpg


准双向口用作输入时,可对地接按键,如图1,当然也可以去掉R1直接接按键,当按键闭合时,端口被拉至低电平,当按键松开时,端口被内部“极弱上拉”晶体管拉至高电平。

当端口作为输出时,不应对地外接LED如图2控制,这样端口的驱动能力很弱(拉电流能力弱),LED只能发很微弱的光,如果要驱动LED,要采用图3的方法,这样准双向口在输出为低时,可吸收20mA的电流(灌电流能力强),故能驱动LED。图4的方法也可以,不过LED不发光时,端口要吸收很大电流。

2.推挽输出配置

小结:

能真正输出高低电平,具有很强的驱动能力(灌电流,拉电流能力强)

如果当两个推挽输出结构相连在一起,一个输出高电平,即上面的MOS导通,下面的MOS闭合时;同时另一个输出低电平,即上面的MOS闭合,下面的MOS导通时。电流会从第一个引脚的VCC通过上端MOS再经过第二个引脚的下端MOS直接流向GND。整个通路上电阻很小,会发生短路,进而可能造成端口的损害。这也是为什么推挽输出不能实现" 线与"的原因。

14.jpg


推挽输出可以用图2的方式通过拉电流驱动LED灯亮。

3.开漏输出配置

小结:

通过外部上拉电阻输出高电平

若有外部上拉,可作为输入IO读取外部状态(同准双向IO,先锁存“1”)

通过外部上拉电源进行电平转换与外部器件兼容

15.jpg


4.高阻输入

小结:

电路无法流入流出,只能作为输入数据使用

16.jpg


回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-11-23 21:19 , Processed in 0.119853 second(s), 16 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.