📄 005a.asm
字号:
/***************************************************************************
****************************************************************************
* description:
* 双机通信,甲机发送程序
***************************************************************************
***************************************************************************/
TRT: MOV TMOD, #20H
MOV TH1, #0F3H
MOV TL1, #0F3H
SETB TR1 ;T1初始化,使波特率为2400
MOV SCON, #50H ;串口初始化为方式1,允许接收
RPT: MOV R0, #20H
MOV R6, #10H ;长度寄存器初始化
MOV R5, #00H ;效验和寄存器初始化
MOV SBUF, R6 ;发送长度
L1: JBC T1, L2 ;等待发送完
AJMP L1
L2: MOV A, @R0 ;读取数据
MOV SBUF, A ;发送数据
ADD A, R5 ;形成累加和送R5
MOV R5, A
INC R0
L4: JBC TI, L3
AJMP L4
L3: DJNZ R6, L2 ;判断16个数据是否发送完
MOV SBUF, R5 ;发送效验码
MOV R5, #00H
L6: JBC TI, L5
AJMP L6
L5: JBC RI, L7
AJMP L5 ;等乙机回答
L7: MOV A,SBUF
JZ L8 ;发送正确返回
AJMP RPT ;发送有错,重发
L8: RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -