📄 test.asm
字号:
;**********************************************************
ADC0809 EQU 0FEFFH
ORG 0000H
LJMP 0030H
ORG 0003H
LJMP S_INT0
ORG 000BH
LJMP S_T0
ORG 0030H
MOV IE,#00H
SETB IT1
SETB IT0 ;将两外部中断均设为脉冲触发
MOV SP,#5FH
SETB EX0
SETB PX0
SETB EA ;开外部中断0,并使之为高优先级,可保证外部中断1及时反应
MOV TMOD,#01H ;定时器16位
MOV TH0,#0FCH
MOV TL0,#18H ;定时器0赋初始值。定时1ms
SETB ET0 ;启动定时器0,其中包含采样程序
SETB TR0
MOV P1,0FFH
MOV P2,0FFH
;MOV 30H,#0FFH
MAIN:
MOV A,30H
SUBB A,#0EFH
JC UNACTION
CLR P1.0
LCALL RET_T
UNACTION:
SETB P1.0
RET_T:
JMP MAIN
S_T0:
MOV TH0,#0FCH
MOV TL0,#1CH
PUSH A
MOV DPTR,#ADC0809
MOV A,#ADC0809
MOVX @DPTR,A
POP A
RETI
S_INT0:
MOV DPTR ,#ADC0809
MOVX A,@DPTR
MOV P1,A
MOV 30H,A
LCALL DELAY
SETB P1.7
MOVX A,@DPTR
MOV 31H,A
LCALL DELAY
CLR P1.7
RETI
DELAY:
MOV R0,#50
LOOP:
DJNZ R0,LOOP
RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -