导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→那位大侠帮我解释一下程序!!!(救命呀)thank you [yihui]

 *第22702篇: 那位大侠帮我解释一下程序!!!(救命呀)thank you !!!!!

  
楼 主:yihui 2004年6月7日09:32
 那位大侠帮我解释一下程序!!!(救命呀)thank you !!!!!
(8031--------74ls373-----------六位LED)此为数码显示程序
显示格式:XX--XX
               分   秒
ST_ADDR EQU 4000H
BUF EQU 23H
SBF EQU 22H
MBF EQU 21H
PORT1 EQU 1B08H
PORT2 EQU 1B10H
 ORG ST_ADDR
 LJMP MAIN
 ORG ST_ADDR+200H
MAIN: MOV DPTR,#CLOCK ;SET INTERRUPT VECTOR 3
 MOV R1,DPL
 MOV R2,DPH
 MOV DPTR,#1BH
 MOV A,#02
 MOVX @DPTR,A
 INC DPTR
 MOV A,R2
 MOVX @DPTR,A
 INC DPTR
 MOV A,R1
 MOVX @DPTR,A
 MOV  R0,#40H
 MOV A,#00H
 MOV @R0,A
 INC R0
 MOV @R0,A
 INC R0
 MOV A,#0AH
 MOV @R0,A
 INC R0
 MOV @R0,A
 MOV A,#00H
 INC R0
 MOV @R0,A
 INC R0
 MOV @R0,A

 ANL TMOD,#0FH
 ORL TMOD,#10H

 ORL TL1,#00H
 MOV TH1,#38H

 MOV BUF,#00H
 MOV SBF,#00H
 MOV MBF,#00H

 SETB ET1
 SETB EA
 SETB TR1

DS1: MOV R0,#40H
 MOV R2,#20H

DS2: MOV DPTR,#PORT1
 MOV A,@R0
 LCALL TABLE
 MOVX @DPTR,A

 MOV DPTR,#PORT2
 MOV A,R2
 MOVX @DPTR,A

 MOV R3,#0FFH
 DJNZ R3,$

 INC R0
 CLR C
 MOV A,R2
 RRC A
 MOV R2,A
 JNZ DS2

 MOV R0,#45H
 MOV A,SBF
 LCALL GET

 DEC R0
 DEC R0
 MOV A,MBF
 LCALL GET
 SJMP DS1

TABLE: INC A
 MOVC A,@A+PC
 RET
 DB 3FH
 DB 06H
 DB 5BH
 DB 4FH
 DB 66H
 DB 6DH
 DB 7DH
 DB 07H
 DB 7FH
 DB 6FH
 DB 40H

GET: MOV R1,A
 ANL A,#0FH
 MOV @R0,A

 DEC R0
 MOV A,R1
 SWAP A
 ANL A,#0FH
 MOV @R0,A
 DEC R0
 RET

CLOCK: MOV TL1,#00H
 MOV TH1,#38H
 PUSH PSW
 PUSH ACC

 INC BUF
 MOV A,BUF
 CJNE A,#0AH,QUIT

 MOV BUF,#00H
 MOV A,SBF
 INC A
 DA A
 MOV SBF,A

 CJNE A,#60H,QUIT
 MOV SBF,#00H
 MOV A,MBF
 INC A
 DA A
 MOV MBF,A

 CJNE A,#60H,QUIT
 MOV MBF,#00H

QUIT: POP ACC
 POP PSW
 RETI
 END


>>>>>>对该主题发表你的看法

本主题贴数1,分页: [第1页]


[上一篇主题]:8051的硬件堆栈除了保存返回地址还保存什么数据?

[下一篇主题]:求助!本人学习时遇到一个问题,请各位大侠指教!