📄 text1.asm
字号:
;双倍 P1.3
;长转 P1.4
;马达 P1.1
;电磁铁 P1.2
org 00h
ajmp start
start: mov p1,#0ffh
mov tmod,#00000101b
mov a,#00h
mov 30h,a
l1: mov r3,#0f7h
mov r1,#00h
l2: mov a,r3
mov p2,a
mov a,p2
mov r4,a
setb c
mov r5,#04h
l3: rlc a
jnc keyin
inc r1
djnz r5,l3
mov a,r3
setb c
rrc a
mov r3,a
jc l2
jnb p1.4,end1
jmp l1
keyin: call delay
d4: mov a,p2
xrl a,r4
jz d4
mov a,r1
mov dptr,#table
movc a,@a+dptr
mov 22h,a
jz end0
xrl a,#0ffh
jz l1
dec 22h
mov a,22h
rl a
mov dptr,#table1
movc a,@a+dptr
mov th0,a
mov 21h,a
mov a,22h
rl a
inc a
movc a,@a+dptr
mov tl0,a
mov 20h,a
cpl p1.2
call delay1
setb tr0
cpl p1.1
loop: mov a,30h
loop1: jbc tf0,loop2
jmp loop1
loop2: cjne a,#00h,del
clr tr0
cpl p1.1
cpl p1.2
jmp l1
del: mov tl0,20h
mov th0,21h
dec a
jmp loop1
end0: mov a,#1h
mov 30h,a
jmp l1
end1: call delay
cpl p1.1
cpl p1.2
jnb p1.4,$
call delay
cpl p1.1
cpl p1.2
jmp l1
delay: mov r7,#60
d1: mov r6,#248
djnz r6,$
djnz r7,d1
ret
delay1: mov r5,#20
d2: mov r4,#20
d3: mov r3,#248
djnz r3,$
djnz r4,d3
djnz r5,d2
ret
table1: dw 65506,65476,65446,65416
dw 65386,65356,65326,65296
dw 65266,65236,65206,65176
dw 65146,65116,65086,65056
table: db 00h,01h,02h,03h
db 04h,05h,06h,07h
db 08h,09h,0ah,0bh
db 0ch,0dh,0eh,0ffh
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -