打印

请教一个汇编程序的问题

[复制链接]
1797|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 chinaupu 于 2010-8-4 20:53 编辑

源程序是这样:

  ORG  0000H
  LJMP MAIN
  ORG  0030H

MAIN: MOV  P0,#00H
  MOV  P1,#00H
  MOV  P2,#00H
  MOV  P3,#00H
  ACALL DELAY

  MOV  P0,#0FFH
  MOV  P1,#0FFH
  MOV  P2,#0FFH
  MOV  P3,#0FFH
  JMP  MAIN

DELAY: MOV  R7,#250
D1:  MOV  R6,#250
  DJNZ R6,$
  DJNZ R7,D1
  RET
  END


为什么在keil中执行  
  MOV  P0,#0FFH
  MOV  P1,#0FFH
  MOV  P2,#0FFH
  MOV  P3,#0FFH
P0口的Pins显示的是00000000
而P1,P2,P3的Pins显示的是11111111

1.jpg (35.82 KB )

1.jpg

相关帖子

沙发
ayb_ice| | 2010-8-5 08:51 | 只看该作者
P0做GPIO要加上拉电阻

使用特权

评论回复
板凳
new1988| | 2010-8-5 09:30 | 只看该作者
由于传统的51单片机的P0口是漏极开路,在没接上拉电阻时为高阻态。所以在做普通IO口时需要接上拉电阻

使用特权

评论回复
地板
chinaupu|  楼主 | 2010-8-5 09:45 | 只看该作者
嗯,经过LS的启发,我在21ic看到一篇**
http://blog.21ic.com/user1/5443/archives/2009/55244.html

使用特权

评论回复
5
冷漠| | 2010-8-5 10:21 | 只看该作者

uV2, uV3显示结果与uV4 不一样。Keil与ARM 观点不一样。

本帖最后由 冷漠 于 2010-8-5 15:33 编辑

我选的89C52,keil -uV2 模拟调试 P0与P1,P2,P3状态显示一致。




再看uV4显示结果:(高阻对什么输入/输出——TTL,CMOS……来说可能是“0”?)各家都有自己的理由,没有定式,都是高手,……

使用特权

评论回复
6
ayb_ice| | 2010-8-5 11:41 | 只看该作者
LS
高手就是不一样

使用特权

评论回复
7
123jj| | 2010-8-5 13:21 | 只看该作者
赞一下,冷漠大虾

使用特权

评论回复
8
一棵小草| | 2010-8-5 15:06 | 只看该作者
恩,强人

使用特权

评论回复
9
pumafire| | 2010-8-5 22:54 | 只看该作者
厉害,哈

使用特权

评论回复
10
chinaupu|  楼主 | 2010-8-6 09:31 | 只看该作者
顶冷漠大虾

使用特权

评论回复
11
ayb_ice| | 2010-8-6 09:56 | 只看该作者
怎么我的UV3和UV4和LZ的效果一样

看来我不是高手

未命名.JPG (132.05 KB )

未命名.JPG

使用特权

评论回复
12
highgear| | 2010-8-6 10:09 | 只看该作者
顶 2楼 和 3 楼。
高阻态在仿真时无论显示什么都没有意义。如果一定要显示什么, 还是显示 0 更好, 这样至少有个警醒。

使用特权

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

本版积分规则

0

主题

67

帖子

1

粉丝