?? mjasms.lst
字號(hào):
00C8 T2CON EQU 0C8H
00CA RCAP2L EQU 0CAH
00CB RCAP2H EQU 0CBH
00CC TL2 EQU 0CCH
00CD TH2 EQU 0CDH
;cpu 8xc52
ORG 0000H
0000 020100 LJMP MAIN
ORG 0023H
00A6 WDTRST EQU 0A6H ;看門狗定時(shí)器寄存器
;************宏定義
0002 ADDR_SYS EQU 02H
0004 ADDR_SYS1 EQU 04H
0006 ADDR_SYS2 EQU 06H
0003 ADDR_TMP EQU 03H
0005 ADDR_BAK EQU 05H
0007 ADDR_DATA EQU 07H
00FC CONST_1MSH EQU 0FCH
0065 CONST_1MSL EQU 065H ;按1ms定時(shí),定時(shí)器初值
00DC CONST_10MSH EQU 0DCH
0000 CONST_10MSL EQU 000H
0000 CONST_100MSH EQU 00H
0000 CONST_100MSL EQU 00H
0050 _R1 EQU 50H
0051 _R2 EQU 51H
0052 _R3 EQU 52H
;口線定義
0091 igb BIT P1.1
0096 BIT_ESCL BIT P1.6
0097 BIT_ESDA BIT P1.7
0080 in1 BIT P0.0
0081 in2 BIT P0.1
0082 in3 BIT p0.2
;--用戶位定義
0010 BIT_EEF BIT 22H.0
0011 bit_OK BIT 22H.1
0012 BIT_ONLINE BIT 22H.2
0013 BIT_TINYTIMEOUT BIT 22H.3
0014 BIT_LASTBYTE BIT 22H.4
0015 BIT_LASTOK BIT 22H.5
0016 BIT_IDLE BIT 22H.6
0017 chr_ok BIT 22H.7
;--寄存器定義
;COMM_LEN EQU 59h
0010 STACK_TOP EQU 10H ;定義堆棧首址48
0060 BUF_SEND EQU 60H
;BUF_EOF EQU 6FH
0080 BUF_DATA EQU 80H
;BUF_REOF EQU 0FFH
;---------------------------------------------------------------------------------------
ORG 0100H
0100 MAIN:
0100 758110 MOV SP,#STACK_TOP ;棧
0103 75D000 MOV PSW,#00H ;0號(hào)工作區(qū)
0106 7580FF MOV P0,#0FFH
0109 7590FF MOV P1,#0FFH
010C 75A0FF MOV P2,#0FFH
010F 75B0FF MOV P3,#0FFH
0112 D297 SETB BIT_ESDA
0114 D296 SETB BIT_ESCL
;--------------------RAM空間清0及測(cè)試----------------------------
0116 7800 MOV R0,#0
0118 M_1:
0118 7600 MOV @R0,#0
011A D8FC DJNZ R0,M_1
;--定時(shí)器T0,T1參數(shù)設(shè)置
011C 758911 MOV TMOD,#00010001B ;定時(shí)器T0,T1工作于方式1(16位定時(shí))
011F 758CFC MOV TH0,#CONST_1MSH
0122 758A65 MOV TL0,#CONST_1MSL
;--串口參數(shù)設(shè)置
0125 759870 MOV SCON,#01110000B ;sm0 sm1 sm2 ren tb8 rb8 ti ri
0128 75CDFF MOV TH2,#0FFH
012B 75CC70 MOV TL2,#070H
012E 75CBFF MOV RCAP2H,#0FFH ;波特率 115200 57600 38400 28800 19200 9600 7200 4800 3600 2400
0131 75CADC MOV RCAP2L,#0DCH ;TH2:TL2= FF:FD FF:FA FF:F7 FF:F4 FF:EE FF:DC FF:D0 FF:B8 FF:A0 FF:70
0134 75C834 MOV T2CON,#00110100B ;TF2 EXF2 RCLK TCKL EXEN2 TR2 C/T2 CP/RL2
0137 75B800 MOV IP,#00000000B ;中斷優(yōu)先 * * PT2 PS PT1 PX1 PT0 PX0
013A 75A810 MOV IE,#00010000B ;中斷使能寄存器 EA X ET2 ES ET1 EX1 ET0 EX0
;SETB EA
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
013D 120349 LCALL DELAY10MS
0140 D291 SETB IGB
0142 120349 LCALL Delay10MS
0145 C291 CLR IGB
0147 12035F LCALL DELAY100MS
014A 12035F LCALL DELAY100MS
014D D291 SETB IGB
014F 12015B LCALL INITMODEM
0152 wait:
0152 12036E lcall delay1000ms
0155 120224 lcall sms_send
0158 2152 ajmp wait
015A 22 RET
;INCLUDE MODEM.ASM
;--------------------------------------------------------------------
; 本程序處理MODEM的初始化,
;
; InitModem --初始化MODEM,19200 BPS,自動(dòng)應(yīng)答
;
;--------------------------------------------------------------------
015B InitModem:
015B C2AC CLR ES
015D C298 CLR RI
015F 7860 MOV R0,#BUF_SEND
0161 90038D MOV DPTR,#TABLE_RESET
0164 7A05 MOV R2,#5
0166 IM_1:
0166 E4 CLR A
0167 93 MOVC A,@A+DPTR
0168 F6 MOV @R0,A
0169 A3 INC DPTR
016A 08 INC R0
016B DAF9 DJNZ R2,IM_1
016D 00 NOP
016E 00 NOP
016F IM_2:
016F 7860 MOV R0,#BUF_SEND
0171 7A05 MOV R2,#5
0173 1202D3 lCALL ATSEND
0176 7880 MOV R0,#BUF_DATA
0178 7A0A MOV R2,#10
017A IM_21:
017A 1202B4 lCALL WAIT_RI
017D 40F0 JC IM_2
017F C298 CLR RI
0181 E599 MOV A,SBUF
0183 F6 MOV @R0,A
0184 08 INC R0
0185 DAF3 DJNZ R2,IM_21
0187 120320 lCALL CHECK
018A 3017E2 jNb chr_ok,im_2
018D 120349 lCALL DELAY10MS
;RET
0190 7860 MOV R0,#BUF_SEND
0192 900392 MOV DPTR,#TABLE_SETSMS0
0195 7A0A MOV R2,#10
0197 IM_3:
0197 E4 CLR A
0198 93 MOVC A,@A+DPTR
0199 F6 MOV @R0,A
019A A3 INC DPTR
019B 08 INC R0
019C DAF9 DJNZ R2,IM_3
019E 00 NOP
019F 00 NOP
01A0 IM_4:
01A0 7860 MOV R0,#BUF_SEND
01A2 7A0A MOV R2,#10
01A4 1202D3 lCALL ATSEND
01A7 7880 MOV R0,#BUF_DATA
01A9 7A0A MOV R2,#10
01AB IM_41:
01AB 1202B4 lCALL WAIT_RI
01AE 40F0 JC IM_4
01B0 C298 CLR RI
01B2 E599 MOV A,SBUF
01B4 F6 MOV @R0,A
01B5 08 INC R0
01B6 DAF3 DJNZ R2,IM_41
01B8 120320 lCALL CHECK
01BB 3017E2 jNb chr_ok,im_4
01BE 120349 lCALL DELAY10MS
01C1 7860 MOV R0,#BUF_SEND
01C3 90039C MOV DPTR,#TABLE_SETSMS1
01C6 7A17 MOV R2,#23
01C8 IM_5:
01C8 E4 CLR A
01C9 93 MOVC A,@A+DPTR
01CA F6 MOV @R0,A
01CB A3 INC DPTR
01CC 08 INC R0
01CD DAF9 DJNZ R2,IM_5
01CF 00 NOP
01D0 00 NOP
01D1 IM_6:
01D1 7860 MOV R0,#BUF_SEND
01D3 7A17 MOV R2,#23
01D5 1202D3 lCALL ATSEND
01D8 7880 MOV R0,#BUF_DATA
01DA 7A0A MOV R2,#10
01DC IM_61:
01DC 1202B4 lCALL WAIT_RI
01DF 40F0 JC IM_6
01E1 C298 CLR RI
01E3 E599 MOV A,SBUF
01E5 F6 MOV @R0,A
01E6 08 INC R0
01E7 DAF3 DJNZ R2,IM_61
01E9 120320 lCALL CHECK
01EC 3017E2 jNb chr_ok,im_6
01EF 120349 lCALL DELAY10MS
01F2 7860 MOV R0,#BUF_SEND
01F4 9003B3 MOV DPTR,#TABLE_GOGSM
01F7 7A0A MOV R2,#10
01F9 IM_7:
01F9 E4 CLR A
01FA 93 MOVC A,@A+DPTR
01FB F6 MOV @R0,A
01FC A3 INC DPTR
01FD 08 INC R0
01FE DAF9 DJNZ R2,IM_7
0200 00 NOP
0201 00 NOP
0202 IM_8:
0202 7860 MOV R0,#BUF_SEND
0204 7A0A MOV R2,#10
0206 1202D3 lCALL ATSEND
0209 7880 MOV R0,#BUF_DATA
020B 7A0A MOV R2,#10
020D IM_81:
020D 1202B4 lCALL WAIT_RI
0210 40F0 JC IM_8
0212 C298 CLR RI
0214 E599 MOV A,SBUF
0216 F6 MOV @R0,A
0217 08 INC R0
0218 DAF3 DJNZ R2,IM_81
021A 120320 lCALL CHECK
021D 3017E2 jNb chr_ok,im_8
0220 120349 lCALL DELAY10MS
0223 22 ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0224 sms_send:
0224 7860 MOV R0,#BUF_SEND
0226 9003BD MOV DPTR,#TABLE_msglen
0229 7A0B MOV R2,#11
022B SS_3:
022B E4 CLR A
022C 93 MOVC A,@A+DPTR
022D F6 MOV @R0,A
022E A3 INC DPTR
022F 08 INC R0
0230 DAF9 DJNZ R2,SS_3
0232 00 NOP
0233 00 NOP
0234 SS_4:
0234 7860 MOV R0,#BUF_SEND
0236 7A0B MOV R2,#11
0238 1202D3 lCALL ATSEND
023B 7880 MOV R0,#BUF_DATA
023D 7A0A MOV R2,#10
023F SS_41:
023F 1202B4 lCALL WAIT_RI
0242 40F0 JC SS_4
0244 C298 CLR RI
0246 E599 MOV A,SBUF
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -