89spi.asm
来自「at89x52 spi 编程工具」· 汇编 代码 · 共 71 行
ASM
71 行
/***************************************************************
spi.asm
***************************************************************/
RS232_R1 EQU 30H
RS232_R2 EQU 31H
RS232_W1 EQU 32H
RS232_W2 EQU 33H
RECEIVED BIT 10H
ORG 0000H
AJMP INIT
ORG 0023H
LJMP RECEIVE
ORG 30H
INIT:
MOV SP, #60H
MOV SCON, #40H
MOV TMOD, #20H
MOV PCON, #0
MOV TH1, #0FDH
MOV TL1, #0FDH
SETB REN
SETB TR1
SETB ES
SETB EA
CLR A
SJMP LOOP
LOOP: NOP
JNB RECEIVED, LOOP ;JNB表示直接寻址位为零转移
REC:
CLR RECEIVED
MOV R1,#0FH
LL: SETB P3.7
SETB P3.6
MOV P0,R1
CLR P3.7
MOV A,P0
SETB P3.7
MOV RS232_W1,A
LCALL SEND232
DJNZ R1,LL
SJMP LOOP
SEND232:
MOV A, RS232_W1
MOV SBUF, A
JNB TI, $
CLR TI
RETI
RECEIVE:
PUSH ACC
PUSH PSW
JNB RI, UU
MOV A, SBUF
CLR RI
MOV RS232_R1, A
SETB RECEIVED
UU:
POP PSW
POP ACC
RETI
END
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?