ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:263.27KB ,
资源ID:6652514      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-6652514.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机音乐盒报告Word文档下载推荐.docx)为本站会员(b****4)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

单片机音乐盒报告Word文档下载推荐.docx

1、按键1负责播放/暂停歌曲。按键2,3负责切换播放歌曲,播放歌曲共3首,同时LED显示相应的曲目,显示曲目标号共3种。图2-2音乐盒功能3. 系统硬件的设计31主控制器的设计主要能够是实现程序输入时,能够模拟音乐盒的基本功能,能够有按键输入的模块部分,有数码管显示歌曲序号,并有蜂鸣器模块部分在播放音乐。总体硬件电路实现功能如下所示1) 电路中用P3.2、P3.4、P3.5控制按键。2) P0.0P0.7,P2.02.1控制LED。3) P1.0控制蜂鸣器。4) 电路为12MHZ晶振频率工作,起振电路中C1、C2均为30PF。32接口电路的设计(1)AT89C51简介AT89C51是一种带4K字节

2、闪存可编程可擦除只读存储器的低电压,高性能CMOS 8位微处理器,俗称单片机。AT89C51是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图3-1所示 图3-1单片机(2)时钟电路 AT89C51引脚XTAL1和XTAL2与

3、晶体振荡器及电容C1、C2按图所示方式连接。晶振、电容C1/C2及片内与非门(作为反馈、放大元件)构成了电容三点式振荡器,振荡信号频率与晶振频率及电容C1、C2的容量有关,但主要由晶振频率决定,范围在033MHz之间,电容C1、C2取值范围在530pF之间。根据实际情况,本设计中采用12MHZ作为系统的外部晶振,电容取值为30pF。其电路图如图3-2所示。 图3-2时钟电路(3)复位电路:由一个10nf电容接电源和一个10k的电阻接地组成,使单片机的CPU和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作。如图3-3所示(4)按键电路:有外部中断输入和定时/计数器的外部输入都是低

4、电平有效,可以和复位电路相视,只要讲复位电路中的电容去点即可。共三个按键,接口为P3.2、P3.4、P3.5按下播放/暂停歌曲会实现播放暂停,按下下一曲或下一曲单片机也会显示相应的功能。按键如图3-4所示 图3-3复位电路(5)音乐驱动电路:即蜂鸣器部分,接口为P1.0。由于单片机最大的输入电流为3.2mA,所以选用PNP管,并要PNP的基极和发射极加限流电阻。如图3-5所示(6)显示电路:LED显示电路之直接到单片机的P0.0P0.7,P2.02.1口,由单片机通过控制按键的切换来实现歌曲的曲目,分别能实现“11,22,33”。如图3-6所示图3-4按键电路 图3-5蜂鸣器 图3-6显示电路

5、4. 系统软件的设计41主程序的设计通过主程序对单片机的电路实行控制并结合按键功能实现播放,暂停,停止,上一曲,下一曲。音阶和节拍的配合实现歌曲(共三首歌)演奏,并利用数码管显示当前播放序号。按下开始按钮之后,程序初始化,再按下播放按键,程序开始判断按键是否按下,若按下就开始判断曲目标号,送相应表首地址给dptr,再调用音乐子程序,播放相应曲目,数码管会显示相应的曲号。按下“上一曲”或“下一曲”后会使音乐程序加一或减一,再送相应表首地址给dptr,这样可以实现任意曲目的切换。主程序流程图如下所示:42子程序的设计判断子程序流程图Del延时子程序流程图Music子程序流程图5. 系统调试51 硬

6、件调试硬件在单片机学习板上进行仿真实验,能显示曲号,基本功能能实现,但音乐不太明显。52 软件调试播放:当开始键P3.2按下时,音乐盒顺序播放。暂停:当音乐要暂停时,按下P3.2时就可实现。下一曲:按下P3.4时,可实行对音乐盒的控制歌曲进入到下一曲。上一曲:按下P3.5时,可实现音乐盒上一曲的循环播放。当歌曲正常播放时数码管也能显示当前的歌曲序号。53 综合调试按照上面设计的电路在proteus软件内画图, 打开单片机软件开发系统Keil,选择89c51单片机,在其中编写程序,运行生成一个后缀名为hex的文件,然后将该文件下载到proteus中的AT89c51单片机中进行仿真,观察实验现象。

7、仿真能实现播放音乐,按键选择曲目,暂停,播放等功能。6. 指标测试61测试仪器 装有Proteus 及Keil软件的计算机,耳塞或音响设备,单片机学习板等。62指标测试 能达到开始设想的音乐盒功能,能实现播放,暂停,停止,上一曲,下一曲,音阶和节拍的配合实现歌曲(共三首歌)演奏,同时数码管能显示播放歌曲的曲目。7. 结论通过这次单片机课程设计,发现自己想学好单片机还有很大的差距。由于自己理论知识不扎实,能力有限,导致编程很困难。后来经过老师同学们的指点,查了大量有关音乐盒设计的资料,才写出了完整的程序。在调试时会出现程序一点错误也没有,但就是不能正常运行的现象,最后发现是因为程序中有的指令书写

8、得不规范导致的。好几页的程序很容易造成混乱,后来加注释或分割线,便于查找或更改。编程前加个流程图比较好,这样会使思路清晰,例如数字音乐盒的设计思路完全可以按着MP3的工作方式列写流程图。通过好几天的设计,调试最后终于基本上能实现课题上的功能。本学期学习单片机的时间只有十几周时间,对单片机的硬件设计,软件设计掌握的深度不够,感谢老师给我们这么一次机会,通过此次课程设计,使我对硬件电路的工作原理有了进一步的学习,更是对软件方面,在程序的设计,程序的调试方面都学到了很多东西,这是第一次设计单片机,很有成就感。对这次课程设计我觉得更需要我们耐心,仔细。参考文献:1 楼然苗,胡佳文.51系列单片机设计实

9、例,北京:北京航空航天大学出版社,2003.03.2 楼然苗,胡佳文.单片机实验与课程设计,浙江大学出版社,2010.10.3 张永枫,单片机应用实训教程,清华大学出版社,2008.12.4 张迎新,单片机初极教程单片机基础,北京航空航天大学出版社,2006.8.附录一:PROTEUS仿真效果图附录二:源程序代码及必要的注释。 shuzhi equ 3fh ;选曲目的地址 song equ p1.0 ;扬声器播放P1.0 play equ p3.2 ;播放停止键P3.2 addone equ p3.4 ;曲目加一键P3.4 subone equ p3.5 ;曲目减一键P3.5 dul equ

10、p0 ;数码管段选P0口 wel equ p2 ;数码管位选P2口 org 0000h ljmp start org 000bh ;定时器0溢出中断入口地址 ajmp cont ;指向定时器中断程序 org 0013h ;外部中断一入口地址 ajmp pause ;指向外部中断程序 org 0100hstart: mov sp,#50h mov th0,#0dbh ;定时器赋初值 mov tl0,#0ffh mov tmod,#01h mov ie,#86h ;开中断 mov tcon,#00h mov r0,#00h mov shuzhi,#00hmain: jnb play,first ;

11、判断P3.2键是否按下 sjmp mainfirst: acall del20判断P3.2键是否释放 mov dul,#0f9h ;显示数值1 mov wel,#7fh ;显示位送P2口 mov dptr,#dat1 ;表1首地址送DPTR acall music0 acall next ret next: inc shuzhi ;shuzhi+1 mov a,shuzhi cjne a,#01,loop3 ;A是否=1,不等就跳转到LOOP3 mov dptr,#dat2 ;表2首地址送DPTR mov dul,#0a4h ;显示数值2 mov wel,#7fh inc aloop3: cj

12、ne a,#02,loop4 ;A是否=2,不等就跳转到LOOP4 mov dptr,#dat3 ;表3首地址送DPTR mov dul,#0b0h ;显示数值3loop4: cjne a,#03,next ;A是否=3,不等就跳转到next acall firstlast: dec shuzhi ;shuzhi-1 mov a,shuzhi cjne a,#02,last1 mov dptr,#dat3 mov dul,#0b0hlast1: cjne a,#01,last2 mov dptr,#dat2 mov dul,#0a4hlast2: cjne a,#00,last mov dpt

13、r,#dat1 mov dul,#0f9h ret music0: mov 20h,#00h ;中断计数单元清0music1: clr a movc a,a+dptr ;查表取音阶常数 jz end0 ;是结束符? cjne a,#0ffh,music5 ;是休止符? ljmp music3 ;产生100ms停顿music5: nopkey: jnb play,k0 ; jnb addone,k1 ;判断P3.4键是否按下 jnb subone,k2 ;判断P3.5键是否按下 mov r6,a ;音阶常数送R6 inc dptr ;DPTR+1 mov a,#0取常数送R7 mov r7,a

14、setb tr0 ;启动定时器T0music2: cjne r0,#0,$ cpl song ;输出电平取反 mov a, r6 mov r3,a ;音阶常数送R3 lcall del20 mov a, r7 ;节拍常数送A cjne a,20h,music2 ;节拍时间到否为取下一音阶作准备 inc dptr ljmp music1music3: nop ;休止100ms clr tr0 ;关闭定时器 mov r2, #14h ;R2=20music4: mov r3, #250 ;R3=250 djnz r2, music4end0: mov r2, #200 ;歌曲结束后,延时1s后继续

15、music6: mov r3, #250 djnz r2,music6k1: acall del20 ;调用延时子程序判断P3.4键是否释放 acall nextk2:判断P3.5键是否释放 acall lastk0: jnb play,k0del20: mov r4,#05hdel4: djnz r4,del4 djnz r3,del20cont: inc 20h ;计数单元+1重新10ms定时初值 reti ;跳出中断pause: jnb p3.3,pause ;判断P3.3键是否有释放 mov a,r0 ;把R0的值给A cpl a ;A值取反 mov r0,a retidat1:db

