为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 用89C2051播放音乐

用89C2051播放音乐

2017-09-30 12页 doc 29KB 12阅读

用户头像

is_589748

暂无简介

举报
用89C2051播放音乐用89C2051播放音乐 ; []----------------------------------------------[] ; | | ; Z0 EQU 255 L1 EQU 0 L2 EQU 1 L3 EQU 2 L4 EQU 3 L5 EQU 4 L6 EQU 5 L7 EQU 6 M1 EQU 7 M2 EQU 8 M3 EQU 9 M4 EQU 10 M5 EQU 11 M6 EQU 12 M7 EQU 13 H1 EQU 14 H2 EQU 15 H3 EQU 16 ...
用89C2051播放音乐
用89C2051播放音乐 ; []----------------------------------------------[] ; | | ; Z0 EQU 255 L1 EQU 0 L2 EQU 1 L3 EQU 2 L4 EQU 3 L5 EQU 4 L6 EQU 5 L7 EQU 6 M1 EQU 7 M2 EQU 8 M3 EQU 9 M4 EQU 10 M5 EQU 11 M6 EQU 12 M7 EQU 13 H1 EQU 14 H2 EQU 15 H3 EQU 16 H4 EQU 17 H5 EQU 18 H6 EQU 19 H7 EQU 20 S1 EQU 21 DELAY EQU 30H ; 节拍的延时 VOICE EQU 31H ; 音符 ; Counters SongFlag equ 36h sptr equ 37h ; i equ 38h ; J equ 39h ; ;interface of Play() SONGH EQU 40H SONGL EQU 41H TIMEH EQU 42H TIMEL EQU 43H SIZE EQU 44H ;..................................................... ORG 0000H AJMP MAIN ORG 000BH AJMP TIMER0 ORG 001BH AJMP TIMER1 ;..................................................... ORG 0030H MAIN: MOV IE,#00H ; Close Interrupt MOV SP,#60H ; Set Stack Pionter SP = 40h MOV P1,#00H ; Clean P1 ; 初始化 Timers MOV TMOD, #11H ; 都工作在方式1 SETB EA SETB ET0 SETB ET1 mov sptr,#0 WAITING: MOV DPTR,#Song mov SONGH,dph mov SONGL,dpl MOV DPTR,#time mov TIMEH,dph mov TIMEL,dpl mov a , TIMEL clr c subb a, SONGL mov SIZE,a ACALL Play MOV DPTR,#SONG_0 mov SONGH,dph mov SONGL,dpl MOV DPTR,#CTIME_0 mov TIMEH,dph mov TIMEL,dpl mov a , TIMEL clr c subb a, SONGL mov SIZE,a ACALL Play MOV DPTR,#SONG_1 mov SONGH,dph mov SONGL,dpl MOV DPTR,#CTIME_1 mov TIMEH,dph mov TIMEL,dpl mov a , TIMEL clr c subb a, SONGL mov SIZE,a ACALL Play AJMP WAITING Play: ; Input SONGH , SONGL , TIMEH, TIMEL ,SIZE MOV sptr,#0 CLR TR0 Play_01: MOV DPH,SONGH MOV DPL,SONGL MOV A,sptr MOVC A,@A+DPTR MOV VOICE ,A MOV DPH,TIMEH MOV DPL,TIMEL MOV A,sptr MOVC A,@A+DPTR MOV DELAY,A MOV A,#10h CLR C SUBB A,DELAY ANL A,#0FH INC A MOV DELAY ,A INC sptr MOV A,sptr CJNE A,SIZE,PLAY_CONTINUE MOV P1,#0 RET PLAY_CONTINUE: MOV SongFlag,#0 MOV TH0,#0EFH MOV TL0,#0E0H SETB TR0 PLAY_wwwS: MOV A,SongFlag CJNE A,#1,PLAY_wwwS AJMP Play_01 TIMER0: PUSH A CLR TR0 CPL P1.3 MOV TH0,#0C2H MOV TL0,#0F7H DJNZ DELAY,timer0_01 MOV SongFlag,#1 CLR TR0 CLR P1.3 timer0_01: MOV A,VOICE CJNE A,#0,timer0_02 ; 是否是休止符 CLR TR1 ; 是 则 clear TR1 AJMP timer0_03 timer0_02: SETB TR1 ; 不是则 set TR1 timer0_03: SETB TR0 POP A RETI ;...................................... TIMER1: PUSH A push dpl push dph CLR TR1 MOV DPTR , #Ttable MOV A, VOICE RL A ANL A,#0FEH MOV J, A MOVC A,@A+DPTR MOV TH1,A MOV A,J INC A MOVC A,@A+DPTR MOV TL1,A CPL P1.7 CPL P1.6 CPL P1.5 CPL P1.4 SETB TR1 pop dph pop dpl POP A RETI Ttable: DB 0F8H, 08BH , 0F9H, 05BH , 0FAH, 014H , 0FAH, 06BH , DB 0FBH, 004H , 0FBH, 08FH , 0FCH, 00BH , 0FCH, 045H , DB 0FCH, 0ADH , 0FDH, 00AH , 0FDH, 033H , 0FDH, 082H , DB 0FDH, 0C7H , 0FEH, 003H , 0FEH, 021H , 0FEH, 056H , DB 0FEH, 084H , 0FEH, 099H , 0FEH, 0C0H , 0FEH, 0E3H , DB 0FFH, 001H , 0FFH, 010H , ; 《 Yesterday Once More 》、 《你的样子》 Song : DB M5,M3,M1,M1,M1,M2,M3,M5,M5,M3,M5,M3 DB M6,M5,M5,M2,M3,M3,M5,M6,M7,M3,M5,M5 DB M6,M6,M6,M3,M5,M6,H3,H2,H1,M6 DB M7,M5,M3,M5,M3,M2,M2,M2 DB L7,M2,L6,L5,L5,M1,M1,M2,M3,M5,M5,M5,M3,M5,M3 DB M6,M5,M2,M3,M3,M5,M6,M7,M3,M5,M5 DB M6,M6,M7,H2,H1,M7,M7,M6,M6,M6,M7 DB H1,M7,M7,M6,M6,M7,H1,H1,M6,H1,M6 DB H2,H2,H1,H2,H3,H3,H3,H3,H3,H2,H1 DB M7,H1,M7,M6,M6,M3,M5,M5,M5,M5,M5,M5,M5,M5,H1,H2 DB H3,H3,H3,H3,H3,H2,H1,M7,H1,M7,M6,M6,M3,M5 DB M5,M5,M5,M5,M5,M5,M5,M6,M7,H1,M7,H1,H2,H1,M7 DB H1,M7,H1,H2,H1,H2,H3,H3,H2,H1,M6 DB M6,Z0,M3,M3,M6,M3,M5,M5,M5,M5,M5 DB M5,M5,M2,M3,M2,M2,M1,M2,M3,M3,M3,M3 DB M2,M2,M5,M5,H1,H2 DB H3,H3,H3,H3,H3,H2,H1,M7,H1,M7,M6,M6,M3,M5 DB M5,M5,M5,M5,M5,M5,M5,H1,H2,H3,H3,H3,H3,H3,H2,H1 DB M7,H1,M7,M6,M6,M3,M5,M5,M5,M5,M5 time : DB 2 ,2 ,4 ,4 ,4 ,4 ,3, 4 ,4 ,4 ,4 ,4 DB 4 ,4 ,4 ,4 ,2 ,4 ,4 ,2 ,2 ,4 ,4 ,4 DB 2 ,2 ,2 ,4 ,4 ,2 ,2 ,4 ,2 ,4 DB 3 ,4 ,4 ,2 ,4 ,2 ,2 ,2 DB 4 ,4 ,4 ,4 ,4 ,4 ,4 ,4 ,4 ,2 ,4 ,4 ,4 ,4 ,4 DB 4 ,2 ,4 ,2 ,4 ,4 ,2 ,2 ,4 ,2 ,4 DB 2 ,2 ,2 ,2 ,4 ,2 ,4 ,2 ,4 ,8 ,8 DB 4 ,2 ,4 ,2 ,4 ,4 ,2 ,2 ,4 ,2 ,4 DB 2 ,2 ,2 ,2 ,4 ,4 ,4 ,4 ,2 ,4 ,4 DB 4 ,4, 4 ,4, 2 ,4 ,4 ,2 ,2 ,2 ,2, 2, 2 ,2, 4, 4 DB 4 ,4 ,4 ,4 ,2 ,4 ,4 ,4, 4 ,4 ,4 ,2 ,4 ,4 DB 2 ,2 ,2 ,2 ,2 ,2 ,2 ,4 ,4 ,4 ,4 ,4 ,3 ,4 ,4 DB 4 ,4 ,4 ,3 ,4 ,4 ,2 ,2 ,4 ,2 ,4 DB 2 ,4 ,4 ,4 ,4 ,4 ,4 ,2 ,2 ,2 ,2 DB 2 ,4 ,4 ,4 ,8 ,8 ,4 ,4 ,2 ,2 ,2 ,2 DB 2 ,2 ,2 ,2 ,2 ,2 DB 4 ,4 ,4 ,4 ,2 ,4 ,4 ,4 ,4 ,4 ,4 ,2 ,4 ,4 DB 2 ,2 ,2 ,2 ,2 ,2 ,2 ,4 ,4 ,4 ,4 ,4 ,4 ,2 ,4 ,4 DB 4 ,4 ,4 ,4 ,2 ,4 ,4 ,2 ,2 ,2 ,2 SONG_0: DB Z0,Z0,Z0,Z0,M3,M6,M6,M6,M6,M6,M5,M6,M7,M6,M6,M6,M6 DB M5,M3,M3,M3,M3,M3,M2,M3,M3,Z0,M3,M6,M6,M6,M6,M6,M5,M6,M7,M6,M6,M6,M6 DB M5,M3,M3,M3,M3,M3,M2,M3,M3,M5,M3,M2,M2,M2,M2,M3,M2,M1,M3,M5,Z0,M3 DB M7,M6,M6,M6,M6,M7,M6,M5,M5,M3,Z0,M5,M3,M2,M2,M2,M2,M3,M2,M1,M3,L7,L7,L7,L7,L7,L5 DB L6,L6,L6,L6,L5,L6,L7,L6,L6,Z0,M3,M6,M6,M6,M6,M6,M5,M6,M7,M6,M6,M6,M6 DB M5,M3,M3,M3,M3,M3,M2,M3,M3,Z0,M3,M6,M6,M6,M6,M6,M6,M5,M6,M7,M6,M6,M6,M6,M6 DB M5,M3,M3,M3,M3,M3,M2,M3,M3,M5,M3,M2,M2,M2,M2,M3,M2,M1,M3,M5,Z0,M3 CTIME_0: DB 2 ,2 ,2 ,3 ,8 ,4 ,4 ,4 ,8 ,8 ,8 ,8 ,8 ,8 ,4 ,8 ,8 DB 8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,1 ,8 ,8 ,4 ,4 ,4 ,8 ,8 ,8 ,8 ,8 ,8 ,4 ,8 ,8 DB 8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,1 ,8 ,8 ,4 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,4 ,4 ,8 DB 8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,4 ,4 ,8 ,8 ,4 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,4 ,8 ,8 ,8 ,8 ,8 DB 8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,3 ,8 ,8 ,4 ,4 ,4 ,8 ,8 ,8 ,8 ,8 ,8 ,4 ,8 ,8 DB 8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,3 ,8 ,8 ,4 ,4 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 DB 8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,3 ,8 ,8 ,4 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,4 ,4 ,8 SONG_1: DB M7,M6,M6,M6,M6,M7,M6,M5,M5,M3,Z0,M5,M3,M2,M2,M2,M2,M3,M2,M1,M3,L7,L7,L7,L7,L7,L5 DB L6,L6,L6,L6,L5,L6,L7,L6,L6,L6,H1,M7,M6,M3,M3,M6,M6,M5,M3,M3,M2,M1,M2,M3,M3,M3 DB M6,M5,M3,M2,M3,M3,M1,M2,M3,M3,M2,M1,M2,L7,L7,L7,H1,M7,M6,M3,M3,M6,M6,M5 DB M3,M3,M2,M1,M2,M3,M3,M3,M6,M5,M3,M2,M3,M3,M1,M2 DB M3,M3,M2,M1,M2,L7,L7,M3,M3,M3,M3,M3,M3,M3,M3,M3 CTIME_1: DB 8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,4 ,4 ,8 ,8 ,4 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,4 ,8 ,8 ,8 ,8 ,8 DB 8 ,8 ,8 ,8 ,8 ,8 ,8 ,8 ,2 ,2 ,2 ,8 ,8 ,2 ,8 ,8 ,8 ,8 ,4 ,8 ,8 ,8 ,4 ,8 ,2 ,2 DB 1 ,8 ,8 ,8 ,3 ,4 ,8 ,8 ,4 ,8 ,8 ,8 ,4 ,8 ,2 ,2 ,1 ,8 ,8 ,2 ,8 ,8 ,8 ,8 DB 4 ,8 ,8 ,8 ,4 ,8 ,2 ,2 ,1 ,8 ,8 ,8 ,4 ,4 ,8 ,8 DB 4 ,8 ,8 ,8 ,4 ,8 ,1 ,8 ,2 ,2 ,2 ,2 ,2 ,2 ,2 ,2 END
/
本文档为【用89C2051播放音乐】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索