📄 主机.txt
字号:
CS BIT P1.2
PWR BIT P3.1
TXEN BIT P1.3
ORG 0000H
LJMP MAIN
ORG 0200H
MAIN: CLR P1.0
MOV TMOD,#20H
MOV SCON,#40H
MOV PCON,#00H
MOV TL1,#0FAH
MOV TH1,#0FAH
SETB TR1
CLR P1.1
CLR A
LCALL START1
LCALL TIME
LCALL START2
LJMP MAIN
START1: SETB TXEN
CPL P1.1
MOV R5,#00H; 校验和
MOV A,#0FFH; 发送FFh后紧跟00h不易出错,作为起始标志
MOV SBUF,A
JNB TI,$
CLR TI
ADD A,R5; 累加发送数据
MOV R5,A; 存储校验和
MOV A,#0FFH
MOV SBUF,A
JNB TI,$
CLR TI
ADD A,R5; 累加发送数据
MOV R5,A; 存储校验和
MOV A,#00H
MOV SBUF,A
JNB TI,$
CLR TI
ADD A,R5; 累加发送数据
MOV R5,A; 存储校验和
STEP1: CLR A ; 发送选择数据
MOV A,01H
MOV SBUF,A
JNB TI,$
CLR TI
ADD A,R5;累加发送数据
MOV R5,A;存储校验和
MOV SBUF,A
JNB TI,$
CLR TI
CPL P1.1
CPL TXEN
JNZ RI,$
CLR RI
RET
TIME: MOV R0 ,0FFH
TIME1 MOV R1 ,0FFH
DJNZ R1,TIME1
DJNZ R0,TIME
RET
START2: SETB TXEN
CPL P1.1
MOV R5,#00H; 校验和
MOV A,#0FFH; 发送FFh后紧跟00h不易出错,作为起始标志
MOV SBUF,A
JNB TI,$
CLR TI
ADD A,R5; 累加发送数据
MOV R5,A; 存储校验和
MOV A,#0FFH
MOV SBUF,A
JNB TI,$
CLR TI
ADD A,R5; 累加发送数据
MOV R5,A; 存储校验和
MOV A,#00H
MOV SBUF,A
JNB TI,$
CLR TI
ADD A,R5; 累加发送数据
MOV R5,A; 存储校验和
STEP2: CLR A ; 发送选择数据
MOV A,02H
MOV SBUF,A
JNB TI,$
CLR TI
ADD A,R5;累加发送数据
MOV R5,A;存储校验和
MOV SBUF,A
JNB TI,$
CLR TI
CPL P1.1
CPL TXEN
JNZ RI,$
CLR RI
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -