版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一. 概述 7二.系统总体方案设计 8三.硬件设计 113.189C51单片机 11图3-1和3-2 123.2I/O并行口直接驱动LED显示 12四.软件设计 154.1.软件设计 15五.系统调试与仿真 175.1软件仿真阶段 175.2系统的仿真调试阶段 175.3硬件安装调试 17六.总结 19参考文献 20附录A:音乐播放器电路设计图 21附录B:程序清单 22概述本课题要求以单片机为核心设计一个音乐播放器,完成多曲选择播放控制、停止控制、省电模式控制等功能。音乐播放器利用单片机的定时器产生乐谱的各种频率方波,信号经过放大后由喇叭发出声音,选取某段音乐使单片机连续播放。设计3个按键:播放/停止、下一曲、上一曲;4位LED显示器,用来显示所选曲目,该显示器在播放期间为了节省电源,设计为关闭状态,当一歌曲演奏结束,或选曲时显示器才显示曲目信息。总体的设计思路是这样的。二.系统总体方案设计本课题要求以单片机为核心设计一个简易音乐播放器,具有自动播放乐曲的功能。一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,音阶对应频率关系图1-1:C调各音符频率与计数值T的关系音符频率(Hz)半周期(ms)简谱码T值定时值(H)简谱码T值定时值(D)低1Do2621.90F894H62628低2Re2941.70F95CH63835低3Mi3301.51FA1AH64021低4Fa3491.43FA6AH64103低5So3921.28FB00H64260低6La4401.14FB8CH64400低7Si4941.01FC0EH64524中1Do5230.95FC4AH64580中2Re5870.85FCAEH64684中3Mi6590.76FD08H64777中4Fa6980.72FD30H64820中5So7840.64FD80H64896中6La8800.57FDC6H64966中7Si9880.51FE02H65030高1Do10460.47FE2AH65058高2Re11750.42FE5CH65110高3Mi13180.38FE84H65157高4Fa13970.36FE98H65178高5So15680.32FEC0H65217高6La17600.28FEE8H65252高7Si19670.25FF06H65283图2-1本设计用89C51单片机为核心,利用8段数码管显示器.采用动态显示输出,声音输出用蜂鸣器来实现。采用8段数码管显示器进行动态显示需要占用4根I/O线,蜂鸣器占用1根I/O线,89C51单片机有足够的线,不用扩展I/O口。用一片单片机即可满足本设计的输入输出。系统框图如图1-2所示:时钟电路复位电路时钟电路复位电路单片机(AT89C51)控制系统8段数码管显示器蜂鸣器发声电路图2-2通过对音乐播放器主体部分的电路进行模仿设计,达到播放器固有的基本功能,设定按钮K1、K2和K3。按钮K1打开并自动播放乐曲1;按钮K2打开并自动播放乐曲2;按钮K3为手动控制音乐停止的按键。根据设计要求该播放器能实现音键的控制。除此之外还实现了存储并读出几首音乐的功能。通过中断INT-1来实现功能的选择,当未按下中断按钮时,当按下中断按钮式,执行1,即可以播放音乐,共有两首音乐,由两个键来分别控制它们,此外,还设计了一个键来停止音乐的播放。系统主要由播放器发声模块、按键选择控制模块和存储器模块构成。播放器发声模块负责发出音键相应的音符;选择控制模块负责由外部控制播放器的各项功能的实现;显示模块负责按键时产生相应的值,由数码管来实现。在只实现基本功能时(由功能控制键控制),本文的主要内容是用AT89C51单片机为核心控制元件,系统程序主要包括主程序,定时器中断程序,音乐播放程序,延迟子程序等。三.硬件设计3.189C51单片机本设计使用的是ATMEL公司生产的AT89C51高性能8位单片机,片内含8Kbytes的可反复擦写的只读程序存储器和256bytes的随机存取数据存储器,器件采用ATMEL公司的高密度,非易失性存储技术生产,与标准MCS—51指令系统及8051产品引脚兼容,片内置8位中央处理器(CPU)和Flash存储单元,功能强大的AT89C52单片机适合于许多较为复杂控制应用场合。如图2-1和2-2所示:端口引脚复用功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(定时器0外部输入)P3.5T1(定时器1外部输入)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)图3-1和3-23.2I/O并行口直接驱动LED显示由于要显示每个按键的键值,就需要用到数码管LED显示模块。本设计一共用了一个数码管显示器。利用AT89S51单片机的P0端口的P2.0-P2.4连接到一个共阴数码管的笔段上,数码管的公共端接地。在数码管上循环显示0-9数字,如图3-3所示:图3-33.3发音电路发音电路有三极管,电阻和扬声器组成,三极管的基极接在单片机的P1.0端口,通过定时器溢出的时间不同,P1.0端口输出不同频率的高低电平,P1.0输出的脉冲频率不同,三极管导通的频率也不相同,从而扬声器根据不同频率的脉冲发出的声音也不相同,发音电路如下图2-4所示:图3-4四.软件设计4.1.软件设计主程序设计的第一步为初始化,初始化I/O口,设置定时器定时时间,写定时器工作方式寄存器,设置允许T0中断。刚开始需要将存储单元置1,全部置1之后更新显示缓冲区。接着进行显示初始化,开定时器T0,这样就可以开始显示了。设置完以后程序就不断检测按键情况。检测使用软件去抖,也就是第一次检测到有键按下后,如果有键按下则执行相应指令。本设计还设计了防误操作程序,也就是对于一个键,按一下和一直按着的效果是一样的,这样可以防止用户还没放开此键时,程序已进行第二次或多次同样的操作。图4-1程序中根音选取的是C调三个8度内的音符,共21个音。每个音符对应频率由定时器T0产生(音符频率及对应计数初值见附表)。为了程序调用方便,每个音符都对应一个编码,占用一个字节。在程序中以查表的方式加载计数初值。当值为00H时表示空拍,与节拍码配合完成节拍发音。节拍码也占一个字节,其总时间长度等于基本时间乘以节拍码的值。节拍码值为01H时,表示当前乐曲结束,为00H时,表示全部乐曲结束。为了编码简单,一般节拍码高半字节表示整拍,低半字节表示分数,只要基本延时设定恰当即可,为了及时响应键盘操作,键扫描指令安排在基本延时时间子程序中。按键每按下一次,乐曲数目计数器R5加"1"或减"1",然后根据R5的内容转向不同的乐曲。图4-1系统初始化后,进入播放功能。开始从第一首曲目开始循环播放。播放过程中如果出现跳选曲目.则进入相应的曲目程序.程序设计流程如图4-1所示。程序初始化程序初始化开始开始键盘扫描是否有键按下?键值编码送到P3.4扬声器发音RETNY五.系统调试与仿真5.1软件仿真阶段单片的程序用KEIL编写的。在keil内建立工程后建立汇编文件,编写MCS-51程序。编译成功后,分模块调试,分别采用“白盒”和“黑盒”测试法验证程序的正确性将调试成功的各模块,合并到总程序中,进行总体性能测试。联调PROTEUS进行硬件仿真,单步,断点调试,观察运行结果,并修改源程序5.2系统的仿真调试阶段基于单片机的音乐播放器的是利用PROTEUS软件来实现电脑仿真的,仿真步骤如下:打开PROTEUS软件,选择器件,连接电路图;添加已经编译的HEX文件到单片机内;单步运行,观察结果,比较预定结果,修改源程序;总体调试运行;分组测试,看是否达到任务要求。5.3硬件安装调试单片机系统进行软件盒硬件调试成功后最后一步是进行硬件的连接和物制作,我们的硬件是在试验台上进行的,虽然与设计的电路不太相同,不过可以适当修改源程序,以适应实验台的要求根据实验台情况和设计要求连接电路图;在连接的电路上,进行模块测试,就是用简单的程序进行调试以确定电路连接正确;将修改后的程序下载到单片机里,可以用伟福仿真系统,进行单步和断点调试,将运行结果和实验现象与预定值进行比较,再适当修改程序以达到要求。
六.总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。回顾起此次单片机课程设计,我仍感慨颇多,的确,从选题到定稿,从理论到实践,在接近两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会前所遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以学过的知识理解得不够深刻,掌握得不够牢固,比如说不懂一些元器件的使用方法,对单片机汇编语言掌握得不好……通过这次课程设计之后,一定把以前所学过的知识重新温故。这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在周向红老师的辛勤指导下,终于游逆而解。同时,在周老师那里我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!参考文献《单片机原理与应用》王迎旭等编机械工业出版社《51系列单片机设计实例》楼然苗等编北京航空航天大学出版社《计算机硬件技术基础实验教程》黄勤等编重庆大学出版社4、《微型计算机接口技术及应用》刘乐善主编华中科技大学出版社5、《单片微型计算机原理及接口技术》陈光东等编华中科技大学出版社6、《单片机典型模块设计实例导航》求是科技编著人民邮电出版社出版7、《单片机程序设计实例》先锋工作室编著清华大学出版社出附录A:音乐播放器电路设计图附录B:程序清单OUTBITP3.7NEQU10PLAY_KBITP3.2XSDATBITP1.4GWBITP1.0SWBITP1.1BWBITP1.2QWBITP1.3SJGWEQU2AHSJSWEQU2BHSJBWEQU2CHSJQWEQU2DHORG0000HLJMPMAINORG0003HLJMPPGINT0ORG000BHLJMPPGT0ORG0013HLJMPPGINT1ORG001BHLJMPPGT1ORG0023HLJMPWRONGNOPNOPLJMPWRONGORG0030HMAIN:MOVSP,#60HMOVTMOD,#01HSET_TAB:MOVA,R2MOVCA,@A+DPTRMOV@R0,AINCR0INCR2MOVA,R2MOVCA,@A+DPTRMOV@R0,AINCR0INCR2INCR3CJNER3,#N+1,SET_TABMOVR0,#40HMOV31H,#01AJMPK1START:MOV30H,#2MOVDPL,@R0INCR0MOVDPH,@R0ANLA,#0FHC2_4:CJNEA,#2,C3_4MOVA,23HSWAPAANLA,#0FHCJNEA,#4,C2P1_8C2P1_4:MOV24H,#250SJMPNOTEC2P1_8:MOV24H,#125SJMPNOTEC3_4:CJNEA,#3,C4_4MOVA,23HSWAPAANLA,#0FHCJNEA,#4,C3P1_8C3P1_4:MOV24H,#187SJMPNOTEC3P1_8:MOV24H,#94SJMPNOTEC4_4:MOVA,23HSWAPAANLA,#0FHCJNEA,#4,C4P1_8C4P1_4:MOV24H,#125SJMPNOTEC4P1_8:MOV24H,#62NOTE:MOVA,#1MOVCA,@A+DPTRMOV25H,ANEXT:MOVA,30HMOVDPL,@R0INCR0MOVDPH,@R0DECR0MOVCA,@A+DPTRMOVR2,AJZSTOPANLA,#0FHMOVR5,AMOVA,R2SWAPAANLA,#0FHJNZSINGCLRTR0AJMPSING1SING:DECAADDA,25HRLAMOV22H,AMOVDPTR,#TABLE2MOVA,22HINCAMOVCA,@A+DPTRMOVTH0,AMOV21H,ASETBTR0SING1:LCALLDELAY1INC30HJNBPLAY_K,PUSELJMPNEXTPUSE:LCALLDISPLCALLDISPLAYJNBPLAY_K,$-3STOP:CLRTR0K1:LCALLDISPJBNEXT_K,K2LCALLDISPLCALLDISPLAYJNBNEXT_K,$-3MOVA,31HCJNEA,#N,K1_2K1_1:MOVR0,#40HMOV31H,#01SJMPK2K1_2:INC31HINCR0K2:LCALLDISPJBLAST_K,K3LCALLDISPLCALLDISPLAYJNBNEXT_K,$-3MOVA,31HCJNEA,#1,K2_2K2_1:MOVR0,#40H+2*(N-1)MOV31H,#NSJMPK3K2_2:DEC31HDECR0DECR0K3:LCALLDISPJBPLAY_K,K1LCALLDISPLAYJNBPLAY_K,$-3AJMPSTARTNOPNOPLJMPWRONGPGT0:MOVTL0,20HMOVTH0,21HCPLP3.7RETINOPNOPLJMPWRONGPGINT0:RETIPGINT1:RETIDELAY1:MOVR7,#02DELAY2:MOVR4,24HDELAY3:MOVR3,#248DJNZR3,$DJNZR4,DELAY3DJNZR7,DELAY2DJNZR5,DELAY1RETPGT1:RETIDELAY4:MOVR4,#20DELAY5:MOVR3,#248DJNZR3,$DJNZR4,DELAY5RETTABLE1:DWSONG1,SONG2,SONG3TABLE2:DW63628,63835,64021,64103,64260,64400,64524DW64538,64684,64777,64820,64898,64968,65030DW65058,65110,65157,65178,65217,65252,65282SONG1:DB44H,02HDB42H,82H,82H,82H,84H,02H,72HDB62H,72H,62H,52H,48HDB12H,62H,62H,52H,44H,02H,82HDB72H,62H,52H,32H,48HDB00HSONG2:DB43H,04HDB82H,01H,81H,94H,84HDB0B4H,0A4H,04HDB82H,01H,81H,0F4H,0D4HDB0B4H,0A4H,04HDB0E2H,01H,0E1H,0D4H,0B4HDB0C4H,0B4H,04HDB82H,01H,81H,94H,84HDB0B4H,0A4H,04HDB82H,01H,81H,94H,84HDB0C4H,0B4H,04H,00HSONG3:DB44H,04HDB44H,54H,64H,44HDB44H,54H,64H,44HDB64H,74H,88HDB64H,74H,88HDB82H,92H,82H,72H,64H,44HDB82H,92H,82H,72H,64H,44HDB44H,84H,48HDB44H,14H,48HDB00HDISPLAY:PUSHACCPUSHPSWMOVDPTR,#XSTABMOVA,SJGWMOVCA,@A+DPTRACALLDSOUTCLRGWACALLDS1MSSETBGWMOVA,SJSWMOVCA,@A+DPTRACALLDSOUTCLRSWACALLDS1MSSETBSWMOVA,SJBWMOVCA,@A+DPTRACALLDSOUTCLRBWACALLDS1MSSETBBWMOVA,SJQWMOVCA,@A+DPTRACALLDSOUTCLRQWACALLDS1MSSETBQWPOPPSWPOPACCRETDSOUT:MOVR0,#8DSLOOP:RLCAMOVXSDA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年中国3C维修行业商业模式创新战略制定与实施研究报告
- 新形势下铜板带箔材行业快速做大市场规模战略制定与实施研究报告
- 建设项目工程验收管理办法
- 云南省第二十一届职工职业技能大赛滇菜烹饪竞赛理论考试题库资料(含答案)
- 2024年两只鸟蛋教案
- 湖南怀化市2024高三下学期三模英语试题
- 及配套管网工程(PPP)投资建设项目可行性研究报告-广州齐鲁咨询
- 四年级数学(四则混合运算带括号)计算题专项练习与答案汇编
- 电销服务知识培训课件
- 员工关怀管理员工关怀培训
- 店铺交割合同范例
- 新生儿心脏病护理查房
- 规划设计行业数字化转型趋势
- 物业年终总结汇报工作
- 金色简约蛇年年终总结汇报模板
- 医院住院病历质量检查评分表(评分标准)
- 12.1 拥有积极的人生态度(教学设计)2024七年级道德与法治上册
- 视听说课程(《走遍美国》)教学方案
- 2024年内蒙古中考语文试卷五套合卷附答案
- 高中体育与健康-短跑教学设计学情分析教材分析课后反思
- 厂房厂区保洁方案
评论
0/150
提交评论