?? final3.lst
字號:
頁 1
09-24-04
14:00:41
偉福匯編器 V5.00 Copyright (c) 1989, 2001 by CHY
地址 機(jī)器碼 源程序
;********************************************************
; Variables definition
;********************************************************
writeflag equ 21h
readflag equ 22h
addflag equ 23h
flengtha equ 24h
flengthb equ 25h
flengthc equ 31h
comaddress equ 26h
lightflag equ 27h
startadda equ 28h
startaddb equ 29h
startaddc equ 30h
startaddflag equ 31h
org 00h
0000 020026 jmp main
org 23h
0023 020051 jmp gg
;*********************************************************
; System initialization
;********************************************************
0026 12038C main: call initial
0029 120418 lcall highres ;RAM置成高阻態(tài)
002C 12040B lcall disable ;不使能RAM
002F 758150 mov sp,#50h
0032 C28E clr tr1
0034 758700 mov pcon,#00h
0037 759850 mov scon,#50h
003A 758921 mov tmod,#21h
003D 758DFE mov th1,#0feh
0040 758BFE mov tl1,#0feh
0043 C2A9 clr et0
0045 D2AF loop1: setb ea
0047 C299 clr ti
0049 C298 clr ri
004B D28E setb tr1
004D D2AC setb es
004F 80FE jmp $
;************************************************
; Interrupt routines
;***********************************************
G:\控制工程課間\DANPIANJI\單片機(jī)\RENWU\FINAL3\FINAL3.ASM
頁 2
09-24-04
14:00:41
偉福匯編器 V5.00 Copyright (c) 1989, 2001 by CHY
地址 機(jī)器碼 源程序
0051 C2AC gg: clr es
0053 10981B jbc ri,writeflag0 ;是接受中斷跳轉(zhuǎn)
0056 A822 mov r0,readflag
0058 B80010 cjne r0,#00h,main9 ;判斷讀指令發(fā)完了沒有?
005B A823 mov r0,addflag
005D B8000B cjne r0,#00h,main9 ;判斷文件大小發(fā)完了沒有?
0060 A831 mov r0,startaddflag
0062 B80006 cjne r0,#00h,main9
0065 12030B call sendbyte
0068 0201FF ljmp wait
006B 1203F7 main9: call jmain
006E 0201FF ljmp wait
0071 A821 writeflag0: mov r0,writeflag
0073 B8006D cjne r0,#00H,readflag0 ;判斷讀指令字發(fā)完了沒有,是則接著發(fā)文件大小
0076 A823 mov r0,addflag
0078 B80309 cjne r0,#03h,waddflag2 ;發(fā)送文件大小高字節(jié)
007B E599 mov a,sbuf
007D FF mov r7,a ;高字節(jié)存在r7中
007E 752302 mov addflag,#02h
0081 0201FF ljmp wait
0084 A823 waddflag2: mov r0,addflag ;發(fā)送文件大小次高字節(jié)
0086 B80209 cjne r0,#02h,waddflag1
0089 E599 mov a,sbuf
008B FE mov r6,a ;次高字節(jié)存在r6中
008C 752301 mov addflag,#01h
008F 0201FF ljmp wait
0092 A823 waddflag1: mov r0,addflag ;發(fā)送文件大小低字節(jié)
0094 B80109 cjne r0,#01h,waddflag0
0097 E599 mov a,sbuf
0099 FD mov r5,a ;低字節(jié)存在r5中
009A 752300 mov addflag,#00h
009D 0201FF ljmp wait
00A0 A823 waddflag0: mov r0,addflag
00A2 B80038 cjne r0,#00h,main5
00A5 A831 startaddress: mov r0,startaddflag ;文件大小發(fā)完,接著發(fā)起始地址
00A7 B8030A cjne r0,#03h,startaddress2 ;發(fā)送起始地址高字節(jié)
00AA E599 mov a,sbuf
00AC F530 mov startaddc,a
00AE 753102 mov startaddflag,#02h
00B1 0201FF ljmp wait
00B4 A831 startaddress2: mov r0,startaddflag ;發(fā)送起始地址次高字節(jié)
00B6 B8020A cjne r0,#02h,startaddress3
00B9 E599 mov a,sbuf
00BB F529 mov startaddb,a
00BD 753101 mov startaddflag,#01h
00C0 0201FF ljmp wait
00C3 A831 startaddress3: mov r0,startaddflag ;發(fā)送起始地址低字節(jié)
00C5 B8010A cjne r0,#01h,startaddress4
G:\控制工程課間\DANPIANJI\單片機(jī)\RENWU\FINAL3\FINAL3.ASM
頁 3
09-24-04
14:00:41
偉福匯編器 V5.00 Copyright (c) 1989, 2001 by CHY
地址 機(jī)器碼 源程序
00C8 E599 mov a,sbuf
00CA F528 mov startadda,a
00CC 753100 mov startaddflag,#00h
00CF 0201FF ljmp wait
00D2 A831 startaddress4: mov r0,startaddflag
00D4 B80006 cjne r0,#00h,main5
00D7 120202 loop4: call receivebyte
00DA 0201FF ljmp wait
00DD 1203F7 main5: call jmain
00E0 0201FF ljmp wait
00E3 A822 readflag0: mov r0,readflag
00E5 B80065 cjne r0,#00H,writeflag1 ;判斷指令字發(fā)完了沒有?有則接著發(fā)文件大小
00E8 A823 mov r0,addflag
00EA B80309 cjne r0,#03h,raddflag2
00ED E599 mov a,sbuf
00EF FF mov r7,a
00F0 752302 mov addflag,#02h
00F3 0201FF ljmp wait
00F6 A823 raddflag2: mov r0,addflag
00F8 B80209 cjne r0,#02h,raddflag1
00FB E599 mov a,sbuf
00FD FE mov r6,a
00FE 752301 mov addflag,#01h
0101 0201FF ljmp wait
0104 A823 raddflag1: mov r0,addflag
0106 B80109 cjne r0,#01h,startaddress5
0109 E599 mov a,sbuf
010B FD mov r5,a
010C 752300 mov addflag,#00h
010F 0201FF ljmp wait
0112 A823 startaddress5: mov r0,addflag
0114 B80030 cjne r0,#00h,main7 ;文件大小發(fā)完了,發(fā)起始地址
0117 A831 mov r0,startaddflag
0119 B8030A cjne r0,#03h,startaddress6
011C E599 mov a,sbuf
011E F530 mov startaddc,a
0120 753102 mov startaddflag,#02h
0123 0201FF ljmp wait
0126 A831 startaddress6: mov r0,startaddflag
0128 B8020A cjne r0,#02h,startaddress7
012B E599 mov a,sbuf
012D F529 mov startaddb,a
012F 753101 mov startaddflag,#01h
0132 0201FF ljmp wait
G:\控制工程課間\DANPIANJI\單片機(jī)\RENWU\FINAL3\FINAL3.ASM
頁 4
09-24-04
14:00:41
偉福匯編器 V5.00 Copyright (c) 1989, 2001 by CHY
地址 機(jī)器碼 源程序
0135 A831 startaddress7: mov r0,startaddflag
0137 B8010D cjne r0,#01h,main7
013A E599 mov a,sbuf
013C F528 mov startadda,a
013E 753100 mov startaddflag,#00h
0141 120286 call sendintial
0144 0201FF ljmp wait
0147 1203F7 main7: call jmain
014A 0201FF ljmp wait
014D A821 writeflag1: mov r0,writeflag
014F B80112 cjne r0,#01h,readflag1
0152 1203E3 call judge55
0155 30D506 jnb f0,main3
0158 752100 mov writeflag,#00h
015B 0201FF ljmp wait
015E 1203F7 main3: call jmain
0161 0201FF ljmp wait
0164 A822 readflag1: mov r0,readflag
0166 B80112 cjne r0,#01h,writeflag2
0169 1203ED call judgeaa
016C 30D506 jnb f0,main4
016F 752200 mov readflag,#00h
0172 0201FF ljmp wait
0175 1203F7 main4: call jmain
0178 0201FF ljmp wait
017B A821 writeflag2: mov r0,writeflag
017D B80212 cjne r0,#02h,readflag2
0180 1203E3 call judge55
0183 30D506 jnb f0,main1
0186 752101 mov writeflag,#01h
0189 0201FF ljmp wait
018C 1203F7 main1: call jmain
018F 0201FF ljmp wait
0192 A822 readflag2: mov r0,readflag
0194 B80212 cjne r0,#02h,writeflag3
0197 1203ED call judgeaa
019A 30D506 jnb f0,main2
019D 752201 mov readflag,#01h
01A0 0201FF ljmp wait
01A3 1203F7 main2: call jmain
01A6 0201FF ljmp wait
01A9 A821 writeflag3: mov r0,writeflag
01AB B80312 cjne r0,#03h,readflag3
01AE 1203E3 call judge55
01B1 30D506 jnb f0,main10
01B4 752102 mov writeflag,#02h
G:\控制工程課間\DANPIANJI\單片機(jī)\RENWU\FINAL3\FINAL3.ASM
頁 5
09-24-04
14:00:41
偉福匯編器 V5.00 Copyright (c) 1989, 2001 by CHY
地址 機(jī)器碼 源程序
01B7 0201FF ljmp wait
01BA 1203F7 main10: call jmain
01BD 0201FF ljmp wait
01C0 A822 readflag3: mov r0,readflag
01C2 B80312 cjne r0,#03h,writeflag4
01C5 1203ED call judgeaa
01C8 30D506 jnb f0,main8
01CB 752202 mov readflag,#02h
01CE 0201FF ljmp wait
01D1 1203F7 main8: call jmain
01D4 0201FF ljmp wait
01D7 A821 writeflag4: mov r0,writeflag
01D9 B8040C cjne r0,#04h,readflag4
01DC 1203E3 call judge55
01DF 30D506 jnb f0,readflag4
01E2 752103 mov writeflag,#03h
01E5 0201FF ljmp wait
01E8 A822 readflag4: mov r0,readflag
01EA B8040C cjne r0,#04h,main6
01ED 1203ED call judgeaa
01F0 30D506 jnb f0,main6
01F3 752203 mov readflag,#03h
01F6 0201FF ljmp wait
01F9 1203F7 main6: call jmain
01FC 0201FF ljmp wait
01FF D2AC wait: setb es
0201 32 reti
;********************************************************************
; Subroutines
;********************************************************************
0202 C2B2 receivebyte: clr p3.2 ;指示燈
0204 D2B3 setb p3.3
0206 E599 mov a,sbuf
0208 C2B4 clr p3.4 ;建立ram地址
020A A830 mov r0,startaddc ;判斷是不是大于64k
020C B80102 cjne r0,#01,loopa ;寫RAM子程序
020F D2B4 setb p3.4
0211 852890 loopa: mov p1,startadda
0214 8529A0 mov p2,startaddb
0217 120408 lcall enable
021A 120413 lcall writeable
021D F580 mov p0,a
021F 12041D lcall delay1ms
G:\控制工程課間\DANPIANJI\單片機(jī)\RENWU\FINAL3\FINAL3.ASM
頁 6
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -