⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gprs.asm

📁 关于单片机(51系列)通过GPRS模块(LT8030)和服务器进行通信
💻 ASM
📖 第 1 页 / 共 2 页
字号:
stack   segment          para stack 'stack'
        db     256       dup(0)
stack   ends   
DATA  SEGMENT      PARA  PUBLIC   'DATA'
WEN1    DB      'AT+IISP1=*99***1#',0DH,0AH,00H
WEN2    DB      'AT+IDNS1=211.136.18.171',0DH,0AH,00H
WEN3    DB      'AT+IUSRN=WAP',0DH,0AH,00H
WEN4    DB      'AT+IPWD=WAP',0DH,0AH,00H
WEN5    DB      'AT+IMIS="AT+CGDCONT=1,IP,CMNET"',0DH,0AH,00H
WEN6    DB      'AT+IXRC=0',0DH,0AH,00H
WEN7    DB      'AT+IMTYP=2',0DH,0AH,00H
WEN8    DB      'AT+ISTCP:203.93.5.55,1024',0DH,0AH        ;open a socket
WEN9    DB      'AT+ISSND%:',00H,00H,00H,','                               ;send data to a socket
        DB      '16:123456abcdefghij',0DH,0AH,00H
WEN11   DB      'AT+ISST:XXX',0DH,0AH,00H                  ;socket stued
WEN12   DB      'AT+ISRCV:XXX',0DH,0AH,00H                 ;recived data
WEN13   DB      'AT+ISCLS:XXX',0DH,0AH,00                  ;close socket
WEN16   DB      'I/', 00H,00H,00H,','                           ;XXX
WEN20   DB       256    DUP(0)
WEN30   DB      'd:\MASM\link.EXE'
WEN31   DB       30360   DUP(?)
WEN32   DB      '8096:'
WEN38   DB      'D120D120D120'
WEN50   DB      'AT+IHSRV=203.93.5.55:1024',0DH,0AH    
WEN51   DB      'AT+IDSTR=EEEEE',0DH,0AH,00H
WEN52   DB      'AT+ISTYP=0',0DH,0AH,00H
WEN53   DB      'AT+ISNSI="5,8,N,1,0"',0DH,0AH,00H
WEN54   DB      'AT+IMCBF=1',0DH,0AH,00H
WEN55   DB      'AT+ISNMD',0DH,0AH,00H
WEN56   DB      'EEEEE',0DH,0AH,00H
WEN58   DB       2BH,2BH,2BH,0DH
WEN60   DB      'AT+I',0DH
DATA    ENDS
code    segment          para  public 'code'
start   proc   far
        assume cs:       code,ds:data,ss:stack
        mov     ax,     data
        mov     ds,     ax
        push   dx
        mov    ax,       0
        mov    bx,       0
        push   ax
tart:   mov    dx,       3fbh
        mov    al,       80h
        out    dx,       al
        mov    dx,       3f8h
        mov    AL,     00CH
        OUT     DX,    AL
	INC	DX
        MOV     AX,    0H
        OUT     DX,    AL
        MOV     DX,    3FBH
        MOV     AL,    00000011B
        OUT     DX,    AL
	INC	DX
        MOV     AL,    00000011B
        OUT     DX,    AL
        MOV     DX,    3F9H
        MOV     AL,    0H
        OUT     DX,    AL
        MOV     BX,     OFFSET  WEN20+80
        MOV     AL,     0
        MOV     [BX],   AL
        ;
	NOP
	NOP
	NOP
	NOP
	NOP

RDSTS:  MOV     DX,   3FDH
        IN      AL,    DX
        TEST    AL,    1EH
        JNZ      ERR01
TSDOK:  MOV     BX,     offset WEN1             ;'AT+IISP'
        MOV     DX,    0019                      ;'send many'
        CALL    TSCHR
TSDOK1: MOV     CX,     22                      ;'receive many'
        CALL    RECVCHR
        MOV     BX,     OFFSET  WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     TSDOK
        MOV     CX,     22
        CALL    MKCHR
IDNS1:  MOV     BX,     OFFSET WEN2             ;'AT+IDNS1'
        MOV     DX,     25                      ;'send many'
        CALL    TSCHR
        MOV     CX,     30                      ;'receive many'
        CALL    RECVCHR
        MOV     BX,     OFFSET  WEN20+80
        MOV     AL,     [BX]
        SUB    AL,     4BH
        JNZ     IDNS1
        MOV     CX,     21
        CALL    MKCHR
IUSRN:  MOV     BX,     OFFSET  WEN3            ;'AT+IUSRN'
        MOV     DX,       14                    ;'send many'
        CALL    TSCHR
        MOV     CX,       18                    ;'receive many'
        CALL    RECVCHR
        MOV     BX,     OFFSET  WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     IUSRN
        MOV     CX,       20
        CALL      MKCHR
        JMP     TSDOK2
ERR01:  JMP     ERR0
TSDOK2: MOV     BX,     OFFSET  WEN4            ;'AT+IPWD'
        MOV     DX,       13                    ;'send many'
        CALL    TSCHR
        MOV     CX,        20                   ;'receive many'
        CALL    RECVCHR
        MOV     BX,     OFFSET  WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     TSDOK2
        MOV     CX,        20
        CALL    MKCHR
