单片机音乐盒程序设计源代码_第1页
单片机音乐盒程序设计源代码_第2页
单片机音乐盒程序设计源代码_第3页
单片机音乐盒程序设计源代码_第4页
单片机音乐盒程序设计源代码_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、rs bit p2.0;定义液晶显示端口标号rw bit p2.1e bit p2.2org 0000hljmp mainorg 000bhljmp tt0org 001bhljmp tiintorg 1000hmain:;-液晶初始化mov sp,#70hmov p0,#01h;清屏call enablemov p0,#38h;8位,2行显示lcall enablemov p0,#0fh;屏显on,光标on,闪烁onlcall enablemov p0,#06h;计数地址加1,显示幕onlcall enable;-内在初始化lcall initil;-key1:lcall keylcall

2、moddljmp key1;-键盘扫描key:nopnop lcall ksjnz k1;有按键转到k1lcall kaijilcall sopxn:ljmp keyk1:lcall moddlcall moddlcall ksjnz k2ljmp keyk2:mov r2,#0feh;读键盘mov r4,#00hk3:mov a,r2mov p1,amov a,p1jb acc.4,l1;为1跳转,第一行无按键mov a,#00hljmp lkl1:jb acc.5,l2mov a,#04hljmp lkl2:jb acc.6,l3mov a,#08hljmp lkl3:jb acc.7,n

3、ext1mov a,#0ch;-lk:add a,r4push acck4:lcall delay1;若同时有其他键,则等待lcall ksjnz k4;-mov r3,#07hclr amov r0,#30hmov r1,#31hmm1:mov a,r1mov r0,ainc r0inc r1djnz r3,mm1pop accmov r0,aret;-next1;inc r4;-列扫描mov a,r2jnb acc.3,n2ljmp n1n2:ljmp keyn1:rl amov r2,aljmp k3;-ks:mov a,#0f0h;判断p1口mov p1,anopnop mov a,p

4、1cpl aanl a,#0f0hret;-delay1:setb rs0dl:mov r5,#0ahdl2:mov r6,#63dl3:nopnop djnz r6,dl3djnz r5,dl2clr rs0ret;30h-37h初值为零;-initil:mov r3,#08hmov r0,#30hm1:mov r0,#00hm1:mov r0,#00hm1:mov r0,#00hinc r0djnz r3,m1ret;-;显示;-modd:mov p0,#8ehlcall enablemov a,37hmov dptr,#table3movc a,a+dptrlcall write2ret

5、;-;开机提示字;-kaiji:mov a,37hcjne a,#0fh,dffmov p0,#80h;设光标地址lcall enablemov dptr,#table1;写数据lcall write1dff:ret;-;按键值播放歌曲;-sop:mov a,37hcjne a,#01h,a11lcall moddmov 52h,#high table10mov 53h,#low table10lcall initile2lcall main0a11:cjne a,#02h,a22lcall moddmov 52h,#high table20mov 3h,#low table20lcall i

6、nitile2lcall main0aaa:ret;-initile2:mov l50ms,#20mov l1ms,#00hmov l250ms,#00hmov sec,#00hmov min,#00hmov hou,#00hmov a,houmov b,#10hdiv abadd a,#30h;将bcd码转化为asiic码mov p0,#0c8h;显示小时十位call enablecall write2mov a,badd a,#30hmov p0,#0c9h;显示小时个位call enablecall write2mov a,#3ahmov p0,#0dh;显示冒号call enablec

7、all write2mov a,minmov b,10div abadd a,#30hmov p0,#0cbh;显示分十位call enablecall write2mov a,badd a,#30hmov p0,#0cdh;显示冒号call enablecall write2mov a,secmov b,#10div abadd a,#30hmov p0,#0ceh;显示秒十位call enablecall write2mov a,badd a,#30hmov p0,#0cfh;显示秒个位call enablecall write2mov p0,#0c0h;设光标地址call enablec

8、all write1ret;-写指令enable:clr rsclr rwclr elcall delaysetb eret;-写数据write1:mov r1,#00ha1:mov a,r1movc a,a+dptrcall write2inc r1cjne a,#ofeh,a1;未到字符串末尾继续retwrite2:mov p0,asetb rsclr rwlcr ecall delaysetb eret;-tabdb 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8hdb 80h,90h,88h,83h,0c6h,0a1h,86h,8ehtab1:db 89h,86

9、h,0c7h,0c7h,0c0htab2:db 0c6h,88h,0c0htable1:dbwelcom here,0fehtable2:dbdff wb,0fehtable3:db 30h,31h,32h,33hdb 34h,35h,36h,37hdb 38h,39h,41h,42hdb 43h,44h,45h,46h;-释放歌曲程序;-main0:mov tmod,#11hmov ie,#8ahmov th1,#3chmov tl1,#0b0hlcall ksjnz ttm12mov 40h,#00h;-next20:mov a,40hmov dph,52hmov dpl,53hmovc

10、a,a+dptrmov r2,ajz stopanl a,#0fhmov r1,amov a,r2swap aanl a,#0fhjnz singclr tr0jmp w1;-sing:dec amov 22h,arl amov dptr,#table00movc a,a+dptrmov th0,amov 21h,amov a,22hrl ainc amovc a,a+dptrmov tl0,amov 20h,asetb tr0setb tr1w1:lcall delay30inc 40hlcall ks;有键跳出jnz stopljmp next20;-stop;clr tr0clr tr1

11、ljmp amin0;-ttm12:lcall k2mov a,37hcjne a,#0eh,ttm13clr tr1lcall delay1ttm120:lcall kslcall delay1jz ttm120lcall k2mov a,37hcjne a,#0eh,ttm120setb tr1ljmp next20ttm13:cjne a,#0ch,ttm14mov a,52hinc amov 52h,amov a,53hinc amov 53h,amov a,36hinc amov 37h,aljmp ttm2ttm14:cjne a,#0dh,ttm2mov a,52hdec amo

12、v 52h,amov a,53hdec amov 53h,amov a,36hdec amov 37h,attm2:retret;-table00;dw 64580 ,64684 ,64777 ,64820dw 64898,64968,65030,64260dw 64400,64524,65058,63835,64021;-;第二首月亮代表我的心;-table20:db 02h,82hdb 16h,32h,54h,02h,52hdb 0a6h,32h,54h,02h,52hdb 64h,74h,0b6h,64hdb 52h,5ch,32h,22hdb 16h,12h,14h,32h,22hdb 16h,12h,14h,22h,32hdb 26h,12h,94h,22h,32hdb 2chdb 32h,52hdb 36h,22h,14h,54hdb 0ach,92h,0a2hdb 96h,0a2h,96h,82hdb 3ch,54hdb 36h,22h,14h,54hdb 0ach,92h,0a2hdb 96h,0a2h,96h,82hdb

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论