📄 music.asm
字号:
STH0 EQU 31H
STL0 EQU 32H
TEMP EQU 33H
T1_BUF1 EQU 34H
T1_BUF2 EQU 35H
ORG 0000H
LJMP START
ORG 000BH
LJMP INT_T0
ORG 001BH
LJMP INT_T1
START: MOV TMOD,#11H
SETB ET0
SETB EA
MOV TH1,#3CH
MOV TL1,#0B0H
SETB ET1
LOOP: JB P3.5,$
JNB P3.5,$
MOV A,P1
MOV 40H,A
ANL A,#0F0H
JZ LOOP1
SWAP A
MOV B,#5
MUL AB
MOV T1_BUF1,A
SETB TR1
LOOP1: MOV A,40H
ANL A,#0FH
CJNE A,#0FH,LOOP2
CLR TR0
LJMP LOOP
LOOP2: RL A
MOV B,A
MOV DPTR,#TABLE1
MOVC A,@A+DPTR
MOV TH0,A
MOV STH0,A
MOV A,B
INC A
MOVC A,@A+DPTR
MOV TL0,A
MOV STL0,A
SETB TR0
LJMP LOOP
INT_T0:
MOV TH0,STH0
MOV TL0,STL0
CPL P3.7
RETI
INT_T1:
MOV TH1,#3CH
MOV TL1,#0B0H
DJNZ T1_BUF1,INT1_EXIT
CLR TR0
CLR TR1
INT1_EXIT:RETI
TABLE1: DW 63742,63843,64029,64195
DW 64342,64409,64533,64644
DW 64695,64787,64870,64943
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -