求助各位大大,这篇代码看了一周了,无从下手

[复制链接]
查看11 | 回复3 | 2021-1-27 06:05:17 | 显示全部楼层 |阅读模式
主程序:
ORG0100H
MAIN:MOVSP,#50H
MOVTCON,#05H;定义中断方式
MOV20H,#05H;时间计数单元,A道放行时间
MOV21H,#02H;黄灯亮时间
MOV22H,#05H;B道放行时间
MOV23H,#00H;交通灯转换标示位
MOV24H,#05H;时间欲存区,A道放行时间
MOV25H,#02H;黄灯亮时间
MOV26H,#05H;B道放行时间
MOV27H,#0FFH;特殊情况下转换标示位
MOV28H,#01H;
MOV30H,#05H;显示缓存区
MOV31H,#00H
MOVTMOD,#01H;16位计数器
MOVTH0,#03CH
MOVTL0,#0B0H
MOVIE,#10000111B
SETBTR0;T0启动计数
MOVR2,#13H
MOVP2,#0FFH
ML1:ACALLDISP
MOVA,23H
CJNEA,#00H,X1
SETBP1.2
CLRP1.3
CLRP1.4
CLRP1.5
CLRP1.6
SETBP1.7
X1:CJNEA,#01H,X2
CLRP1.2
SETBP1.3
CLRP1.4
CLRP1.5
SETBP1.6
CLRP1.7
X2:CJNEA,#02H,X3
CLRP1.2
CLRP1.3
SETBP1.4
SETBP1.5
CLRP1.6
CLRP1.7
X3:CJNEA,#03H,X4
CLRP1.2
SETBP1.3
CLRP1.4
CLRP1.5
SETBP1.6
CLRP1.7
X4:JNB2FH.0,ML2
SETBP1.2
CLRP1.3
CLRP1.4
SETBP1.5
CLRP1.6
CLRP1.7
AJMPX4
ML2:JBTR0,ML1
ACALLDISP
MOVA,27H
CJNEA,#00H,X11
SETBP1.2
CLRP1.3
CLRP1.4
CLRP1.5
CLRP1.6
SETBP1.7
X11:CJNEA,#01H,X21
CLRP1.2
SETBP1.3
CLRP1.4
CLRP1.5
SETBP1.6
CLRP1.7
X21:CJNEA,#02H,X31
CLRP1.2
CLRP1.3
SETBP1.4
SETBP1.5
CLRP1.6
CLRP1.7
X31:JBP1.0,M1
M1:MOVC,P1.0;按键消振
JCM2
M2:LCALLDELAY
MOVC,P1.0
JCML10
STOP1:MOVC,P1.0
JNCSTOP1
LCALLDELAY
MOVC,P1.0
JNCSTOP1
MOVR0,#20H
MOVR1,#24H
MOVA,27H;加一
MOV23H,A
CLRC
ADDA,R1
MOVR1,A
CLRC
MOVA,23H
ADDA,R0
MOVR0,A
INC@R1
MOVA,@R1
CJNEA,#100,H1
MOVA,#00H
MOV@R1,A
H1:MOV@R0,A
MOVB,#0AH
DIVAB
MOV31H,A
MOV30H,B
ACALLDISP
ML10:JBP1.1,M3
M3:MOVC,P1.1;按键消振
JCM4
M4:LCALLDELAY
MOVC,P1.1
JCML2
STOP2:MOVC,P1.1
JNCSTOP2
LCALLDELAY
MOVC,P1.1
JNCSTOP2
MOVR0,#20H
MOVR1,#24H
MOVA,27H;减一
MOV23H,A
CLRC
ADDA,R1
MOVR1,A
CLRC
ADDA,R0
MOVR0,A
DEC@R1
MOVA,@R1
CJNEA,#0FFH,H2
MOVA,#99
MOV@R1,A
H2:MOV@R0,A
MOVB,#0AH
DIVAB
MOV31H,A
MOV30H,B
ACALLDISP
LJMPML1
DELAY:MOVR4,#14H
DL00:MOVR5,#0FFH
DL11:DJNZR5,DL11
DJNZR4,DL00
RET
T0中断服务程序
*********TIMEPROCESS******
TIME:PUSHACC
PUSHPSW
MOVTH0,#03CH
MOVTL0,#0B0H
DJNZR2,RET0
MOVR2,#13H
MOVA,23H
CJNEA,#00H,L1
MOVA,20H
CLRC
DECA
CJNEA,#0FFH,GO11
MOVA,23H
CLRC
INCA
MOV23H,A
MOVA,24H
MOV20H,A
LJMPL1
GO11:MOV20H,A
MOVB,#0AH
DIVAB
MOV31H,A
MOV30H,B
LJMPRET0
L1:MOVA,23H
CJNEA,#01H,L2
MOVA,21H
CLRC
DECA
CJNEA,#0FFH,GO12
MOVA,23H
CLRC
INCA
MOV23H,A
MOVA,25H
MOV21H,A
LJMPL2
GO12:MOV21H,A
MOVB,#0AH
DIVAB
MOV31H,A
MOV30H,B
LJMPRET0
L2:MOVA,23H
CJNEA,#02H,L4
MOVA,22H
CLRC
DECA
CJNEA,#0FFH,GO13
MOVA,23H
CLRC
INCA
MOV23H,A
MOVA,26H
MOV22H,A
LJMPL4
GO13:MOV22H,A
MOVB,#0AH
DIVAB
MOV31H,A
MOV30H,B
RET0:POPPSW
POPACC
RETI
L4:MOVA,23H
CJNEA,#03H,RET0
MOVA,21H
CLRC
DECA
CJNEA,#0FFH,GO14
MOVA,#00H
MOV23H,A
MOVA,25H
MOV21H,A
LJMPRET0
GO14:MOV21H,A
MOVB,#0AH
DIVAB
MOV31H,A
MOV30H,B
LJMPRET
外部中断零服务程序
SECTION1:PUSHACC
PUSHPSW
QQQ:MOVC,P3.0;按键消振
JCJJJ
ACALLDELAY
MOVC,P3.0
JCJJJ
STOP3:MOVC,P3.0
JNCSTOP3
ACALLDELAY
MOVC,P3.0
JNCSTOP3
CLRTR0
MOVA,27H
CJNEA,#00H,PPP1
MOVA,#0FFH
MOV27H,A
MOV28H,#01H
SETBTR0
AJMPPP1
PPP1:CJNEA,#02H,PPP
MOV27H,#00H
MOV28H,#01H
AJMPPP1
PPP:INC27H
MOV28H,#01H
PP1:POPPSW
POPACC
RETI
JJJ:MOVC,P3.1;按键消振
JCQQQ
ACALLDELAY
MOVC,P3.1
JCQQQ
STOP4:MOVC,P3.1
JNCSTOP4
ACALLDELAY
MOVC,P3.1
JNCSTOP4
CLRTR0
MOVA,28H
CJNEA,#02H,GGG1
MOVA,#01H
MOV27H,A
MOV28H,A
SETBTR0
LJMPPP1
GGG1:CJNEA,#00H,GGG
MOV27H,#02H
MOV28H,#02H
LJMPPP1
GGG:INC28H
MOV27H,28H
LJMPPP1

分 -->
回复

使用道具 举报

千问 | 2021-1-27 06:05:17 | 显示全部楼层
那不懂呀
回复

使用道具 举报

千问 | 2021-1-27 06:05:17 | 显示全部楼层
这是一个交通灯单片机的代码,我主要是看不懂整个代码的意思,不能理解作者的真正意图,求助各位大大
回复

使用道具 举报

千问 | 2021-1-27 06:05:17 | 显示全部楼层
源程序后面有写注释。
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行