找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 17240|回复: 25
收起左侧

为什么改变不了单片机P0口输出高低电平?

  [复制链接]
ID:225507 发表于 2017-11-18 21:59 | 显示全部楼层 |阅读模式
6黑币
89C52单片机,在开发板上烧写程序测量发现P0^0,P^1口可以正常安装程序的设定输出高低电平,但是移到自己焊的板子上再测量发现P0口全都呈现出高阻态, 是 什么原因????晶振问题?

1.png
回复

使用道具 举报

ID:225507 发表于 2017-12-2 10:32 | 显示全部楼层
谢谢各位大佬,问题已经解决,经过测试发现晶振已经起振,也能从18 19管脚输入,但是单片机缺未能正常工作,也就是30管脚ALE未能输出测出方波信号。在把单片机的外部晶振电路都换过之也没有效果之后我把晶振拔下直接接在18 19管脚之后就一切正常了。下面是两个PCB图供大家参考
回复

使用道具 举报

ID:225507 发表于 2017-12-2 20:25 | 显示全部楼层
q784662037 发表于 2017-12-2 10:32
谢谢各位大佬,问题已经解决,经过测试发现晶振已经起振,也能从18 19管脚输入,但是单片机缺未能正常工作 ...

第一个是之前的,第二个是修改之后,不知道能不能传上图

之前的

之前的

修改之后

修改之后
回复

使用道具 举报

ID:250908 发表于 2017-11-18 22:13 | 显示全部楼层
开发板子上面的都是有上拉电阻的,这个你有没有注意到啊
回复

使用道具 举报

ID:225507 发表于 2017-11-18 23:04 | 显示全部楼层
ww3030 发表于 2017-11-18 22:13
开发板子上面的都是有上拉电阻的,这个你有没有注意到啊

我也加了上拉电阻试了一下,程序设置输出0的时候端口还是呈现高阻态,上拉电阻接的VCC直接到IO口成高电平输出。
回复

使用道具 举报

ID:225507 发表于 2017-11-18 23:04 | 显示全部楼层
求各位大神指教。!!
回复

使用道具 举报

ID:219796 发表于 2017-11-19 00:19 来自手机 | 显示全部楼层
很有可能是晶振没起振,单片机没有正常工作
回复

使用道具 举报

ID:250938 发表于 2017-11-19 00:31 来自手机 | 显示全部楼层
51单片机,一般只有P0口才需要外加上拉电阻,其它三个端口芯片内部已经设置有上拉功能,无需外接上拉电阻。P0口作为I/O口输出的时候时 输出低电平为0 输出高电平为高组态(并非5V,相当于悬空状态)。也就是说P0 口不能真正的输出高电平,给所接的负载提供电流,因此必须接上拉电阻(八个电阻一组引脚全部连在一起组成公共端连接到VCC,然后另一段的八个引脚分别连在p0口),由电源通过这个上拉电阻给负载提供电流。一般上拉电阻大小可以在3.3K-10K之间都可以,我大一时完51单片机就是这么做的,是可以的。

评分

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

查看全部评分

回复

使用道具 举报

ID:225507 发表于 2017-11-19 08:43 | 显示全部楼层
KACHEN 发表于 2017-11-19 00:31
51单片机,一般只有P0口才需要外加上拉电阻,其它三个端口芯片内部已经设置有上拉功能,无需外接上拉电阻。 ...

但是我加了上拉电阻之后输出低电平并不是0V,我分别设置P0.0为低电平P0.1为高电平之后在用万用表分别测试两者的电压,并无差别
回复

使用道具 举报

ID:248503 发表于 2017-11-19 09:59 | 显示全部楼层
31 pin 有没有接到vcc
回复

使用道具 举报

ID:248503 发表于 2017-11-19 10:05 | 显示全部楼层
还有测量晶振波形和电压18 19 电压在二分之一电源电压左右。
回复

使用道具 举报

ID:88481 发表于 2017-11-19 10:41 来自手机 | 显示全部楼层
你拔掉芯片,用电阻档测量一下引脚,有没有到Ⅴcc短路
回复

使用道具 举报

