单片机系统设计与制作技术报告.doc_第1页
单片机系统设计与制作技术报告.doc_第2页
单片机系统设计与制作技术报告.doc_第3页
单片机系统设计与制作技术报告.doc_第4页
单片机系统设计与制作技术报告.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

中国矿业大学徐海学院2011级单片机系统设计与制作技术报告中国矿业大学徐海学院单片机系统设计与制作技术报告姓 名: 学 号: 班 级: 电气11 题 目: 音乐播放器设计与制作 任课教师: 2013 年 12月单片机设计与制作任务书班级 学号 学生姓名 任务下达日期:2013年 12 月 10 日设计日期:2013 年 12 月 16 日 至 2013 年 12 月 26 日设计题目:音乐播放器设计与制作设计主要内容和完成功能:使用51单片机设计一款音乐播放器,并能通过编码程序,下载程序完成播放音乐的功能。 教师签字:摘 要 AT89S52单片机设计的一个音乐播放器通过单片机音乐播放器系统设计和研究,对于切实掌握单片机相关知识具有重要的理论和实际意义。这次课程设计的音乐播放器是软件和硬件的结合,不同音符表现形式就是不同频率地声音。通AT89S52过单片机产生不同的频率的脉冲信号,通过放大电路,由蜂鸣器放出,就产生了美妙和谐优美动听的乐曲。根据节拍给出该音阶持续的时间,最终实现播放简单歌曲的功能。为人们生活的改善提供了可靠,方面,廉价的方法。 单片机AT89S52作为硬件核心控制部件,结合三极管作为放大器,数码管构成典型的显示电路,按键作为输入部分以及其他外围设备组成的音乐播放系统。根据音乐演奏控制器所要实现的显示与选曲及音乐产生功能原理,系统包括演奏扬声器、选曲、播放和显示几部分。其中,AGAIN按键具有开启播放曲子和重复播放当前曲子的功能,FORM按键具有播放前一曲的工能,NEXT按键具有播放后一曲的功能,RES键具有播放前一曲的功能。所设计音乐播放器可以播放多首音乐,曲目选择可以由键盘控制,并通过显示器使其显示歌曲序号。设计的音乐演奏控制器是通过控制单片机内部的定时器来产生不同频率的方波,驱动喇叭发出不同音节的声音,再利用延迟来控制发音时间的长短,即控制音调中的节拍。同时设置按钮使所设计的程序能在三到四首歌曲之间进行选曲,设计显示器使其显示歌曲序号。与传统的机械式音乐盒相比更小巧,音质更优美且能演奏和弦音乐。电子式音乐盒动力来源是电池,制作工艺简单,可进行批量生产,所以价格便宜。基于单片机制作的电子式音乐盒,控制功能强大,可根据需要选歌,使用方便。根据存储容量的大小,可以尽可能多的存储歌曲。另外,可以设计彩灯外观效果,使音乐盒的功能更加丰富。目 录1、 系统概述 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲,一块芯片就成了一台计算机。MCS-51单片机是美国INTEL公司于1980年推出的产品,与MCS-48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品,各高校及专业学校的培训教材仍与MSC-51单片机作为代表进行理论基础学习。MCS-51系列单片机主要包括8031、8051和8751等通用产品。DP-51S单片机仿真实验仪是由广州致远电子有限公司设计的DP系列单片机仿真实验仪之一,是一种功能强大的单片机应用技术学习、调试 。 本设计是以AT89S52芯片的电路为基础,外部加上放音设备,以此来实现音乐演奏控制器的硬件电路,通过软件程序来控制单片机内部的定时器使其演奏出优美动听的音乐。用户可以按照自己的喜好选择音乐并将其转化成机器码存入单片机的存储器中。对于不同型号的单片机只需要相应的改变一下地址即可。歌曲可以自己随意的写进音乐盒中。2、硬件设计 (1)AT89S52单片机简介 AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。(2)引脚VCC : 电源 GND: 地P0 口:P0 口是一个 8 位漏极开路的双向 I/O 口。作为输出口,每位能驱动 8 个 TTL 逻辑电平。对 P0 端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0 口也被作为低 8 位地址/数据复用。在这种模式下,P0 具有内部上拉电阻。在 flash 编程时,P0 口也用来接收指令字节;在程序校验时,输出指令字节。程序校时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8位双向 I/O 口,P1输出缓冲器能驱动 4 个TTL 逻辑电平。对 P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0 和 P1.2 分别作定时器/计数器 2 的外部计数输入(P1.0/T2)和时器/计数器 2的触发输入(P1.1/T2EX),具体如下表所示。表1.1 AT89S52 P1口第二功能表脚号第二功能P1.0T2(定时器/计数器 T2 的外部计数输入),时钟输出P1.1T2EX(定时器/计数器 T2 的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1.7SCK(在系统编程用)P2 口:P2 口是一个具有内部上拉电阻的 8 位双向 I/O 口,P2 输出缓冲器能驱动 4 个TTL 逻辑电平。对 P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)在访问外部程序存储器或用 16 位地址读取外部数据存储器(例如执行 MOVX DPTR)时,P2 口送出高八位地址。P3 口:P3 口是一个具有内部上拉电阻的 8 位双向 I/O 口,p2 输出缓冲器能驱动 4 个TTL 逻辑电平。对 P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3 口亦作为 AT89S52 特殊功能(第二功能)使用,如下表所示。表1.2 AT89S52 P3口第二功能表脚号第二功能P3.0RXD(串行输入)P3.1TXD(串行输出)P3.2INT0(外部中断 0)P3.3INT0(外部中断 0)P3.4T0(定时器 0 外部输入)P3.5T1(定时器 1 外部输入)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器写选通)RST: 复位输入。晶振工作时,RST 脚持续 2 个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出 96 个晶振周期的高电平。特殊寄存器 AUXR(地址 8EH)上的 DISRTO 位可以使此功能无效。DISRTO 默认状态下,复位高电平有效。ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低 8 位地址的输出脉冲。在 flash 编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE 脉冲将会跳过。PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当 AT89S52 从外部程序存储器执行外部代码时,PSEN 在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN 将不被激活。EA/VPP:访问外部程序存储器控制信号。为使能从 0000H 到 FFFFH 的外部程序存储器读取指令,EA 必须接 GND。为了执行内部程序指令,EA 应该接 VCC。在 flash 编程期间,EA 也接收 12 伏 VPP 电压。XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。3、软件设计 (1)要生产音频脉冲,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间.利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲. (2)利用8051的内部定时器使用其工作在计数器模式MODE1下,改变计数值THO及TLO以产生不同频率的方法. (3)例如频率为523Hz,其周期T1/5231912us,因此只要令计数器计时956us/1us956,在每次计数956次时将I/O反相,就可得到中音DO(523Hz).计数脉冲值与频率的关系公式如下:NFi2Fr N:计算值;Fi:内部计时一次为1us,故其频率为1MHz; (4)其计数值的求法如下:T65536-N65536-Fi2Fr例如:设K65536,F1000000Fi1MHz,求低音DO(261Hz),中音DO(523Hz),高音的DO(1046Hz)的计算值.T65536-N65536-Fi2Fr65536-10000002Fr65536-500000/Fr低音DO的T65536-500000/26263627中音DO的T65536-500000/52364580高音DO的T0=65536-500000/104765059 (5)C调各音符频率与计数值T的对照表如表1所示.(6)每个音符使用1个字节,字节的高4位代表音符的高低,低4位代表音符的节拍,表2为节拍与节拍码的对照.如果1拍为0.4秒,1/4拍是0.1秒,只要设定延迟时间就可求得节拍的时间.假设1/4拍为1DELAY,则1拍应为4DELAY,以此类推.所以只要求得1/4拍的DELAY时间,其余的节拍就是它的倍数,如表3为1/4和1/8节拍的时间设定。4、系统调试 由于焊接工作已经检查,所以无需查看。通过KeiluVsion4编译与调试音乐程序,没发现错误,检查管序配对都能没问题,接上电源后音乐没能播放,后来,在同学的提醒之下,把P2.5接上短路帽。结果音乐就播出来了,顺利的完成了实验。5、结束语通过本次实训,我学会了自主动手,对单片机的一系列知识,进行了一次系统的复习,熟悉了一些简单的程序,如:延时程序,并学习了一些新的东西,如随机数的产生,按键的扫描,和去抖动等。在本次试验中,学会了从程序的主体功能考虑要达到一个什么样的要求,从而,将程序分成各个子程序,逐个写出,分布细化,从而减少程序出错机率,并且易于检查各部分程序,根据任务功能,所要达到的要求,来进行检查,看到那个模块所对应的程序不对,就检查那个模块,提高了检查的效果效率,同时也,可以使程序条理清晰,不至于在发现程序出错时,进行改正错误的过程中,越改越错,真正的错误改不了,把对的反而改错了。为了提高程序可读性,可以加注释对程序的功能加以解释说明,并且在各个子程序之间以空行来分隔。6、 参考文献1单片机原理及其接口技术(第3版),胡汉才,清华大学出版社2单片机原理及接口技术,李朝青,北京航空航天大学出版社,1998年3赵秀珍,单永磊,单片微型计算机原理及其应用M,北京,中国水利水电出版社,4单片机原理及接口技术,李全利,2009年第二版,高等教育出版社5单片机原理与应用及C51程序设计,谢维城、杨家国,2006年5月第三版,清华大学出版社7、附录(1)系统硬件电路图(2)源程序(加注释)JMP START ORG 000BH JMP TIM0 ORG 0030H START:MOV TMOD,#01H MOV IE,#82HSTART0:MOV 30H,#00H NEXT: MOV A,30H MOV DPTR,#TABLE MOVC A,A+DPTR MOV R2,A JZ END0 ANL A,#0FH MOV R5,A MOV A,R2 SWAP A ANL A,#0FH JNZ SING CLR TR0 JMP D1 SING: DEC AMOV 22H,A RL A MOV DPTR,#TABLE1 MOVC A,A+DPTR MOV TH0,A MOV 21H,A MOV A,22H RL A INC A MOVC A,A+DPTR MOV TL0,A MOV 20H,A SETB TR0 D1: CALL DELAY INC 30H JMP NEXT END0: CLR TR0 JMP START0 TIM0: PUSH ACC PUSH PSW MOV TH0,21H MOV TL0,20H

温馨提示

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

评论

0/150

提交评论