资源描述:
《51单片机上实现7首简单音乐的汇编代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、51单片机上实现7首简单音乐的汇编代码ORG00HJMPSTARTORG0BHJMPTIM0START:MOVTMOD,#01H MOVIE,#10000010B CLRTR0 MOVP2,#0FFH MOVA,P2 MOVP2,#0FFH RRA RRA RRA ANLA,#0FH ;将选择的音乐号放入A MOV40H,A JBP3.3,$ ;P3.3为起始信号片选信号START0:MOV
2、30H,#00HNEXT:MOVA,40H JBP3.3,START CJNEA,#00H,MUSIC1 MOVDPTR,#TABLE ;生日快乐的TABLE JMPCONMUSIC1:CJNEA,#01,MUSIC2 MOVDPTR,#TABLE1 JMPCONMUSIC2:CJNEA,#02,MUSIC3 MOVDPTR,#TABLE2 JMPCONMUSIC3:CJNEA,#03,MUSIC4 MOVDPTR,#TABLE3
3、 JMPCONMUSIC4:CJNEA,#04,MUSIC5 MOVDPTR,#TABLE4 JMPCONMUSIC5:CJNEA,#05,MUSIC6 MOVDPTR,#TABLE5 JMPCONMUSIC6:CJNEA,#06,MUSIC7 MOVDPTR,#TABLE6 JMPCONMUSIC7:SETBP2.6 JMPSTART ;共7首歌,这个时候不发音CON: MOVA,30H MOVCA,@
4、A+DPTR MOVR2,A JZEND0 ANLA,#0FH MOVR5,A MOVA,R2 SWAPA ANLA,#0FH JNZSING CLRTR0 JMPD1SING:mov50H,A MOVA,40H CJNEA,#00H,MODE1 MOVDPTR,#TABLE0 ;TABLE1 JMPCONTMODE1:MOVDPTR,#TABLE01CONT:MOVA,50H DECA
5、 MOV22H,A RLA MOVCA,@A+DPTR MOVTH0,A MOV21H,A MOVA,22H RLA INCA MOVCA,@A+DPTR MOVTL0,A MOV20H,A SETBTR0D1: CALLDELAY INC30H JMPNEXTEND0:CLRTR0 JMPSTART0TIM0:PUSHACC PUSHPSW MOVTL
6、0,20H MOVTH0,21H CPLP2.6 POPPSW POPACC RETIDELAY:MOVR7,#02D2: MOVR4,#125D3: MOVR3,#248 ;JBP2.7,START DJNZR3,$ DJNZR4,D3 DJNZR7,D2 DJNZR5,DELAY RETTABLE0: DW64260,64400,64524,64580 DW64684,64777,64820,64
7、898 DW64968,65030,65058,65110 DW65157,65178,65217TABLE01: DW64260,64400,64524,64580 DW64684,64777,64820,64898 DW64968,65030,65058,65110 DW65157,65178,65217TABLE: ;生日快乐 DB82H,01H,81H,94H,84H DB0B4H,0A4
8、H,04H DB82H,01H,81H,94H,84H DB0C4H,0B4H,04H DB82H,01H,81H,0F4H,0D4H DB0B4H,0A4H,94H