16、3bh,20h,3bh,20h,30h,20h,33h,20h,3bh,80h,0ffhdb 3bh,20h,3bh,20h,26h,20h,2bh,20h,26h,80h,0ffhdb 26h,20h,26h,20h,20h,20h,26h,20h,2bh,20h,2bh,20h,30h,20h,33h,10h,33h,10hdb 3bh,60h,40h,20h,4ch,80h,0ffhdb 26h,20h,26h,20h,20h,20h,26h,20h,2bh,20h,2bh,20h,2bh,20h,30h,20hdb 33h,20h,3bh,20h,3bh,20h,40h,2bh,3bh

17、,80h,0ffhdb 19h,20h,1ch,40h,26h,20h,19h,20h,1ch,40h,26h,20h,0ffhdb 20h,20h,1ch,20h,1ch,20h,20h,20h,26h,80h,0ffhdb 2bh,20h,2bh,40h,3bh,20h,2bh,20h,2bh,40h,2bh,20h,0ffhdb 26h,20h,2bh,20h,2bh,20h,30h,20h,2bh,80h,0ffhdb 2bh,20h,2bh,40h,3bh,20h,30h,20h,30h,40h,2bh,20h,0ffhdb 33h,20h,3bh,20h,3bh,20h,40h,2

18、0h,3bh,80h,0ffh,0ffhdat2:db 18h,30h,1ch,10h,20h,40h,1ch,10hdb 18h,10h,20h,10h,1ch,10h,18h,40hdb 1ch,20h,20h,20h,1ch,20h,18h,20hdb 20h,80h,0ffh,20h,30h,1ch,10h,18hdb 20h,15h,20h,1ch,20h,20h,20h,26hdb 40h,20h,20h,2bh,20h,26h,20h,20hdb 20h,30h,80h,0ffh,20h,20h,1ch,10hdb 18h,10h,20h,20h,26h,20h,2bh,20hd

19、b 30h,20h,2bh,40h,20h,20h,1ch,10hdb 30h,20h,2bh,40h,20h,30h,1ch,10hdb 18h,20h,15h,20h,1ch,20h,20h,20hdb 26h,40h,20h,20h,2bh,20h,26h,20hdb 20h,20h,30h,80h,20h,30h,1ch,10hdb 20h,10h,1ch,10h,20h,20h,26h,20hdb 2bh,20h,30h,20h,2bh,40h,20h,15hdb 1fh,05h,20h,10h,1ch,10h,20h,20hdb 26h,20h,2bh,20h,30h,20h,2b

20、h,40h db 20h,30h,1ch,10h,18h,20h,15h,20hdb 1ch,20h,20h,20h,26h,40h,20h,20hdb 2bh,20h,26h,20h,20h,20h,30h,30hdb 20h,30h,1ch,10h,18h,40h,1ch,20hdb 20h,20h,26h,40h,13h,60h,18h,20hdb 15h,40h,13h,40h,18h,80h,00hdat3:db 26h,20h,20h,20h,20h,20h,26h,10h,20h,10h,20h,80h,26h,20h,30h,20h db 30h,20h,39h,10h,30h

21、,10h,30h,80h,26h,20h,20h,20h,20h,20h,1ch,20h db 20h,80h,2bh,20h,26h,20h,20h,20h,2bh,10h,26h,10h,2bh,80h,26h,20h db 30h,20h,30h,20h,39h,10h,26h,10h,26h,60h,40h,10h,39h,10h,26h,20h db 30h,20h,30h,20h,39h,10h,26h,10h,26h,80h,26h,20h,2bh,10h,2bh,10h db 2bh,20h,30h,10h,39h,10h,26h,10h,2bh,10h,2bh,20h,2bh

22、,40h,40h,20hdb 20h,10h,20h,10h,2bh,10h,26h,30h,30h,80h,18h,20h,18h,20h,26h,20hdb 20h,20h,20h,40h,26h,20h,2bh,20h,30h,20h,30h,20h,1ch,20h,20h,20hdb 20h,80h,1ch,20h,1ch,20h,1ch,20h,30h,20h,30h,60h,39h,10h,30h,10hdb 20h,20h,2bh,10h,26h,10h,2bh,10h,26h,10h,26h,10h,2bh,10h,2bh,80hdb 18h,20h,18h,20h,26h,20h,20h,20h,20h,60h,26h,10h,2bh,20h,30h,20hdb 30h,20h,1ch,20h,20h,20h,20h,80h,26h,20h,30h,10h,30h,10h,30h,20hdb 39h,20h,26h,10h,2bh,10h,2bh,20h,2bh,40h,40h,10h,40h,10h,20h,10hdb 20h,10h,2bh,10h,26h,30h,30h,80h,00hend

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2