IMIS:   MOV     BX,     OFFSET  WEN5            ;'AT+IMIS'
        MOV     DX,        33
        CALL    TSCHR
        MOV     CX,        22
        CALL    RECVCHR
        MOV     BX,     OFFSET  WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     IMIS
        MOV     CX,        20
        CALL    MKCHR
IXRC:   MOV     BX,     OFFSET  WEN6            ;'AT+IXRC'
        MOV     DX,        10
        CALL    TSCHR
        MOV     CX,        15
        CALL    RECVCHR
        MOV     BX,     OFFSET  WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     IXRC
        MOV     CX,        13
        CALL    MKCHR
IMTYP:  MOV     BX,     OFFSET  WEN7            ;'AT+IMTYP'
        MOV     DX,         12
        CALL    TSCHR
        MOV     CX,          18
        CALL    RECVCHR
        MOV     BX,     OFFSET WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     IMTYP
        MOV     CX,          18
        CALL    MKCHR
SNDTCP: MOV     BX,     OFFSET  WEN8
        MOV     DX,          26                   ;'send many'
        CALL    TSCHR
        MOV     CX,          22
        CALL    RECVCHR
        MOV     CX,          24
        CALL    KCHR
        CALL    SCAR
        MOV     CX,     1
        CALL    MKCHR
        NOP
        NOP
        NOP
        NOP
READF:  MOV     AX,     3D00H
        MOV     DX,     OFFSET  WEN30
        INT     21H
        MOV     BX,     AX
        MOV     AH,     3FH
        MOV     CX,     30360
        MOV     DX,     OFFSET  WEN31
        INT     21H
        MOV     AH,     3EH
        INT     21H
        NOP
        NOP
        NOP
        NOP
BUZADD: MOV     SI,     OFFSET  WEN38
        MOV     DI,     OFFSET  WEN31
        MOV     CX,     0012
BUZAB:  MOV     AL,     [SI]
        MOV     [DI],   AL
        INC     SI
        INC     DI
        DEC     CX
        JNZ     BUZAB
        NOP
        NOP
SND1234:MOV     BX,     OFFSET  WEN9
        MOV     DX,     33
        CALL    TSCHR
        MOV     CX,     18
        CALL    RECVCHR
        MOV     CX,     6
        CALL    MKCHR
SNDHSR: MOV     BX,     OFFSET  WEN50            ;'AT+IHSRV'
        MOV     DX,         26
        CALL    TSCHR
        MOV     CX,          20
        CALL    RECVCHR
        MOV     BX,     OFFSET WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     SNDHSR
        MOV     CX,          18
        CALL    MKCHR
SNDSTR: MOV     BX,     OFFSET  WEN51            ;'AT+IDSTR'
        MOV     DX,         15
        CALL    TSCHR
        MOV     CX,          20
        CALL    RECVCHR
        MOV     BX,     OFFSET WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     SNDSTR
        MOV     CX,          18
        CALL    MKCHR
        NOP
ISTYP:  MOV     BX,     OFFSET  WEN52            ;'AT+ISTYP'
        MOV     DX,         11
        CALL    TSCHR
        MOV     CX,          20
        CALL    RECVCHR
        MOV     BX,     OFFSET WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     ISTYP
        MOV     CX,          18
        CALL    MKCHR
ISNSI:  MOV     BX,     OFFSET  WEN53            ;'AT+ISNSI'
        MOV     DX,         21
        CALL    TSCHR
        MOV     CX,          22
        CALL    RECVCHR
        MOV     BX,     OFFSET WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     ISNSI
        MOV     CX,          18
        CALL    MKCHR
IMCBF:  MOV     BX,     OFFSET  WEN54            ;'AT+IMCBF'
        MOV     DX,         11
        CALL    TSCHR
        MOV     CX,          22
        CALL    RECVCHR
        MOV     BX,     OFFSET WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     IMCBF
        MOV     CX,          18
        CALL    MKCHR
        NOP
ISNMD:  MOV     BX,     OFFSET  WEN55            ;'AT+ISNMD'
        MOV     DX,         9
        CALL    TSCHR
        MOV     CX,          22
        CALL    RECVCHR
        MOV     BX,     OFFSET WEN20+80
        MOV     AL,     [BX]
        SUB     AL,     4BH
        JNZ     ISNMD
        MOV     CX,          18
        CALL    MKCHR
        NOP
        NOP
        MOV     CX,     1
RSNDB:  PUSH    CX
        NOP
RSND1:  MOV     BX,     OFFSET  WEN9
        MOV     DX,     33
        CALL    TSCHR
        NOP
        POP     CX
        LOOP   RSNDB
        NOP
SNDMAP: MOV     BX,     OFFSET  WEN31
        MOV     DX,     28096
        CALL    TSCHR
        NOP
        NOP
        NOP
        NOP
SNDEEE: MOV     BX,     OFFSET  WEN56
        MOV     DX,     5
        CALL    TSCHR
;ISST:  MOV     BX,     OFFSET  WEN11
;       MOV     DX,     12
;       CALL    TSCHR
;       MOV     CX,     18
;       CALL    RECVCHR
;       MOV     CX,     20
;       CALL    MKCHR
;       NOP
;LKLK:  MOV     DX,   3FDH
;       IN      AL,    DX
;       TEST    AL,    1EH
;       JNZ      LKLK
        NOP
        NOP
ANM:    MOV     CX,     40000
BNM:    NOP
        NOP
        LOOP    BNM
        NOP
        MOV     CX,     10
SNDCLS: PUSH    CX

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -