//51hei-5开发板测试程序.ASM
// <<音乐播放器>>
//硬件说明:12M晶振/MCU:89C51
//编写人:李春起
//编定日期:2009.11.24
//修改日志:2010.01.05
// 2010.01.11 加暂停功能
// 2010.01.16 加第三首歌曲
// 2010.01.17 加第四首歌曲
// 2010.01.18 加第五首歌曲
// 2010.02.19 去除休止时杂声
// 2010.03.02 定时器T1中断显示
//------------------------------------------
//已用寄存器:
//R0 R1 R2 R4 R5 R6 R7
//-------------------------------------------
YY EQU P3.1 ;音乐输出口
ORG 0000H
LJMP MAIN ;跳到主函数
ORG 000BH ;定时器入口
LJMP T00 ;跳到定时器中断服务子程序
ORG 001BH
LJMP T11
ORG 0020H ;程序存放起始
MAIN:
MOV TMOD,#11H
MOV IP,#08H
// MOV IE,#08AH
MOV TH0,R0
MOV TL0,R1
MOV TH1,#15H
MOV TL1,#0A0H
SETB ET0
CLR TR0
CLR TR1
SETB ET1
SETB EA
SETB YY
MOV R7,#00H ;歌曲选择
MOV 30H,#00H
MOV 31H,#24
MOV 32H,#00H ;显示扫描数
MOV 40H,#40
MOV R3,#00H
//========笑脸====================
MAKK: ACALL DELAY1
MAIN0:
MOV A,R7
CJNE A,#00H,LMA1
CLR TR0
XIAN00:
MOV A,30H
MOV DPTR,#TAB10
MOVC A,@A+DPTR
MOV P0,A
MOV A,30H
MOV DPTR,#TAB11
MOVC A,@A+DPTR
MOV P1,A
MOV A,30H
MOV DPTR,#TAB12
MOVC A,@A+DPTR
MOV P2,A
MA0D:MOV 54H,#20
JB P3.2,MA0D1
ACALL WDELAY
INC R7
CJNE R7,#04H,LMA0
MOV R7,#00H
LJMP LMA0
MA0D1:DJNZ 54H,MA0D1
MOV P0,#0FFH
MOV P1,#0FH
MOV P2,#00H
DJNZ 31H,XIAN00
MOV 31H,#24
INC 30H
MOV A,30H
CJNE A,#13,XIAN01
DJNZ 41H,XIA01
MOV 41H,#20
LJMP XIAN01
XIA01:MOV 30H,#0
LJMP XIAN00
XIAN01:
CJNE A,#25, ENDD0
MOV 41H,#40
MOV 30H,#0
ENDD0:LJMP XIAN00
LMA1:LJMP MAIN1
LMA0:LJMP MAIN0
//========第一首===========================
MAIN1:SETB TR1
MOV P0,#0FFH
MOV P1,#0FH
MOV P2,#00H
MOV 30H,#00H //奏第一首循环
MOV A,R7
CJNE A,#01H,MAIN2;下一首
LOOP:SETB TR0
MOV A,30H
MOV DPTR,#TAB1
MOVC A,@A+DPTR ;取定时器高八位数据
JZ RERT
LOO1: MOV R0,A
MOV A,30H
MOV DPTR,#TAB2
MOVC A,@A+DPTR ;取定时器低八位数据
MOV R1,A
MOV TH0,R0
MOV TL0,R1
ANL A,R0
CJNE A,#0FFH,NCA ;遇0FFH歌曲结束
LJMP ENDD
NCA: MOV A,30H
MOV DPTR,#TAB3
MOVC A,@A+DPTR ;取节拍时值
MOV R2,A
DELA:ACALL DELAY100
DEL1:DJNZ R2,DELA
INC 30H
LJMP LOOP
RERT:CLR TR0 ;休止
SETB YY
LJMP LOO1
ENDD:CLR TR0
ACALL DELAY1000
LJMP MAIN1 ;奏完返回
//========第二首===========================
MAIN2:
MOV P0,#0FFH
MOV P1,#0FH
MOV P2,#00H
MOV 30H,#00H //奏第二首循环
MOV A,R7
CJNE A,#02H,LMAIN0
LOOOP:SETB TR0
MOV A,30H
MOV DPTR,#TAB4
MOVC A,@A+DPTR ;取定时器高八位数据
JZ RERT1
LOOO1: MOV R0,A
MOV A,30H
MOV DPTR,#TAB5
MOVC A,@A+DPTR ;取定时器低八位数据
MOV R1,A
MOV TH0,R0
MOV TL0,R1
ANL A,R0
CJNE A,#0FFH,NCA1 ;遇0FFH歌曲结束
LJMP ENDD1
NCA1: MOV A,30H
MOV DPTR,#TAB6
MOVC A,@A+DPTR ;取节拍时值
MOV R2,A
DELA1:ACALL DELAY100
DEL11:DJNZ R2,DELA1
INC 30H
LJMP LOOOP
RERT1:CLR TR0 ;休止
SETB YY
LJMP LOOO1
ENDD1:CLR TR0
ACALL DELAY1000
LJMP MAIN1 ;奏完返回
LMAIN0:LJMP MAIN4
//=======第三首==================================
MAIN4:MOV P0,#0FFH
MOV P1,#0FH
MOV P2,#00H
MOV 30H,#00H //奏第三首循环
MOV A,R7
CJNE A,#03H,LMAIN4
LOO1P:SETB TR0
MOV A,30H
MOV DPTR,#TAB13
MOVC A,@A+DPTR ;取定时器高八位数据
JZ RERT2
LOO11: MOV R0,A
MOV A,30H
MOV DPTR,#TAB14
MOVC A,@A+DPTR ;取定时器低八位数据
MOV R1,A
MOV TH0,R0
MOV TL0,R1
ANL A,R0
CJNE A,#0FFH,NCA4 ;遇0FFH歌曲结束
LJMP ENDD4
NCA4: MOV A,30H
MOV DPTR,#TAB15
MOVC A,@A+DPTR ;取节拍时值
MOV R2,A
DELA31:ACALL DELAY100
DEL31:DJNZ R2,DELA31
INC 30H
LJMP LOO1P
RERT2:CLR TR0 ;休止
SETB YY
LJMP LOO11
ENDD4:CLR TR0
ACALL DELAY1000
LJMP MAIN4 ;奏完返回
LMAIN4:LJMP MAIN5[page]
//=======第四首==================================
MAIN5:MOV P0,#0FFH
MOV P1,#0FH
MOV P2,#00H
MOV 30H,#00H //奏第四首循环
MOV A,R7
CJNE A,#04H,LMAIN5
LOO2P:SETB TR0
MOV A,30H
MOV DPTR,#TAB16
MOVC A,@A+DPTR ;取定时器高八位数据
JZ RERT3
LOO21: MOV R0,A
MOV A,30H
MOV DPTR,#TAB17
MOVC A,@A+DPTR ;取定时器低八位数据
MOV R1,A
MOV TH0,R0
MOV TL0,R1
ANL A,R0
CJNE A,#0FFH,NCA5 ;遇0FFH歌曲结束
LJMP ENDD5
NCA5: MOV A,30H
MOV DPTR,#TAB18
MOVC A,@A+DPTR ;取节拍时值
MOV R2,A
DELA41:ACALL DELAY100
DEL41:DJNZ R2,DELA41
INC 30H
LJMP LOO2P
RERT3:CLR TR0 ;休止
SETB YY
LJMP LOO21
ENDD5:CLR TR0
ACALL DELAY1000
LJMP MAIN5 ;奏完返回
LMAIN5:LJMP MAIN6
//=======第五首==================================
MAIN6:MOV P0,#0FFH
MOV P1,#0FH
MOV P2,#00H
MOV 30H,#00H //奏第五首循环
MOV A,R7
CJNE A,#05H,LMAIN6
LOO4P:SETB TR0
MOV A,30H
MOV DPTR,#TAB19
MOVC A,@A+DPTR ;取定时器高八位数据
JZ RERT4
LOO31: MOV R0,A
MOV A,30H
MOV DPTR,#TAB20
MOVC A,@A+DPTR ;取定时器低八位数据
MOV R1,A
MOV TH0,R0
MOV TL0,R1
ANL A,R0
CJNE A,#0FFH,NCA6 ;遇0FFH歌曲结束
LJMP ENDD6
NCA6: MOV A,30H
MOV DPTR,#TAB21
MOVC A,@A+DPTR ;取节拍时值
MOV R2,A
DELA51:ACALL DELAY100
DEL51:DJNZ R2,DELA51
INC 30H
LJMP LOO4P
RERT4:CLR TR0 ;休止
SETB YY
LJMP LOO31
ENDD6:CLR TR0
ACALL DELAY1000
LJMP MAIN6 ;奏完返回
LMAIN6:CLR TR1
LJMP MAIN3
//======流动汉字=================================
MAIN3:
MOV A,R7
CJNE A,#06H,LMA3
SJMP XIAN
LMA3:LJMP MAKK
XIAN:CLR TR0
MOV A,30H
MOV DPTR,#TAB7
MOVC A,@A+DPTR
MOV P0,A
MOV A,30H
MOV DPTR,#TAB8
MOVC A,@A+DPTR
MOV P1,A
MOV A,30H
MOV DPTR,#TAB9
MOVC A,@A+DPTR
MOV P2,A
//--------------------------------------
MA3D://扫描按键延时
MOV 53H,#5
MA3D2:
JB P3.2,LMA03 ;按键
LCALL WDELAY
INC R7
CJNE R7,#04H,MA32
MOV R7,#00H
MA32:LJMP MAKK
LMA03:JB P3.3,MA3D1
LCALL WDELAY
LCALL SIMAIN1 ;跳到显示死循环子程序
MA3D1:DJNZ 53H,MA3D2
//---------------------------------------
MOV P0,#0FFH
MOV P1,#0FH
MOV P2,#00H
DJNZ 31H,XIAN
MOV 31H,#24
INC 30H
MOV A,30H
CJNE A,#13,XIAN1
DJNZ 40H,XIA1
MOV 40H,#100
LJMP XIAN1
XIA1:MOV 30H,#0
LJMP MAIN3
XIAN1:
CJNE A,#25, XIAN2
MOV 36H,#13
DJNZ 40H,XIA2
MOV 40H,#100
LJMP XIAN2
XIA2:MOV 30H,#13
LJMP MAIN3
XIAN2:
CJNE A,#37,XIAN3
MOV 36H,#25
DJNZ 40H,XIA3
MOV 40H,#100
LJMP XIAN3
XIA3:MOV 30H,#25
LJMP MAIN3
XIAN3:
CJNE A,#49,XIAN4
MOV 36H,#37
DJNZ 40H,XIA4
MOV 40H,#100
LJMP XIAN4
XIA4:MOV 30H,#37
LJMP MAIN3
XIAN4:
CJNE A,#61,XIAN5
MOV 36H,#49
DJNZ 40H,XIA5
MOV 40H,#100
LJMP XIAN5
XIA5:MOV 30H,#49
LJMP MAIN3
XIAN5:
CJNE A,#73,XIAN6
MOV 36H,#61
DJNZ 40H,XIA6
MOV 40H,#100
LJMP XIAN6
XIA6:MOV 30H,#61
LJMP MAIN3
XIAN6:
CJNE A,#85,XIAN7
MOV 36H,#73
DJNZ 40H,XIA7
MOV 40H,#100
LJMP XIAN7
XIA7:MOV 30H,#73
LJMP MAIN3
XIAN7:
CJNE A,#97,XIAN8
MOV 36H,#85
DJNZ 40H,XIA8
MOV 40H,#100
LJMP XIAN8
XIA8:MOV 30H,#85
LJMP MAIN3
XIAN8:
CJNE A,#109,XIAN9
MOV 36H,#97
DJNZ 40H,XIA9
MOV 40H,#100
LJMP XIAN9
XIA9:MOV 30H,#97
LJMP MAIN3
XIAN9:
CJNE A,#121,XIAN10
MOV 36H,#109
DJNZ 40H,XIA10
MOV 40H,#100
LJMP XIAN10
XIA10:MOV 30H,#109
LJMP MAIN3
XIAN10:
CJNE A,#133,XIAN11
MOV 36H,#121
DJNZ 40H,XIA11
MOV 40H,#100
LJMP XIAN11
XIA11:MOV 30H,#121
LJMP MAIN3
XIAN11:
CJNE A,#145,END30
/* MOV 36H,#133
DJNZ 40H,XIA12
MOV 40H,#100
LJMP XIAN12
XIA12:MOV 30H,#133
LJMP MAIN3
XIAN12:
CJNE A,#157,XIAN13
MOV 36H,#145
DJNZ 40H,XIA13
MOV 40H,#100
LJMP XIAN13
XIA13:MOV 30H,#145
LJMP MAIN3
XIAN13:
CJNE A,#169,XIAN14
MOV 36H,#157
DJNZ 40H,XIA14
MOV 40H,#100
LJMP XIAN14
XIA14:MOV 30H,#157
LJMP MAIN3
XIAN14:
CJNE A,#181,END30 */
MOV 36H,#0
MOV 30H,#0
END30:LJMP MAIN3
//=======显示死循环子程序========================
SIMAIN1:MOV 30H,36H
MOV 37H,#12
SIMAIN2:MOV A,30H
MOV DPTR,#TAB7
MOVC A,@A+DPTR
MOV P0,A
MOV A,30H
MOV DPTR,#TAB8
MOVC A,@A+DPTR
MOV P1,A
MOV A,30H
MOV DPTR,#TAB9
MOVC A,@A+DPTR
MOV P2,A
//-----------------
YANSI:MOV 38H,#200
YANS1:JB P3.3,YANS2
LCALL WDELAY
LJMP SIMRET
YANS2:DJNZ 38H,YANS1
//-----------------
INC 30H
MOV P0,#0FFH
MOV P1,#0FH
MOV P2,#00H
DJNZ 37H,SIMAIN2
LJMP SIMAIN1
SIMRET:RET
//=====定时器中断服务子程序======================
T00:MOV TH0,R0
MOV TL0,R1
CPL YY
RETI
//==========定时器T1溢出中断服务子程序============
T11:MOV TH1,#15H
MOV TL1,#0A0H
CJNE R3,#1,NET10
MOV P2,#06H
MOV P0,#55H
NET10:CJNE R3,#10,NET11
MOV P2,#09H
MOV P0,#0AAH
NET11:CJNE R3,#20,NET12
MOV R3,#0
NET12:
INC R3
// INC 30H //下一显示值
RETI
//======延时子程序================================
//-------含按键------------
DELAY1000:MOV R4,#10
DELAY100: MOV R5,#6
DELAY1: MOV R6,#10
DELAY2: JB P3.2,DJNN
ACALL WDELAY
INC R7
CJNE R7,#08h,LJ
MOV R7,#00H
LJ: LJMP MAIN0
DJNN: JB P3.3,DJNN1
ACALL WDELAY
LCALL YINYEXI
DJNN1: DJNZ R6,DELAY2
DJNZ R5,DELAY1
DJNZ R4,DELAY100
RET
//-------500MS--------------
WDELAY:MOV 50H,#5
WDELA1:MOV 51H,#250
WDELA2:MOV 52H,#100
WDELA3:NOP
NOP
DJNZ 52H,WDELA3
DJNZ 51H,WDELA2
DJNZ 50H,WDELA1
RET
//======音乐暂停等待==============================
YINYEXI:
CLR TR0
MOV P0,#0F6H
MOV P1,#0FH
MOV P2,#3FH
JB P3.3,YINYEXI
ACALL WDELAY
MOV P0,#0FFH
MOV P2,#00H
SETB TR0
RET
//===========================================================
//<<月亮代表我的心>> 数据表
TAB1: //定时器高八位数据
DB 00H,0FBH,0FCH,0FDH,0FDH,0FCH,0FCH,0FDH,0FDH,00H
DB 0FDH,0FDH,0FEH,0FEH,0FDH,0FDH,0FDH,0FDH,0FCH,0FCH
DB 0FCH,0FCH,0FDH,0FCH,0FCH,0FCH,0FCH,0FCH,0FDH,0FCH
DB 0FCH,0FBH,0FCH,0FDH,0FCH,00H,0FBH,0FCH,0FDH,0FDH
DB 0FCH,0FCH,0FDH,0FDH,00H,0FDH,0FDH,0FEH,0FEH,0FDH
DB 0FDH,0FDH,0FDH,0FCH,0FCH,0FCH,0FCH,0FDH,0FCH,0FCH
DB 0FCH,0FCH,0FCH,0FDH,0FCH,0FBH,0FCH,0FCH,0FCH,0FCH
DB 0FDH,0FDH,0FDH,0FCH,0FCH,0FDH,0FCH,0FBH,0FCH,0FBH
DB 0FCH,0FBH,0FBH,0FDH,0FDH,0FDH,0FCH,0FCH,0FDH,0FCH
DB 0FBH,0FCH,0FCH,0FCH,0FCH,0FCH,0FDH,0FCH,00H,0FBH
DB 0FCH,0FDH,0FDH,0FCH,0FCH,0FDH,0FDH,0FDH,0FDH,0FEH
DB 0FEH,0FDH,0FDH,0FDH,0FDH,0FCH,0FCH,0FCH,0FCH,0FDH
DB 0FCH,0FCH,0FCH,0FCH,0FCH,0FDH,0FCH,0FBH,0FCH,0FCH
DB 0FCH,0FCH,0FFH
TAB2: //定时器低八位数据
DB 00H,04H,44H,09H,82H,44H,0CH,09H,82H,00H
DB 82H,0CDH,06H,22H,0CDH,0CDH,82H,09H,0ACH,44H
DB 44H,44H,09H,0ACH,44H,44H,44H,0ACH,09H,0ACH
DB 44H,8FH,0ACH,09H,0ACH,00H,04H,44H,09H,82H
DB 44H,0CH,09H,82H,00H,82H,0CDH,06H,22H,0CDH
DB 0CDH,82H,09H,0ACH,44H,44H,44H,09H,0ACH,44H
DB 44H,44H,0ACH,09H,0ACH,90H,0CH,44H,0ACH,44H
DB 09H,82H,09H,0ACH,44H,82H,0CH,90H,0CH,90H
DB 0CH,90H,05H,09H,82H,09H,0ACH,44H,82H,0CH
DB 90H,0CH,44H,44H,44H,0ACH,09H,0ACH,00H,05H
DB 44H,09H,82H,44H,0CH,09H,82H,82H,0C8H,06H
DB 22H,0C8H,0C8H,82H,09H,0ACH,44H,44H,44H,09H
DB 0ACH,44H,44H,44H,0ACH,09H,0ACH,90H,0CH,44H
DB 0ACH,44H,0FFH
TAB3: //节拍时值表
db 4,4,12,4,12,4,12,4,8,4
db 4,4,8,12,4,4,28,4,4,12
db 4,8,4,4,12,4,8,4,4,8
db 4,8,4,4,24,4,4,12,4,12
db 4,12,4,8,4,4,4,8,12,4
db 4,28,4,4,12,4,8,4,4,12
db 4,8,4,4,8,4,8,4,4,24
db 4,4,12,4,8,8,24,4,4,12
db 4,12,8,24,8,12,4,8,8,24
db 4,4,12,4,8,4,4,24,4,4
db 12,4,12,4,12,4,12,4,12,4
db 12,4,4,20,4,4,12,4,8,4
db 4,12,4,8,4,4,12,4,8,4
db 4,24[page]
//==============笑脸================================================
TAB10: //P0口
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
TAB11: //P1口
DB 0FH,8EH,4DH,0ABH,57H,5FH,9FH,9FH,5FH,5FH,0AFH,4FH,8FH
DB 8EH,4DH,0ABH,97H,9FH,9FH,9FH,9FH,9FH,0AFH,4FH,8FH
TAB12: //P2口
DB 0FH,87H,88H,50H,20H,0A4H,0E8H,0E8H,0A4H,20H,50H,88H,87H
DB 87H,88H,50H,20H,0A4H,0E8H,0E8H,0A4H,20H,50H,88H,87H
//=============汉字==============================================
TAB7: //P0口
DB 0FFH, 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
// DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
// DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
// DB 0FFH,0FFH,0FFH,0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
TAB8: //P1口
DB 0FH, 8EH,8DH,0EBH,87H,8FH,0CFH,4FH,4FH,4FH,0CFH,0FH,0FH //祝
DB 0EH,0DH,8BH,0E7H,8FH,8FH,0FH,0FH,0EFH,0FH,0FH,0FH //钟
DB 0EH,0DH,0BH,87H,4FH,0FH,0FH,0CFH,0FH,0FH,0FH,0FH //仕
DB 0EH,0DH,0EBH,0A7H,0EFH,0AFH,0BFH,0AFH,0EFH,0AFH,2FH,0FH //廉
// DB 0EH,0DH,8BH,0E7H,8FH,8FH,0EFH,8FH,8FH,8FH,0FH,0FH //生
// DB 0EH,0DH,0BH,0E7H,2FH,2FH,2FH,2FH,0EFH,0FH,0FH,0FH //日
DB 0EH,4DH,0DBH,67H,0CFH,4FH,0FH,8FH,4FH,4FH,2FH,0FH //新
DB 0EH,0DH,8BH,47H,7FH,4FH,0CFH,4FH,4FH,4FH,4FH,0FH //年
DB 0EH,0DH,0EBH,07H,8FH,8FH,0EFH,8FH,8FH,8FH,0FH,0FH //快
DB 0EH,8DH,4BH,47H,4FH,0AFH,1FH,0FH,0FH,0FH,0FH,0FH //乐
DB 0CEH,2DH,02BH,27H,4FH,8FH,8FH,4FH,2FH,2FH,2FH,0CFH //心形
// DB 0FH,0FH,2BH,27H,0AFH,6FH,0FFH,6FH,0AFH,2FH,2FH,0FH //李
// DB 0EH,0DH,2BH,0A7H,0AFH,0FFH,0AFH,0AFH,2FH,0FH,0FH,0FH //春
DB 0EH,0DH,4BH,47H,0EFH,4FH,4FH,8FH,8FH,8FH,0FH,0FH //起
DB 0EH,0FDH,5BH,57H,5FH,0FFH,0FH,4FH,4FH,0CFH,4FH,0FH //题
// DB 0CEH,2DH,02BH,27H,4FH,8FH,8FH,4FH,2FH,2FH,2FH,0CFH //心形
TAB9: //P2口
DB 00H, 08H,04H,0FEH,05H,08H,43H,3EH,02H,3EH,23H,30H,00H //祝
DB 00H,09H,0AH,7FH,2AH,08H,0FH,09H,7FH,09H,0FH,00H //钟
DB 00H,02H,01H,7FH,02H,22H,22H,3FH,22H,22H,02H,00H //仕
DB 80H,40H,3FH,88H,6AH,0FFH,2AH,0FFH,6AH,0BEH,88H,00H //廉
// DB 00H,21H,20H,20H,24H,24H,3FH,24H,24H,20H,20H,00H //生
// DB 00H,00H,00H,3FH,22H,22H,22H,22H,3FH,00H,00H,00H //日
DB 00H,2AH,5AH,0FFH,1AH,2AH,40H,3FH,02H,7EH,02H,00H //新
DB 08H,09H,0FH,09H,09H,09H,0FFH,09H,09H,09H,08H,00H //看
DB 01H,06H,7FH,22H,14H,0CH,07H,0CH,14H,27H,24H,00H //快
DB 00H,23H,12H,0EH,22H,7FH,06H,0AH,13H,22H,00H,00H //乐
DB 03H,04H,08H,10H,20H,60H,20H,10H,08H,04H,02H,01H //心形
// DB 00H,00H,11H,11H,12H,52H,0FBH,1AH,16H,11H,11H,00H //李
// DB 00H,12H,0AH,0FEH,0ABH,0AAH,0AAH,0FEH,0AH,12H,00H,00H //春
DB 40H,21H,1DH,09H,1FH,25H,41H,5DH,54H,53H,58H,00H //起
DB 84H,45H,35H,3DH,55H,95H,84H,0AFH,9DH,91H,0AFH,80H //题
// DB 03H,04H,08H,10H,20H,60H,20H,10H,08H,04H,02H,01H //心形
//<<我说我的眼里只有你>>
TAB13://定时器高八位初值
DB 00H,0FAH,0FAH,0FBH,0FBH,0FCH,0FCH,0FCH,0FCH,0FDH
DB 0FDH,0FDH,0FCH,0FCH,0FCH,0FCH,0FBH,0FCH,0FCH,0FBH
DB 0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FCH,0FAH,0FAH,0FBH
DB 0FBH,0FCH,0FCH,0FCH,0FCH,0FDH,0FDH,0FDH,0FCH,0FCH
DB 0FCH,0FCH,0FBH,0FDH,0FDH,00H,0FCH,0FDH,0FDH,0FDH
DB 0FCH,0FCH,00H,0FCH,0FCH,0FDH,0FCH,0FDH,0FCH,0FDH
DB 00FDH,0FCH,00H,0FCH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FDH,00H,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FDH,0FDH,0FCH,0FDH,0FDH,0FDH,0FDH,0FCH,0FCH
DB 0FCH,0FDH,0FDH,0FDH,0FCH,0FCH,0FDH,0FCH,0FDH,0FCH
DB 0FDH,0FDH,0FCH,00H,0FCH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FDH,0FDH,00H,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FDH,0FDH,0FDH,0FCH,0FDH,0FDH,0FDH,0FDH,0FCH
DB 0FCH,0FCH,0FDH,0FDH,0FDH,0FDH,0FDH,0FCH,0FDH,0FFH
TAB14://定时器低八位初值
DB 00H,15H,67H,04H,04H,44H,0ACH,44H,0ACH,09H
DB 34H,82H,88H,0ACH,44H,0CH,90H,0CH,44H,04H
DB 0C8H,82H,34H,09H,34H,09H,0ACH,15H,67H,04H
DB 04H,44H,0ACH,44H,0ACH,09H,34H,82H,88H,0ACH
DB 44H,0CH,90H,0C8H,82H,00H,0ACH,09H,34H,09H
DB 0ACH,44H,00H,44H,0ACH,09H,0ACH,09H,0ACH,09H
DB 82H,0ACH,00H,0ACH,09H,34H,09H,34H,09H,34H
DB 0C8H,09H,00H,09H,34H,082H,34H,09H,34H,82H
DB 82H,34H,09H,0ACH,09H,34H,34H,09H,0ACH,44H
DB 0ACH,09H,0C8H,82H,44H,0ACH,09H,0ACH,09H,0ACH
DB 09H,82H,0ACH,00H,0ACH,09H,34H,09H,34H,09H
DB 34H,0C8H,09H,00H,09H,34H,82H,34H,09H,34H
DB 82H,82H,34H,09H,0ACH,09H,34H,34H,09H,0ACH
DB 44H,0ACH,09H,0C8H,82H,34H,09H,0ACH,09H,0FFH
TAB15://节拍时值表
db 4,4,4,8,4,4,8,4,4,4
db 4,4,4,8,4,4,8,4,4,4
db 4,4,4,8,4,4,8,4,4,8
db 4,4,8,4,4,4,4,4,4,8
db 4,4,8,6,8,4,2,2,6,6
db 4,20,4,4,4,2,2,2,2,4
db 4,8,4,2,2,2,2,2,2,4
db 4,8,4,2,2,2,2,2,2,6
db 2,2,2,2,2,6,2,2,2,2
db 2,4,4,8,4,4,2,2,2,2
db 4,4,8,4,2,2,2,2,2,2
db 4,4,8,4,2,2,2,2,2,2
db 6,2,2,2,2,2,6,2,2,2
db 2,2,4,4,8,2,4,2,64
// <<阿里山的姑娘>>
TAB16://定时器高八位数据
DB 00H,0FDH,0FDH,0FDH,0FCH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FCH,0FDH,0FDH,0FDH,0FDH,0FCH,0FCH,0FBH,0FCH,0FCH
DB 0FCH,0FBH,0FBH,0FBH
DB 0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FCH,0FCH
DB 0FDH,0FCH,0FBH,0FBH,0FCH,0FCH,0FCH,0FDH,0FDH,0FDH
DB 0FDH,0FCH,0FDH,0FCH,0FCH,0FCH,0FCH,0FCH,0FBH,0FBH
DB 0FBH,0FBH,0FCH,0FBH,0FBH,0FBH,0FCH,0FDH,0FCH,0FCH
DB 0FCH,0FDH,0FDH,0FDH,0FCH,0FDH,0FCH,0FBH,0FCH,0FCH
DB 0FCH,0FBH,0FBH,0FBH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FCH,0FDH,0FCH,0FDH,0FCH,0FBH,0FBH,0FCH,0FCH
DB 0FCH,0FDH,0FDH,0FDH,0FDH,0FCH,0FDH,0FCH,0FCH,0FCH
DB 0FCH,0FCH,0FBH,0FBH,0FBH,0FDH,0FCH,0FDH,0FDH,0FDH
DB 0FDH,0FDH,0FCH,0FDH,0FDH,0FDH,0FCH,0FBH,0FCH,0FCH
DB 0FCH,0FBH,0FBH,0FBH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FCH,0FDH,0FCH,0FDH,0FCH,0FBH,0FBH,0FCH,0FCH
DB 0FDH,0FDH,0FDH,0FDH,0FCH,0FDH,0FDH,0FDH,0FDH
DB 00H,0FDH,0FDH,0FDH,0FDH,0FDH,0FEH,0FEH,0FEH
DB 0FDH,0FDH,0FDH,0FDH,0FDH,0FEH,0FDH,0FDH,0FCH,0FDH
DB 0FDH,0FDH,0FCH,0FDH,0FCH,0FBH,0FDH,0FCH,0FDH,0FDH
DB 0FCH,0FDH,0FBH,0FCH,0FDH,0FCH,0FCH,0FBH,0FFH // 0FBH,0FBH,
TAB17://定时器低八位数据
DB 00H,09H,82H,09H,0ACH,09H,82H,0C8H,82H,09H
DB 0ACH,09H,82H,09H,09H,0ACH,0ACH,90H,44H,0ACH
DB 44H,90H,04H,90H
DB 0C8H,0C8H,0C8H,82H,82H,09H,09H,09H,0ACH,0ACH
DB 09H,44H,90H,90H,0ACH,0ACH,0ACH,09H,82H,09H
DB 09H,0ACH,09H,0ACH,44H,44H,0ACH,44H,90H,04H
DB 90H,90H,44H,90H,90H,04H,0ACH,09H,0ACH,44H
DB 0ACH,09H,82H,09H,0ACH,09H,0ACH,90H,44H,0ACH
DB 44H,90H,04H,90H,0C8H,0C8H,0C8H,82H,82H,09H
DB 09H,0ACH,09H,0ACH,09H,44H,90H,90H,0ACH,0ACH
DB 0ACH,09H,82H,09H,09H,0ACH,09H,0ACH,44H,44H
DB 0ACH,44H,90H,04H,90H,09H,0ACH,09H,82H,0C8H
DB 82H,09H,0ACH,09H,82H,09H,0ACH,90H,44H,0ACH
DB 44H,90H,04H,90H,0C8H,0C8H,0C8H,82H,82H,09H
DB 09H,0ACH,09H,0ACH,09H,44H,90H,90H,0ACH,0ACH
DB 09H,82H,09H,82H,0ACH,09H,82H,0C8H,0C8H
DB 00H,0C8H,0C8H,0C8H,0C8H,0C8H,22H,57H,22H
DB 0C8H,82H,09H,0C8H,82H,22H,0C8H,82H,0ACH,09H
DB 82H,82H,0ACH,09H,0ACH,90H,09H,0ACH,09H,82H
DB 0ACH,09H,90H,44H,09H,0ACH,44H,90H,0FFH // 90H,90H ,
TAB18://节拍时值表
DB 2,2,1,1,2,2,2,1,1,2
DB 2,12,2,2,3,1,3,1,2,1
DB 1,2,2,16
DB 2,2,2,2,2,2,4,2,2,2
DB 2,2,2,4,3,1,2,2,2,2
DB 4,3,1,2,2,2,1,1,2,2
DB 16,2,1,1,2,2,2,1,1,2
DB 2,12,2,2,2,2,2,2,2,1
DB 1,2,2,16,2,2,2,2,2,2
DB 4,2,2,2,2,2,2,4,3,1
DB 2,2,2,2,4,3,1,2,2,2
DB 1,1,2,2,16,4,2,2,2,1
DB 1,2,2,12,2,2,5,2,2,1
DB 1,2,2,16,3,1,2,2,2,2
DB 4,3,1,3,1,2,2,4,4,2
DB 2,4,2,2,8,5,2,16,12
DB 12,3,1,2,2,2,2,2,2
DB 4,2,2,4,2,2,4,2,2,2
DB 2,2,2,2,2,4,4,2,2,4
DB 2,2,2,2,2,1,1,16 //,4,8
//<<犯错>>
TAB19://定时器高八位数据
DB 00H,0FBH,0FBH,0FCH,0FCH,0FDH,0FDH,0FDH,0FCH,0FCH
DB 0FDH,0FCH,0FCH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FDH,0FCH,0FCH,0FDH,0FCH,0FCH,0FCH,0FBH,0FBH
DB 0FDH,0FDH,0FDH,0FCH,0FCH,0FDH, 00H
DB 0FBH,0FBH,0FCH,0FCH,0FDH,0FDH,0FDH,0FCH,0FCH,0FDH
DB 0FCH,0FCH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FCH,0FCH,0FDH,0FCH,0FCH,0FCH,0FBH,0FBH,0FDH
DB 0FDH,0FDH,0FCH,0FCH,0FCH,00H,0FEH,0FEH,0FDH,0FDH
DB 0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,00H,0FDH,0FDH,0FDH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,00H,0FDH,0FDH,0FEH
DB 0FEH,0FEH,0FEH,0FDH,0FDH,0FDH,0FDH,00H,0FDH,0FDH
DB 0FDH,0FEH,0FEH,0FEH,0FDH,0FDH,0FDH,0FEH,0FEH,0FDH
DB 0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,00H,0FDH,0FDH
DB 0FDH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,00H,0FDH,0FDH
DB 0FEH,0FEH,0FEH,0FEH,0FDH,0FDH,0FDH,0FDH,00H,0FDH
DB 0FDH,0FDH,0FEH,0FEH,0FDH,0FDH,0FDH,0FEH,0FDH,0FDH
DB 0FBH,0FBH,0FCH,0FCH,0FDH,0FDH,0FDH,0FCH,0FCH,0FDH
DB 0FCH,0FCH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH,0FDH
DB 0FDH,0FCH,0FCH,0FDH,0FCH,0FCH,0FCH,0FBH,0FBH,0FDH
DB 0FDH,0FDH,0FCH,0FCH,00H,0FFH
TAB20://低八位数据
DB 00H,04H,90H,44H,0ACH,82H,09H,09H,0ACH,0ACH
DB 09H,44H,0ACH,09H,82H,0C8H,82H,82H,09H,09H
DB 82H,09H,0ACH,44H,09H,0ACH,44H,0ACH,90H,04H
DB 0C8H,82H,09H,0ACH,0ACH,09H, 00H
db 04H,90H,44H,0ACH,82H,09H,09H,0ACH,0ACH,09H
db 44H,0ACH,09H,82H,0C8H,82H,82H,09H,09H,82H
db 09H,0ACH,44H,09H,0ACH,44H,0ACH,90H,04H,0C8H
db 82H,09H,0ACH,44H,44H,00H,22H,06H,0C8H,0C8H
db 0C8H,0C8H,09H,82H,0C8H,82H,00H,09H,82H,0C8H
db 22H,22H,22H,85H,57H,22H,00H,82H,0C8H,22H
db 22H,22H,57H,0C8H,82H,09H,82H,00H,09H,82H
db 0C8H,22H,22H,22H,0C8H,0C8H,82H,22H,06H,0C8H
db 0C8H,0C8H,0C8H,09H,82H,0C8H,82H,00H,09H,82H
db 0C8H,22H,22H,22H,85H,57H,22H,00H,82H,0C8H
db 22H,22H,22H,57H,0C8H,82H,09H,82H,00H,09H
db 82H,0C8H,22H,22H,0C8H,82H,0C8H,06H,0C8H,82H
db 04H,90H,44H,0ACH,82H,09H,09H,0ACH,0ACH,09H
db 44H,0ACH,09H,82H,0C8H,82H,82H,09H,09H,82H
db 09H,0ACH,44H,09H,0ACH,44H,0ACH,90H,04H,0C8H
db 82H,09H,0ACH,44H,00H,0FFH
TAB21://节拍时值表
DB 2,2,2,2,2,4,4,4,2,2
DB 8,2,2,2,2,4,4,4,2,2
DB 8,2,2,2,2,4,2,4,4,2
DB 4,4,2,2,4,16,8
DB 2,2,2,2,4,4,4,2,2,8
DB 2,2,2,2,4,4,4,2,2,8
DB 2,2,2,2,4,2,4,4,2,4
DB 4,4,2,2,16,8,4,2,2,4
DB 2,2,4,2,2,8,4,2,2,4
DB 2,2,4,2,2,8,4,2,2,4
DB 4,4,4,2,2,2,2,4,2,2
DB 4,2,2,2,4,2,8,4,2,2
DB 4,2,2,4,2,2,8,4,2,2
DB 4,2,2,4,2,2,8,4,2,2
DB 4,4,4,4,2,2,2,2,4,2
DB 2,4,4,4,2,2,5,1,1,16
DB 2,2,2,2,4,4,4,2,2,8
DB 2,2,2,2,4,4,4,2,2,8
DB 2,2,2,2,4,2,4,4,2,4
DB 4,4,2,18,16
//<<至少还有你>> 数据表
TAB4: //定时器高八位数据
DB 00H,0FDH,0FDH,0FDH,0FDH,0FEH,00H,0FDH,0FDH,0FEH
DB 0FDH,0FDH,00H,0FDH,0FDH,0FDH,0FDH,0FEH,0FEH,0FEH
DB 0FEH,00H,0FEH,0FEH,0FEH,0FEH,0FEH,0FDH,0FEH,00H
DB 0FDH,0FDH,0FDH,0FEH,0FEH,0FDH,0FEH,0FEH,0FDH,0FEH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FDH,0FEH,0FDH,0FDH,0FDH
DB 00H,0FDH,0FDH,0FDH,0FDH,0FEH,00H,0FDH,0FDH,0FEH
DB 0FDH,0FDH,00H,0FDH,0FDH,0FDH,0FDH,0FEH,0FEH,0FEH
DB 0FEH,00H,0FEH,0FEH,0FEH,0FEH,0FEH,0FDH,0FEH,00H
DB 0FDH,0FDH,0FDH,0FEH,0FEH,0FDH,0FEH,0FEH,0FDH,0FEH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FDH,0FEH,00H,0FDH,0FDH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH
DB 0FEH,0FEH,0FEH,0FEH,0FDH,0FDH,0FEH,0FEH,0FEH,0FDH
DB 0FDH,0FEH,0FEH,0FEH,0FDH,0FDH,0FEH,0FEH,0FEH,0FEH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FDH,0FDH,0FEH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0ffh /* 0FEH,0FEH,0FDH,0FDH ,
DB 0FEH,0FEH,0FEH,0FDH,0FDH,0FEH,0FEH,0FEH,0FEH,0FEH
DB 00H,00H,0FDH,0FDH,0FDH,0FEH,0FDH,0FEH,0FDH,0FDH
DB 0FEH,0FEH,0FDH,0FDH,00H,0FDH,0FDH,0FDH,0FEH,0FDH
DB 0FEH,0FDH,0FDH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,00H
DB 00H,0FDH,0FDH,0FDH,0FEH,0FDH,0FEH,0FDH,0FDH,0FEH
DB 0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH,0FEH
DB 0FEH,0FEH,0FEH,0FDH,0FDH,0FEH,0FEH,0FEH,0FEH,0FEH
DB 0FEH,00H ,0FFH */
TAB5: //定时器低八位数据
DB 00H,09H,09H,09H,82H,022H,00H,82H,82H,22H
DB 82H,0C8H,00H,34H,34H,09H,82H,22H,57H,57H
DB 22H,00H,22H,57H,85H,06H,06H,0C8H,06H,00H
DB 82H,82H,0C8H,22H,22H,0C8H,57H,22H,82H,82H
DB 85H,9AH,85H,85H,57H,0C8H,22H,0A7H,0C8H,82H
DB 00H,09H,09H,09H,82H,022H,00H,82H,82H,22H
DB 82H,0C8H,00H,34H,34H,09H,82H,22H,57H,57H
DB 22H,00H,22H,57H,85H,06H,06H,0C8H,06H,00H
DB 82H,82H,0C8H,22H,22H,0C8H,57H,22H,82H,82H
DB 85H,9AH,85H,85H,57H,0C8H,22H,00H,82H,0C8H
DB 22H,22H,22H,57H,85H,85H,85H,85H,57H,85H
DB 85H,0C1H,0C1H,0C1H,0C1H,85H,57H,57H,57H,57H
DB 57H,57H,0C1H,0C1H,82H,82H,57H,22H,22H,82H
DB 82H,9AH,85H,57H,0A7H,82H,22H,57H,85H,85H
DB 85H,85H,57H,85H,85H,0C1H,0C1H,82H,82H,85H
DB 57H,57H,57H,22H,57H,57H ,0ffh /* ,0C1H,0C1H,82H 82H
DB 57H,22H,22H,82H,82H,85H,85H,57H,22H,22H
DB 00H,00H,82H,82H,0C8H,22H,0C8H,22H,82H,82H
DB 9AH,85H,82H,82H,00H,82H,82H,0C8H,22H,0C8H
DB 22H,82H,82H,85H,57H,57H,22H,57H,85H,00H
DB 00H,82H,82H,0C8H,22H,0C8H,22H,82H,82H,85H
DB 85H,57H,22H,85H,85H,0C1H,85H,57H,22H,57H
DB 22H,85H,22H,0C8H,82H,85H,9AH,85H,57H,22H
DB 57H,00H ,0FFH */
TAB6: //节拍时值表
db 4,2,2,4,2,18,4,2,2,4
db 2,18,4,2,2,4,4,4,2,6
db 4,4,2,2,4,2,6,2,8,4
db 2,2,4,4,4,4,4,10,4,4
db 4,4,4,16,4,4,16,4,4,24
db 4,2,2,4,2,18,4,2,2,4
db 2,18,4,2,2,4,4,4,2,6
db 4,4,2,2,4,2,6,2,8,4
db 2,2,4,4,4,4,4,10,4,4
db 4,4,4,16,4,4,8,6,2,4
db 4,16,6,2,8,4,4,4,2,2
db 2,2,4,4,2,2,4,2,6,2
db 2,2,2,4,4,2,2,4,2,6
db 2,2,4,4,4,16,8,8,4,4
db 4,2,2,2,2,4,4,2,2,6
db 2,4,2,2,2,2/*,4,4,2 ,2
db 6,2,4,2,2,2,6,6,2,24
db 8,4,2,2,2,2,2,6,2,2
db 4,8,4,24,4,2,2,2,2,2
db 6,2,2,2,6,4,4,4,12,8
db 4,2,2,2,2,2,6,2,2,2
db 6,4,4,4,4,4,4,2,6,4
db 4,2,18,2,2,6,2,4,12,8
db 8,8 */
END ;程序结束
上一篇:TLC5615简易数控电压表
下一篇:nRF2401无线通信模块调试
推荐阅读最新更新时间:2024-03-16 13:06