SEND: MOV A,#3FH
MOV SBUF,A
JNB
ti,$ ;与PC机进行握手
CLR TI
JNB RI,$
CLR RI
MOV A,SBUF
CJNE A,#2EH,SEND
MOV A,R7
MOV R3,A ;对总字节数进行暂存
MOV SBUF,A
JNB TI,$
CLR TI
MOV R6,#00H
MOV R0,#BLK1 ;数据存取位置
SEND1: MOV A,@R0
MOV SBUF,A ;发送数据
JNB TI,$
CLR TI
ADD A,R6 ;校验
MOV R6,A
INC R0
DJNZ R7,SEND1 ;判断是否已经传送完
MOV A,R6
MOV SBUF,A
JNB TI,$
CLR TI
MOV A,SBUF
CJNE A,#46H,SEND3 ;通PC机的应答进行判断
SEND2: MOV R0,#BLK1 ;重新再传数据
MOV R6,#00H
MOV A,R3
MOV R7,A
AJMP SEND1
SEND3: RET
一周热门 更多>