单片机菜鸟提问

[复制链接]
3320|3
 楼主| strawli 发表于 2013-4-28 15:35 | 显示全部楼层 |阅读模式
各位大侠,本人写了下面的汇编程序,放到keil中编译,编译提示错误,请帮忙指出下这个程序哪里有错误,不胜感激!
程序如下:
ORG    OOOOH
START:   MOV    A,#11111111B
         CLR    C,C=0
         MOV    R2,#8
LOOP:    RLC    A
         MOV    P2,A
                 LCALL  DELAY
                 DJNZ   R2,LOOP
                 SJMP   START
DELAY:   MOV    R3,#20
   D1:   MOV    R4,#20
   D2:   MOV    R5,#248
         DJNZ   R5,$
                 DJNZ   R4,D2
                 DJNZ   R3,D1
                 RET
                 END


错误提示如下:
assembling LED.asm...
LED.asm(1): error A21: EXPRESSION WITH FORWARD REFERENCE NOT PERMITTED
LED.asm(3): error A9: SYNTAX ERROR
LED.asm(3): error A9: SYNTAX ERROR
LED.asm - 3 Error(s), 0 Warning(s).
NE5532 发表于 2013-4-28 15:46 | 显示全部楼层
“ORG    OOOOH”
这后面的四个是0么??

CLR    C,C=0
汇编这样写注视?

DELAY函数体要放在调用之前,否则汇编器从上到下读程序,读到DELAY的时候不知道这个东西在哪里。

另外楼主应该说明是51单片机,不是所有人都能看出来你用什么机型,世界上的单片机类型成千上万。在找汇编问题的时候,汇编器会提示问题所在的行,到这些行去仔细观察,一般都会找到问题的。
www5911839 发表于 2013-4-28 15:58 | 显示全部楼层
语法错误,自己能够解决的。
 楼主| strawli 发表于 2013-4-28 23:01 | 显示全部楼层
NE5532 发表于 2013-4-28 15:46
“ORG    OOOOH”
这后面的四个是0么??

谢谢版主,把CLR C,后面的C=0去掉后,编译就通过了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

3

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部