打印

紧急求助,希望在线的各位帮忙看看

[复制链接]
4211|36
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
chen3bing| | 2009-10-3 17:42 | 只看该作者
数码管是共阴极吗?

使用特权

评论回复
板凳
lanzeex| | 2009-10-3 19:08 | 只看该作者
COM-AN:共阳
COM-CAT:共阴
CC:共阴
CA:共阳

使用特权

评论回复
地板
徐小剑|  楼主 | 2009-10-3 19:34 | 只看该作者
对呀,是共阴的

使用特权

评论回复
5
chen3bing| | 2009-10-3 20:14 | 只看该作者
不懂。用P1口可以。

使用特权

评论回复
6
qiuming| | 2009-10-3 22:26 | 只看该作者
悄胡排阻的值估计取得太大了,要小,你用1K试试.

使用特权

评论回复
7
songbangyan| | 2009-10-3 23:01 | 只看该作者
单片机没有复位电路,还有就是上拉电阻也许不是很合适。

使用特权

评论回复
8
徐小剑|  楼主 | 2009-10-3 23:18 | 只看该作者
本帖最后由 徐小剑 于 2009-10-4 15:09 编辑

试过了,改为1k也是这样子!!
我当时用的程序是:
                  ORG  0000H
                  MAIN:
                           ORG   0030H
                           MOV   P0,#00111111B
                           END
就是没有显示,很古怪!!

使用特权

评论回复
9
徐小剑|  楼主 | 2009-10-3 23:19 | 只看该作者
单片机没有复位电路,还有就是上拉电阻也许不是很合适。
songbangyan 发表于 2009-10-3 23:01

我用的是proteus仿真的,根本就不用复位电路

使用特权

评论回复
10
328500920| | 2009-10-3 23:39 | 只看该作者
MOV   P0,#00111111H
兄弟   二进制应该用  #00111111B  吧

使用特权

评论回复
11
lyjian| | 2009-10-4 08:12 | 只看该作者
本帖最后由 lyjian 于 2009-10-4 08:21 编辑

ORG  0000H
                 MAIN:
删除这一条             ORG   0030H
                           MOV   P0,#00111111B
增加一条指令      SJMP   $  
                         END

使用特权

评论回复
12
lanzeex| | 2009-10-4 08:16 | 只看该作者
程序问题,
        ORG        0000H
        LJMP        MAIN
        ORG        0030H
MAIN:
        MOV        P0, #03FH
        END

使用特权

评论回复
13
zhaoyu2005| | 2009-10-4 08:34 | 只看该作者
换成共阳的数码管试试,标准51单片机的口,是准双向的,低电平驱动能力可以,高电平不行,尤其P0作为普通IO口时,更不行,作为总线时驱动能力可以。

使用特权

评论回复
14
dtmcp| | 2009-10-4 08:37 | 只看该作者
好菜,硬件都设计错了,还在调软件,
(1),数码管要串电阻,而不是接上拉电阻;
(2),P0口是OC输出,而不是PP输出;
(3) 任何芯片的灌电流能力远大于拉电流能力;
(4) 作个共阳的多简单,直接可以用P0口

使用特权

评论回复
15
chen3bing| | 2009-10-4 09:07 | 只看该作者
学习了。

使用特权

评论回复
16
IC_99| | 2009-10-4 10:00 | 只看该作者
学习了

使用特权

评论回复
17
lanzeex| | 2009-10-4 10:22 | 只看该作者
硬件没问题,P0口,这样接共阴也行,他不能显是软件问题。。

使用特权

评论回复
18
xukaiguo| | 2009-10-4 10:52 | 只看该作者
硬件只能说不太合理,软件那么没头没尾的怎么执行?完全靠仿真器单步一下吗?否则走不到这条指令,即使走到这儿,下一步也不知飞哪去了

使用特权

评论回复
19
不亦心| | 2009-10-4 10:59 | 只看该作者
小兄弟
这样的问题你应该自己仔细检查
刚开始学可以多看看别人的程序怎么写的。
你写的这段程序 问题1,PC怎么由00H跳到30H
问题2:二进制和十六进制都能搞错,太粗心了吧
问题3:单片机是个工作狂,要么不工作,要么以工作就不停歇,所以你得让他一直执行程序。
(当然仿真的时候不要这句完全可以达到仿真目的,但实际中不行)
试试下面的程序
   ORG     0000H
     SJMP    MAIN
     ORG     0030H
     MAIN:   MOV   P0,#3FH
     SJMP    MAIN
     END
另外硬件上面的问题就是灌电流和拉电流问题(仿真时可以不考虑,但实际中一般不这样设计),要养成平时仿真就按实际要求来的习惯

使用特权

评论回复
20
新好男孩| | 2009-10-4 12:58 | 只看该作者
是刷新频率的问题吧。

使用特权

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

本版积分规则

43

主题

323

帖子

0

粉丝