51单片机 汇编 IO发音系列 小喇叭爬音演奏

时间:2015-10-29 09:11:36
【文件属性】:
文件名称:51单片机 汇编 IO发音系列 小喇叭爬音演奏
文件大小:3KB
文件格式:RAR
更新时间:2015-10-29 09:11:36
51单片机 汇编 IO发音系列 爬音演奏 51单片机 汇编 IO发音系列 小喇叭爬音演奏 ;小喇叭的爬音演奏,即do,rui,mi,fa,so,la,xi,do ;30h=步进值,21h低8位 22h高8位 org 0000h ajmp main org 000bh jmp tim0 org 0030h main: ;主程序 mov tmod,#01h ;设定时方式 mov ie,#82h ;开中断 start0: mov 30h,#00h ; next: mov a,30h jnz sing ;根据音调决定是否演奏. clr tr0 jmp d1 sing: dec a mov 22h,a ;将音调存入22H. rl a mov dptr,#table1 movc a,@a+dptr ;根据音调决定定时器初值. mov th0,a ;放入TH0 mov 21h,a mov a,22h rl a inc a movc a,@a+dptr mov tl0,a ;放入TL0 mov 20h,a jz end0 ;如果到了00则停止发音 setb tr0 ;启动定时 d1: call delay inc 30h ;取下一个码 jmp next end0: clr tr0 jmp start0 ;重新开始 tim0: ;定时器中断服务程序 push acc push psw mov tl0,20h ;重赋初值. mov th0,21h cpl p3.2 pop psw pop acc reti delay: mov r7,#03h ;延时子程序 决定每个音的时间 d2: mov r4,#187 d3: mov r3,#248 djnz r3,$ djnz r4,d3 djnz r7,d2 ret table1: ;决定音调的定时初值.
【文件预览】:
小喇叭的爬音演奏
----_desktop.ini(9B)
----UNTITLED.DSK(4KB)
----小喇叭的爬音演奏.ASM(1KB)
----小喇叭的爬音演奏.HEX(420B)
----小喇叭的爬音演奏.BIN(164B)

网友评论