汇编语言音乐播放器.docx
- 天风浪人个人认证 |
- 2021-10-20 发布|
- 15.59 KB|
- 9页
汇编语言音乐播放器
汇编语言音乐播放器
PAGE
汇编语言音乐播放器 ORG?0000H? AJMP?LOOOOP?//绝对转移指令。
?ORG?000BH?
?AJMP?TIM0?
?ORG?001BH?
?RETI?//中断返回指令
?ORG?0023H?
LOOOOP:?MOV? A,#01H?
LOOOP:??MOV?P1,#3FH?
???? MOV?P2,A?
?????RL??A?//A左移
MOV?R2,#0FFH?
DELAY0:?MOV?R3,#0FFH?
DJNZ?R3,$?//$在某些51的汇编语言里表示本条指令的地址
DJNZ??R3,$??意思是 R3减一,不为零跳转到本条指令(为零执行下一条指令) MOV?R4,#0FFH?
DJNZ?R4,$?
DJNZ?R2,DELAY0?
???JNB?,START?//直接寻址位不为1转
LJMP?LOOOP?//长调用指令
START:??MOV?P1,#06H?
MOV?R5,#00H??/初始化????????????????
??MOV?TMOD,?
??MOV?IE,#B?
??MOV?DPTR,#TAB2??//装第一首歌??????????
MOV?30H,DPL??//DPTR低8位送30H暂存
MOV?31H,DPH??//DPTR高8位送31H暂存?
START1:?INC?R4???寄存器内容加1//产生8位随机数
???MOV?A,? MOV?B,R4?
???MUL?AB??????????????
???MOV?P2,A?
???MOV?DPL,30H?
???MOV?DPH,31H?
???MOV?A,#00H?
???MOVC?A,@A+DPTR?????//查表??????
???MOV?R0,A????????//音符数据送R0暂存??
???MOV?A,#00H?