?? auto1.bak
字號:
;*******design for auto clean macine 2003-8-11 am 9:00-pm 2:00*********
fire equ p1.0 ;紅外發射口
jdq equ p1.2 ;繼電器控制口
beep equ p1.3
lamp equ p1.1
pduan equ p3.2 ;int0 口
org 0000h
jmp main
org 0003h
jmp int_0
org 000bh
jmp t0_0
org 0030h
MAIN:
mov p1,#0ffh ;出始化I/O口
mov tmod,#01h
mov th0,#00h
mov tl0,#00h
setb ea
setb ex0
setb et0
setb tr0
setb pduan ;p3.2設置為輸入狀態
acall music1
start:
jmp start
t0_0: clr tr0
clr fire ;產生50k方波
setb fire
clr fire
setb fire
mov th0,#00h
mov tl0,#00h
setb tr0
reti
int_0:
clr ex0
acall music ;音樂
clr jdq ;開熱風機
clr lamp ;開指示燈
wait: acall delay ;延時
jnb pduan,wait ;防止繼電器跳動
setb lamp
setb jdq ;關繼電器
setb ex0
reti
music:MOV R0,#059H ;beep! beep!beep!
S6: ACALL DELAY3
CLR BEEP
ACALL DELAY3
SETB BEEP
DJNZ R0,S6
ACALL DELAY5
THIR: MOV R0,#059H
S7: ACALL DELAY3
CLR BEEP
ACALL DELAY3
SETB BEEP
DJNZ R0,S7
acall delay5
THI: MOV R0,#059H
S8: ACALL DELAY3
CLR BEEP
ACALL DELAY3
SETB BEEP
DJNZ R0,S8
ret
music1:MOV R0,#0b9H ;beep !beep!
S9: ACALL DELAY3
CLR BEEP
ACALL DELAY3
SETB BEEP
DJNZ R0,S9
ACALL DELAY5
acall delay5
TH : MOV R0,#0b9H
S10:ACALL DELAY3
CLR BEEP
ACALL DELAY3
SETB BEEP
DJNZ R0,S10
ret
delay: mov r0,#17h ;3s @12MHz
de1: mov r1,#0ffh
de2: mov r2,#0ffh
de3: djnz r2,de3
djnz r1,de2
djnz r0,de1
ret
delay1:mov r0,#0ffh
del4: mov r1,#0ffh
del5: djnz r1,del5
djnz r0,del4
ret
DELAY3: MOV R6,#02H ;296.6US@12mhz
DEL10: MOV R5,#01dH
DEL11: nop
nop
DJNZ R5,DEL11 ; $
DJNZ R6,DEL10
RET
DELAY5: MOV R4,#14
DEL17: MOV R6,#0EbH ;82ms
DEL15: MOV R5,#0bH
DEL16:
DJNZ R5,DEL16 ; $
DJNZ R6,DEL15
DJNZ R4,DEL17
RET
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -