请教学习单片机碰到的几个问题

[复制链接]
1810|3
 楼主| Mindor 发表于 2010-3-8 18:58 | 显示全部楼层 |阅读模式
本帖最后由 Mindor 于 2010-3-8 19:09 编辑

1、为什么单片机驱动数码管时,数码管的接法中共阴极比较常用?
和共阳极比起来有什么优势?

2、为什么单片机的IO口灌电流一般比拉电流大?

3、当我们需要读51单片机IO口引脚时,需要向其先写“1”。如下:
MOV P0.x , #0FFH
MOV A    , P0.x
问题是:
如果第一条先向端口写了“1”,那么第二条指令读取到的值不就是高电平了吗?


谢谢回答!
HWM 发表于 2010-3-8 20:44 | 显示全部楼层
1、为什么单片机驱动数码管时,数码管的接法中共阴极比较常用?和共阳极比起来有什么优势?

通常习惯采用NPN管驱动,所以会显得共阴管使用多点。

2、为什么单片机的IO口灌电流一般比拉电流大?

一般MCU的准双向IO输出驱动采用OC加弱上拉的形式,所以灌电流会比拉电流明显的强。

3、当我们需要读51单片机IO口引脚时,需要向其先写“1”。如下:
MOV P0.x , #0FFH
MOV A    , P0.x
问题是:
如果第一条先向端口写了“1”,那么第二条指令读取到的值不就是高电平了吗?

上面说了,准双向IO采用的是OC加上拉电阻的形式。要作为输入,就必须断开OC门(即输出1)。虽然是输出1了,但却是弱上拉的,因此可以由外界将其拉下。这就是准双向IO的原理所在。
原野之狼 发表于 2010-3-8 20:46 | 显示全部楼层
HWM老师的解释很精辟 值得学习
 楼主| Mindor 发表于 2010-3-9 08:38 | 显示全部楼层
2# HWM
多谢HWM老师的回答,现在有点明白了哈!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

36

主题

413

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部