找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2424|回复: 5
收起左侧

新手关于单片机P0口上拉电阻的问题搞不懂,请网友们给小弟指导指导,谢谢大家了!

[复制链接]
ID:404479 发表于 2018-10-19 17:57 来自手机 | 显示全部楼层 |阅读模式
单片机的P0口没有上拉电阻,默认为高电平,那么我把数码管的8个段全部接在加了10k上拉电阻的P0口,这时,按理说数码管的8个段全部都接入正级了,好,我就用38译码器控制它的位(负级),有四位,那么,按理来说,我只要使数码管的某一位为负级,那么,这一位上的8个段都要亮啊,无论输入什么样的段码,都会亮8,因为p0口的上拉电阻是直接给全部段位供电的,我在想,P0口应该没有能力输出高电平才对啊,P0口不是只能输出低电平吗?这只是我想象的,但是,为何在实际动态显示中,这个P0口还是会控制每一个断码输出相应的数字,这个P0口不是没有输出高电平的能力吗?他的高电平全是靠上拉给的,他为什么还能控制相应的段码按照设置的方法点亮呢?不应该是全亮么?所以我想不通这个问题,我来问问大家,小弟新人,请大神们不要笑话,指导我一下,谢谢!
回复

使用道具 举报

ID:414168 发表于 2018-10-24 02:14 | 显示全部楼层

“单片机的P0口没有上拉电阻,默认为高电平,那么我把数码管的8个段全部接在加了10k上拉电阻的P0口”——P0口通过10K电阻的高电平没有驱动能力的,如果工作电压位5V,经过10K上拉电阻只能输出最大0.5毫安的电流能力,如果加上负载的内阻其输出电流就更小了!但是电平还是能高电平的!如果你“我在想,P0口应该没有能力输出高电平才对啊,P0口不是只能输出低电平吗?”那么我们还需要这P0口干嘛呢??当P0口低电平时可以认为相当于内置三极管导通了这样P0口就有一定的输出驱动能力了!但是由于工艺以及其他原因,仍然会限制在几毫安到十几毫安!
其实你用了共阳数码管,把段位接到P0口那就不需要10K的上拉电阻了!你“就用38译码器控制它的位”应该就是数码管的公共阳极位,此时位应该是高电平!那么高电平通过数码管内部分别接入发光二极管到对应的P0口段位,其实也就起到上拉电阻的作用了!换句话说就是P0口内的三极管直接接到了数码管的段位负极,只要在38译码器控制的位保持高电平,那么P0口某个引脚控制为低电平时对应的数码管段位就被点亮了!因为相当于内置三极管导通就把数码管段位上的发光管接地了!

评分

参与人数 1黑币 +60 收起 理由
admin + 60 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:76227 发表于 2018-10-19 18:24 | 显示全部楼层
1.不是所有的单片机P0都是没有内部上拉的(STC的很多51单片机就有内部上拉)
2.你控制38译码器去位选?(你的数码管是共阴还是共阳?)这个决定了你如何去控制。
3.传统51内部没有上拉,你外接上拉10K,就可以输出高电平和低电平了。10K电阻很大,驱动能力弱。需要输出大一点的电流的话,上拉电阻需要减小。

评分

参与人数 1黑币 +50 收起 理由
admin + 50 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:404479 发表于 2018-10-19 18:36 来自手机 | 显示全部楼层
905377346 发表于 2018-10-19 18:24
1.不是所有的单片机P0都是没有内部上拉的(STC的很多51单片机就有内部上拉)
2.你控制38译码器去位选?( ...

是共阳极数码管!
回复

使用道具 举报

ID:387733 发表于 2018-10-19 19:53 | 显示全部楼层
P0口内部不能拉高,当P0口输出为高时,靠上拉电阻给数码管阳极供电,相应发光管亮。当P0口输出为低时,拉高电阻原先流往数码管阳极的电流就被P0口拉低旁流,数码管相应段就灭了。
回复

使用道具 举报

ID:89515 发表于 2018-10-22 10:26 | 显示全部楼层
百度OD门或者OC门就知道了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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