📄
字号:
;********************************
; 试验
;********************************
SL:
MOV SL_JZT1,#0FFH
MOV SL_JZT2,#0FFH
MOV VA,#0
MOV VB,#0
MOV R4,#0
SETB BZ_VAD
SETB BZ_VBD
SL1:
CLR P1.6 ;NPN
SETB TR0 ;起动T0
SETB BZ_150US ;(见中断0处理)时间到=0
MOV P2,#0FFH ;IN
CLR P1.3 ;下拉电阻
;-----计算-------------
MOV DPTR,#TAB_FSB1 ;反射表1
MOV A,DPL
ADD A,VB
MOV DPL,A
MOV A,DPH
ADDC A,#0
MOV DPH,A
MOV A,#0
MOVC A,@A+DPTR
MOV P0,A ;OUT 第1点
MOV DPTR,#TAB_FSB1 ;反射表1
MOV A,DPL
ADD A,VA
MOV DPL,A
MOV A,DPH
ADDC A,#0
MOV DPH,A
MOV A,#0
MOVC A,@A+DPTR
JB BZ_150US,$ ;等待
;-----采样-----------------
MOV SL_JZT1,P2 ;IN 第1点
MOV P0,A ;OUT 第2点
NOP ;5个NOP(36MHz)
NOP
NOP
NOP
NOP ;延时(LM339输出响应时间0.3-1.3uS)
MOV SL_JZT2,P2 ;IN 第2点
;-----结束----------------
SETB P1.6 ;NPN
SETB P1.3 ;下拉电阻
;-------------------------
MOV A,SL_JZT1 ;键状态VB
ANL A,#00001000B
JB ACC.3,SL2 ;无变化
;有变化:
JNB BZ_VBD,SL2
CLR BZ_VBD
;-------------------------
MOV A,#0AH
LCALL CK_A_XS ;TXD
MOV A,VA
LCALL CK_A_XS ;TXD
;-------------------------
SL2:
MOV A,SL_JZT2 ;键状态VA
ANL A,#00001000B
JB ACC.3,SL3 ;无变化
;有变化:
JNB BZ_VAD,SL3
CLR BZ_VAD
;-------------------------
MOV A,#0BH
LCALL CK_A_XS ;TXD
MOV A,VB
LCALL CK_A_XS ;TXD
;-------------------------
SL3:
INC VA
INC VB
MOV A,#2
LCALL YS_MS
DJNZ R4,SL1
LJMP SL
;##############################################################
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -