标题: 刚刚编了一个喷泉单片机程序,为什么调用子程序报错 [打印本页]

作者: LIUZY599    时间: 2020-5-2 13:12
标题: 刚刚编了一个喷泉单片机程序,为什么调用子程序报错
ORG        1000H
LOOP26:        MOV        P1,#000H        
MOV        A ,#0FFH
LOOP1:        CJNE        A        ,P0,LOOP2        
SJMP        LOOP1        
LOOP2:        MOV        01H,82H        
LOOP3:        JNB        P0.3,LOOP4        
JNB        P0.4,LOOP5
JNB        P0.5,LOOP6
JNB        P0.6,LOOP7
SJMP        LOOP3        
LOOP4:        JB        P0.0,LOOP4        
LOOP8:        LCALL P03
JNB        P0.1,LOOP
JB        01H,LOOP
SJMP        LOOP8
LOOP5:        JB        P0.0,LOOP5
LOOP9:        LCALL P04
JNB        P0.1,LOOP
JB        01H,LOOP
SJMP        LOOP9
LOOP6:        JB        P0.0,LOOP6
LOOP10:        LCALL P05
JNB        P0.1,LOOP
JB        01H,LOOP
SJMP        LOOP10
LOOP7:        JB        P0.0,LOOP7
LOOP11:        LCALL P06
JNB        P0.1,LOOP
JB        01H,LOOP
SJMP        LOOP11
LOOP:        MOV        P1,#00H
MOV        P0,#FFH
SJMP        LOOP26
END

标红处提示error A54,P03是子程序
P03如下

ORG        2050H        
P03:        MOV        R0,#07H
SETB        P1.0
SETB        P1.4        
LCALL        S2
SETB        P1.3        
LCALL        S2
SETB        P1.2        
LCALL        S2        
SETB        P1.1
LOOP20:        LCALL        S2
DJNZ        R0,LOOP20
LCALL        S1
MOV        P1,#00H
RET
标蓝出提示warning A73
之后所有的LCALL都是错误A54



作者: LIUZY599    时间: 2020-5-2 13:13
整个程序是at89c51编写的,大概就是有四种喷泉花式,对应四个子程序
作者: xuyaqi    时间: 2020-5-2 15:35
要把 END 放在整个程序最后。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1