打印

请教,关于上拉电阻

[复制链接]
4046|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
天雨粟|  楼主 | 2008-8-24 18:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教:关于上拉电阻
根据何立民先生的说法,P0口每一位上方的场效应管(作为上拉电阻用)“仅用于外部存储器读/写时,作为地址/数据线用。其它情况下,场效应管被开路,因而P0口具有开漏极输出,如果再给锁存器置‘1’状态,使输出的二个场效应管均关断,使引脚处于‘浮空’,成为高阻状态。”(《MCS-51系列单片机应用系统设计》P37页)。
根据这一原理,在设计与液晶模块的连接时,如采用间接控制法,用P0口进行数据交换,应不属于“外部存储器读/写”,应加上拉电阻,但我看五六本书(用MCU驱动1602系列液晶),除了一本书加了上拉电阻外,其它书均未加,也未作特殊说明,因此问题,加还是不加?难道有的液晶模块自己就有数据端的上拉电阻吗?我也查了一些液晶模块的资料,却并没有这方面的说明。
其它口是有上拉电阻的,但在有些书的“软件模拟I2C总线”的章节中,用P1.6作为SCL,P1.7作为SDA,却在这两端加了上拉电阻,因此问题,不是已有上拉电阻了吗,为什么还要加呢?

相关帖子

沙发
dai_weis| | 2008-8-24 18:47 | 只看该作者

TTL开漏输入为高电平

但这样是不符合可靠性要求的,若P0端口则必须增加上拉电阻

第二个问题作为IIC总线(模拟)内部的上拉电阻太大不能满足IIC的工作要求,所以必须根据IIC的速度选择合适的上拉电阻

使用特权

评论回复
板凳
天雨粟|  楼主 | 2008-8-24 19:20 | 只看该作者

感谢二楼老师给予的答复

我这样理解,在液晶模块连接时,不加上拉电阻也能工作,但可靠性不行。
因为,对TTL电路,如果输入悬空,输出理论上为高电平,但出现干扰,则就难讲了,因此,在这种情况下,加了上拉为好,我在实际使用中也是加了的。

对IIC的情况,资料上说的上拉电阻的范围是5~10K,理由未讲,感谢您从理论上讲清了这个问题——为了速度的匹配。

使用特权

评论回复
地板
computer00| | 2008-8-24 21:52 | 只看该作者

也可以把LCD当做一个外部存储器的,即,使用总线方式访问LC

这时就不需要接上拉电阻了。你仔细看看是否用WR、RD两条线就知道了。对应的程序使用MOVX指令访问。


P0口做普通IO口时才用接上拉。

使用特权

评论回复
5
armecos| | 2008-8-24 23:37 | 只看该作者

标准作法是都加外部上拉,

    理由如下:
    1、不论内部是否上拉,外部加上拉都不会有任何不良影响;
    2、内部晶体管形成的上拉为弱上拉,按照《ecos增值包》可靠性要求,PCB可靠性不能依赖CPU内部上拉或者LCD模块内部提供,在任何情况下,PCB要自己保证绝对可靠;
    3、焊接时可以根据情况不焊接外部上拉电阻。

    关于上、下拉电阻的设计要求及其阻值确定、位置放置、设计技巧、常见问题、注意事项、案例分析等,详见《快快乐乐跟我学高速PCB设计》

更多内容,详见:
《培训系列“丛书”》
www.armecos.com
-----------------------------------
More details, see:
《"Series Books" of Training》
www.armecos.com

使用特权

评论回复
6
天雨粟|  楼主 | 2008-8-25 22:23 | 只看该作者

回四楼、五楼

回四楼:
总线控制法不加上拉,这在理论上是清楚的,我的问题是许多书给的例程中,间接控制法也不加上拉(间接控制法就是把P0口作普通I/O口用,这个理解应没有问题吧!)

回五楼:
您强调了标准作法,这是一般的教材、普通参考书未涉及的,也是许多人忽略了的,应引起注意。
又,《单片机典型模块设计实例导航》(求是科技)P55:(P0口作为输入时)“P0口线上有内部缓冲器,所以阻抗很高,一般的IC芯片都可直接驱动,不需要加上拉电阻,如果是三态门驱动,可能根据需要来确定加还是不加上拉电阻。但有时候要注意,有些IC的驱动能力并不强,如果P0口作为输入而加了不必要的上拉,有可能驱动IC无法将其拉回0,使输入失效。”
我觉得问题好像有点复杂化了,怎么办呢?

使用特权

评论回复
7
awey| | 2008-8-25 22:30 | 只看该作者

楼主看书不仔细

上面说的是P0口作为输入口,不加上拉,不是输出

使用特权

评论回复
8
天雨粟|  楼主 | 2008-8-25 22:57 | 只看该作者

回七楼

是这样,我引书的时候,前面还有一段,虽是讲输入,但与本题关系不大,所以我用“(P0口作为输入时)”这一句概括了一下,或者应该这样“(笔者按:P0口作为输入时)”就清楚了。
关于上拉,我约略看过几本书,不得要领,通过比较异同,自以为理论上清楚了,但一看实际例程,又有出入,似乎还有共性,值得探讨。
MCU用间接控制法控制液晶模块,既要向模块写命令、数据,又要回读模块反馈的状态字,P0口兼输入与输出,是个典型问题,到底加不加上拉,如何从理论上将其讲清楚,我觉得还可以继续讨论,愿聆高见!

使用特权

评论回复
9
quanzhizu| | 2009-11-2 17:03 | 只看该作者
好啊哈好i啊啊啊啊啊啊啊啊啊啊啊啊

使用特权

评论回复
10
bin362422| | 2009-11-2 19:12 | 只看该作者
以前用的时候仅仅是用了,但没有这样考虑的多,谢谢分享!学习了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

168

帖子

0

粉丝