ID:225507 发表于 2017-11-19 11:00 | 显示全部楼层
cccc8888 发表于 2017-11-19 09:59
31 pin 有没有接到vcc

31管脚需要接到VCC的吗?
回复

使用道具 举报

ID:225507 发表于 2017-11-19 11:02 | 显示全部楼层
cccc8888 发表于 2017-11-19 09:59
31 pin 有没有接到vcc

接了,31管脚也接了VCC,用电压表也测了31管脚为5V
回复

使用道具 举报

ID:225507 发表于 2017-11-19 11:23 | 显示全部楼层
刚才又看了一下, 我把P2.7口置零也置不下去,它还是输出高电平。应该是单片机不工作,可是为什么不工作呢,电路都检查一遍了。
回复

使用道具 举报

ID:250938 发表于 2017-11-19 12:16 来自手机 | 显示全部楼层
q784662037 发表于 2017-11-19 11:23
刚才又看了一下, 我把P2.7口置零也置不下去,它还是输出高电平。应该是单片机不工作,可是为什么不工作呢 ...

要不你重新焊接一个单片机最小系统,换个新的单片机试试,或者重新认真的检查一下电路若电路焊接没问题换个单片机试试。

回复

使用道具 举报

ID:244656 发表于 2017-11-20 14:35 | 显示全部楼层
没看出毛病。。。。
回复

使用道具 举报

ID:234518 发表于 2017-11-20 15:30 | 显示全部楼层
不知道楼主的问题解决没有,按楼主的介绍程序应该是没什么问题,与我的电路不同的也就是31脚我是从来没接东西的照样用。这里我想确定下楼主的供电问题,供电是否稳定?
1、需要稳定的5V电源,希望你使用的尽量是线性稳压电源。
2、在电源输入的供电端添加0.1uF(瓷片电容)+100uF(电解电容)。
3、在单片机的40脚供电端接一个0.1uF的电容滤波,其次在AD芯片中也添加一个0.1uF(瓷片电容)+10uF(电解电容)
这样能增加电路的稳定性。
然后不要忘记了还是需要上拉电阻的1~10K都是可以的。
最后如果没有用的话希望楼主借用同学的单片机试用下,也可能是楼主的单片机坏了!

评分

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

查看全部评分

回复

使用道具 举报

ID:193818 发表于 2017-11-20 16:37 | 显示全部楼层
拍个实物图看看
回复

使用道具 举报

ID:251416 发表于 2017-11-20 17:10 | 显示全部楼层
P0应该要加上拉电阻的。
回复

使用道具 举报

ID:251534 发表于 2017-11-20 17:43 | 显示全部楼层
上拉电阻都接上了啊
回复

使用道具 举报

ID:251653 发表于 2017-11-20 21:19 | 显示全部楼层
需要加上拉电阻的
回复

使用道具 举报

ID:256390 发表于 2017-12-3 08:27 | 显示全部楼层
p0管脚是没有上拉电阻的,单片机初始电平为高电平,如果始终为高电平可能是单片机接触不良引起的。

评分

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

查看全部评分

回复

使用道具 举报

ID:255579 发表于 2017-12-14 09:31 | 显示全部楼层

51单片机,一般只有P0口才需要外加上拉电阻,其它三个端口芯片内部已经设置有上拉功能,无需外接上拉电阻。P0口作为I/O口输出的时候时 输出低电平为0 输出高电平为高组态(并非5V,相当于悬空状态)。也就是说P0 口不能真正的输出高电平,给所接的负载提供电流,因此必须接上拉电阻(八个电阻一组引脚全部连在一起组成公共端连接到VCC,然后另一段的八个引脚分别连在p0口),由电源通过这个上拉电阻给负载提供电流。一般上拉电阻大小可以在3.3K-10K之间都可以,我大一时完51单片机就是这么做的,是可以的。
回复

使用道具 举报

ID:73182 发表于 2018-11-26 13:21 | 显示全部楼层
KACHEN 发表于 2017-11-19 00:31
51单片机,一般只有P0口才需要外加上拉电阻,其它三个端口芯片内部已经设置有上拉功能,无需外接上拉电阻。 ...

marke````
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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