📄 spi从机.asm
字号:
$MOD841
SP0 EQU 50H
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP INT0_INT
ORG 002BH
LJMP T2_INT
ORG 003BH
LJMP SPI_INT
ORG 0060H
MAIN: MOV R0,#0FFH
CLR A
QING: MOV @R0,A
DJNZ R0,QING
MOV SP,#SP0
LCALL YS
LCALL INI841
HERE: LJMP HERE
;----------------------------
INI841: SETB EA
SETB ET2
MOV T2CON,#00H
MOV RCAP2H,#0D6H
MOV RCAP2L,#0B3H
MOV TH2,#0D6H
MOV TL2,#0B3H
SETB PT2
MOV IEIP2,#01H
MOV SPICON,#20H
CLR P1.5
JB P3.1,$
CLR P3.2
RET
;------------------------
INT0_INT:CLR SPE
SETB SPE
SETB P3.2
RETI
;-------------------
SPI_INT: MOV A,SPIDAT
CJNE A,#88H,OVER
LCALL SHENG_YIN
SETB P3.4
OVER: RETI
;-------------------------
T2_INT: CLR TF2
CPL P3.4
RETI
;-------------------------
SHENG_YIN:SETB TR2
LCALL DELAY
CLR TR2
RET
;---------------------------
DELAY: MOV R5,#150
D1: MOV R6,#150
D2: MOV R7,#150
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
;-----------------------------
YS: MOV R5,#00H
MOV R4,#50H
YS1: DJNZ R5,$
DJNZ R4,YS1
RET
;------------------------------
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -