找回密码
 注册
关于网站域名变更的通知
查看: 183|回复: 4
打印 上一主题 下一主题

51单片机IO口输入输出方式

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-12-24 15:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 damengshu 于 2021-12-24 15:37 编辑 2 Q' V" c0 u5 r( w5 O9 U4 a. b
7 ~3 |. m; h0 N: S5 N! N
传统51单片机IO接口只可以作为标准双向IO接口,如果用其来驱动LED只能用灌电流的方式或是用三极管外扩驱动电路
2 m3 H3 p  u( A4 ~灌电流方式:LED正极接VCC,负极接IO口。IO为高电平是LED两极电平相同,没有电流,LED熄灭;IO为低电平时,电流从VCC流入IO,LED点亮。但是当你吧LED正极接在IO接口,负极接GND时,将IO接口置于高电平,LED会亮,但因为IO接口上拉能力不足而使亮度不理想,可以用下面介绍的方式解决这个问题。2 J9 A  l2 ]) b1 n+ A5 p9 g& }
0 ~  K2 H1 s/ l( ]2 y8 G' O) @
- i; M0 b4 L" o0 Q
推挽工作方式:LED正负极分别接在两个IO口上,然后设置正极IO接口为推挽输出,负极IO接口为标准双向灌电流输入。推挽方式具有强上拉能力,可以实现高电平驱动LED。
% p5 e0 r+ `/ Z9 O1 e* \2 y; N/ z8 g# j) m# C& B1 L
* B; C9 S* F3 |  F% n: e9 o/ x3 S
IO口的四种使用方法, ^0 b1 b5 v* x0 T6 V' i' g
I/O口的特性上看,标准51的P0口在作为I/O口使用时,是开漏结构,在实际应用中通常要添加上拉电阻p1、P2、P3都是准双向I/O,内部有上拉电阻,既可作为输入又可以作为输出。而LPC900系列单片机的I/O口特性有一定的不同,它们可以被配置成4种不同的工作模式:准双向I/O、推挽输出、高阻输入、开漏。+ O# n$ C( I1 j7 J8 Y: g- G3 }! A
准双向I/O模式与标准51相比,虽然在内部结构上是不同的,但在用法上类同,比如要作为输入时都必须先写“1”置成高电平,然后才能去读引脚的电平状态。!!!!!为什么是这样子?见下面分析。8 X; j. B& A9 A. J/ Y
0 G$ h5 C. t# [
, z" q# N; w4 }0 A1 T
推挽输出的特点是不论输出高电平还是低电平都能驱动较大的电流,比如输出高电平时可以直接点亮LED(要串联几百欧限流电阻),而在准双向I/O模式下很难办到。8 J7 H8 k& M1 c! k5 @

  k% {2 f* }9 G9 `$ G$ q# c
- ~8 ]' P  T1 E6 ^% l% t高阻输入模式的特点是只能作为输入使用,但是可以获得比较高的输入阻抗,这在模拟比较器和ADC应用中是必需的。# ?8 m7 R. ^9 k2 N- B# u
' c4 |/ @# {5 I. `( i6 [; z

; ^  B5 a/ Z) _. y' O7 r% ]开漏模式与准双向模式相似,但是没有内部上拉电阻。开漏模式的优点是电气兼容性好,外部上拉电阻接3V电源,就能和3V逻辑器件接口,如果上拉电阻接5V电源,又可以与5V逻辑器件接口。此外,开漏模式还可以方便地实现“线与”逻辑功能。
* s  O( x. C4 ]% S8 \+ U) I9 ]4 c2 t
: }9 i7 i5 N0 r
对于上面疑问的解释,有这样一个资料:1 E( Y4 G$ C; Z0 _! @9 O2 G2 L
高阻态这是一个数字电路里常见的术语,指的是电路的一种输出状态,既不是高电平也不是低电平,如果高阻态再输入下一级电路的话,对下级电路无任何影响,和没接一样,如果用万用表测的话有可能是高电平也有可能是低电平,随它后面接的东西定。
; ~9 G9 |; r. B) n) G' N- @7 V( i3 \1 l! }& I* V( G

3 C' j1 V/ r  T1 B- E) u电路分析时高阻态可做开路理解。你可以把它看作输出(输入)电阻非常大。他的极限可以认为悬空。. R, ?  R5 |! s; K0 X

3 V; `  n3 C2 O) y% Z( p" v' w9 p) O
高阻态的典型应用:
  N8 @3 R1 a+ n) a7 b1、在总线连接的结构上。总线上挂有多个设备,设备与总线以高阻的形式连接。这样在设备不占用总线时自动释放总线,以方便其他设备获得总线的使用权。
# R# @/ U& f( l3 p* F2、大部分单片机I/O使用时都可以设置为高阻输入,如凌阳,AVR等等。高阻输入可以认为输入电阻是无穷大的,认为I/O对前级影响极小,而且不产生电流(不衰减),而且在一定程度上也增加了芯片的抗电压冲击能力。. h6 _6 |6 V7 {- C

1 \5 @% |1 o% p6 G2 |

该用户从未签到

2#
发表于 2021-12-24 15:32 | 只看该作者
推挽输出比较常用

该用户从未签到

3#
发表于 2021-12-24 15:33 | 只看该作者
标准I/O口是开漏结构

该用户从未签到

4#
发表于 2021-12-24 15:33 | 只看该作者
推挽输出能驱动较大的电流

该用户从未签到

5#
发表于 2021-12-24 15:34 | 只看该作者
大部分单片机I/O使用时都可以设置为高阻输入
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-3 13:22 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表