




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于51单片机实现音乐播放器的设计目录TOC\o"1-2"\h\u26726第1章绪论 1272781.1课题的来源及意义 1162661.2国内外发展状况 1301461.3课题研究的主要内容 2202291.4课题研究手段 24915第2章系统的方案设计 3280232.1设计目标 36902.2设计构图 334822.3器件选择 320035第3章51单片机的结构和原理 5221813.151单片机的内部结构 5310903.280C51单片机的微处理器 6155813.380c51的中断系统及定时/计数器 74114第4章硬件电路设计 969794.1仿真电路图 950424.2时钟电路 989754.3复位电路 10304434.4按键电路 10291064.5音频放大电路 11270644.6电源电路和指示灯电路 1110684第5章软件程序设计及使用问题 12161805.1单片机音乐播放器发声概述 12321425.2利用定时/计数器0产生音符频率 12316115.3程序流程图 1425565.4Keil软件及Protues软件使用 14225175.5开发流程及使用 1420069第6章总结和非技术因素的考虑 152244第7章致谢 161424参考文献 17第1章绪论1.1课题的来源及意义随着社会文明的进步和科学技术的发展,先进的电子技术在现代各个学科和科学领域占据着不可或缺的核心地位。很多人喜欢听音乐,对音乐的要求也越来越高。基于单片机的音乐播放器正是符合这一要求的。目前,放眼整个世界,单片机在各个领域有着重要使用,这种例子应用在在音乐播放器有很多。同时也体现了单片机的广泛使用。这样的播放器有很多优点:成本不高、便于携带、功能齐全、使用方便。所以很多喜欢听音乐的人和厂家都喜欢单片机的播放器。本次课题正是以单片机为核心,结合一些外围设备,用汇编语言编写程序,控制音乐的播放。通过程序来转换成声音再发出音乐。这样音乐就可以播放出来。在很多玩具厂商中,智能玩具有许多都在使用单片机这种播放器,由此可见,音乐播放器的市场前景很广阔。1.2国内外发展状况音乐播放器在国外有很多方面的使用,有通过音乐运动疗法来康复植物人的研究[1],国外的音乐播放器现在主要是提升人们的生活质量,陶冶人的情操。同时在音乐方面也有很多研究,技术的进步会推动着音乐播放器的发展。未来的高科技前沿音乐播放器肯定会有所一席之地的。调查表明,无论线上的播放器和线下的音乐播放器,现在使用音乐播放器的人从2013年1月的4.32亿急剧增加到2014年的5.17亿。在我们现实生活中,使用音乐播放器的用户比去年同时期增长了36.9%,从2013年1月的4.32亿增加到2012年的5.17亿。在国内就有杨雪梅和张慧在信息通信期刊内写到了关于音乐播放器的设计[3],是以AT89C51单片机作为核心,设计了音乐播放器,设计的原理是单片机内部的中断系统,通过汇编语言程序设计,控制外部相关硬件电路,产生一定的方波脉冲,并实现了对电子音乐的播放,音色优美,使用者还可以通过数码管显示器,可以看到所播放的音乐。邱燕设计了一款音乐播放器[4],使用80551单片机作为核心,输出口为P1口,P3口配上一定的按键和蜂鸣器制作而成,这个成品做起来简单,很容易调试,节拍提示清晰的特点。还有就是关于智能音乐播放器的设计,有陈卓设计出了以单片机80C51为核心的智能音乐播放器[5],上面举的例子都是非常成功的。所以播放器在国内具有很大的发展空间。1.3课题研究的主要内容本设计利用单片机设计实现一款音乐播放器。通过电子元件和电路图以及C语言程序实现能够对音乐的播放。主要是以AT89C51芯片为核心,从软件分析来说,通过乐谱找出对应的赫兹,然后利用内部定时器中断来产生相应频率的方波,然后控制音调的变化,通过调用延迟函数来进行节拍的控制;在硬件上,首先我们要知道一台单片机在系统中工作需要三个基本的电路,在此基础上需要让单片机发声还需要按键电路,发声电路。按键电路主要就是三个按键,一个按键控制播放暂停,另外两个按键是下一首上一首类似于MP3,它的发声电路是接了一个LM386的音频功率放大器,进行扩音。通过Protues软件进行硬件电路的建立,最后再进行电路板的焊接。1.4课题研究手段本设计的开发环境是keil4软件来对单片机编程,使用proteus8.6软件来对电路进行绘制,整个系统软件语言设计采用C语言设计。通过将keil4软件编写的C语言程序下载到proteurs8.6设计的电路单片机芯片中,检测电路是否可以实现所需要的功能。
第2章系统的方案设计2.1设计目标本次设计是基于51单片机实现音乐播放器的设计,它的主要设计目标有以下几个方面:1、单片机存储6首歌曲;2、通过按键可以实现对单片机的播放、暂停、上一首、下一首状态的控制;3、可以通过屏幕来显示正在播放的歌曲。2.2设计构图下图是本次设计的主要思路,以单片机为核心,除了基本的电路以外,需要加一个按键电路,它的作用是控制播放器的状态,一个是控制暂停和播放的状态,另外两个是控制上一首下一首的运行状态。根据功能键,可以完成视频播放,暂停,上一首,下一首等基本内容;根据显示屏指示在线歌曲的信息(歌曲编号和名称)。它的发声电路采用LM386音频功率放大器,其特点是电压适应范围宽,频率响应范围广。具有良好的扩音功能。下图是本次的设计结构总图。图2.1设计结构总图2.3器件选择2.3.1单片机选择单片机有很多类别,最出名的公司是STC公司和ATMEL公司。本次设计较为简单,我采用的是AT89C51,这种芯片价格便宜,是由ATMEL公司生产的一种基本型高效微控制器,程序存储空间为4K,功率损耗低,拥有两个定时/计数器,全静态工作频率为0-24MHz,五个中断源。内部不带EEPROM,程序存储空间小。本次设计空间小,选用AT89C51单片机做为控制核心就能满足需求。2.3.2按键和三极管按键有编码按键和非编码按键,由于本设计需要电路比较简单,所以选择普通的非编码按键即可。三极管采用的是硅管,本次电路的功率不大,所以采用的是小功率管,安装方式是插件安装三极管,方便简单,易于实现。2.3.4电阻的选择电阻分为可调电阻和固定电阻,这次设计的功能不是很复杂,结构容易实现,用不了很多电路,平常使用的色环电阻就额可以满足需求,而且电阻稳定性良好,很容易就可以买到,所以使用这类电阻就行。2.3.5显示屏的选择显示器一:这类显示器的显示模块是选用选用点阵式数码。内部是很多二极管,二极管再经过组合才形成点阵式数码管,这样显示面积大而且显示内容丰富,但是操作起来程序就比较复杂,价格方面也很高。这类通常使用在商场的大型显示屏,假如做为本次设计的模块,这样就会比较浪费。显示器二:这类显示器是内部的LED灯。它的显示功能可能没有第一种好,但是用本次设计已经足够,并且功率损耗低成本便宜,硬件电路简单,超薄轻巧,和单片机连接比较方便,它的数字显示更加直观清晰可见。在编程方面,指令代码简单,提供多种控制命令,比如流水灯,软件代码比较简单。结合以上考虑,考虑到成本、控制简单,选用LED液晶显示屏作为显示模块。
第3章51单片机的结构和原理3.151单片机的内部结构3.1.180C51的组成及主要性能一、CPU模块主要有时钟电路,8位CPU和总线控制三部分组成。1、时钟电路分为内部时钟电路和外部时钟电路。本次设计采用内部时钟电路的方法,它的优点是除了工作以外,它还适合于双芯片单芯片微型计算机的设计。2、8位CPU:这个CPU可以处理8位的二进制代码,内部有布尔处理器,完成运算和控制的功能。3、总线控制:它的功能主要用来传输控制的信号以及逻辑信号。存储器模块表3.1存储器模块数据存储器也称RAM,随机存取存储器,用来给用户提供可读可写的数据,断电后数据会消失。内部程序存储器也称ROM,只读的存储器,用来直接存放一些原始的数据或者是一些表格,断电后这些数据就不会丢弃或者消失。三、I/O接口模块1.2个16位定时/计数器;2.4个并行I/O端口,均为8位;3.1个全双工的异步串行口;4.中断系统包括5个中断源和2个优先级。3.1.280C51单片机的外部引脚的说明1、控制引脚(4个)RST:复位信号输入引脚;ALE:地址锁存允许信号输出引脚;EA:连接外部存储器的引脚,这个引脚是低电平有效;PSEN:作为连接外部存储器的输出引脚。3、并行I/O口(它由32个引脚,8个为一组,一共4组)P0口、P1口:作为I/O端口的引脚使用;P2口:作为连接高地址总线引脚使用;P3口:主要是第二功能引脚。表3.1P3口的第二功能引脚引脚第二功能信号名称P3.0RXD串行数据接收P3.1TXD串行数据发送P3.2INT0外部中断0申请P3.3INT1外部中断1申请P3.4T0定时/计数器0的外部输入P3.5T1定时/计数器1的外部输入P3.6WR外部RAM写选通P3.7RD外部RAM读选通3.280C51单片机的微处理器3.2.1控制器80C51控制器主要由三个大部分部件组成,程序中的计数器PC、指令寄存器IR和译码器的控制器和逻辑器都是它的组成部分。1、程序寄存器PC,当新的传输地址指令、子服务程序指令调用服务指令和网络中断服务响应开始运行时,会自动给每个PC计算机一个新的传输地址。2、指令寄存器用来保存当前正在开始执行的每个指令。要正确执行一条应用指令,首先必须要把它从应用程序中的内存器中转移过来到指令寄存器。所述编码指令通常包含操作码和文件地址的编码,所述操作码和文件地址的编码被发送到所述编码指令中的译码器,以便是形成所述指令相应编码指令的一个微操作编码信号。地址位代码用于送往执行操作数据的地址位并形成执行操作的参数地址。3、译码和数字控制逻辑系统是一个大型微处理器的两个基本核心重要部分。它的主要工作原理是通过自动读取这些控制指令、执行其他控制指令、访问所应该控制微操作器参数、自动控制该微操作器的结果,并向其他的微控制部件操作人员实时发送各种关于控制微操作器参数或驱动控制器的消息信号,协调各种微控制部件的控制工作。3.2.2运算器算术逻辑单元通常包括ALU、累加器的ACC、程序状态字寄存器的寄存器B、暂寄存器和PSW等,它的主要作用是进行数学算数的运算和传送一些数据的操作。下图是它们的组成。表3.3运算器组成算术逻辑运算单元ALU算术逻辑单元它由ALU、累加器的ACC、程序状态字寄存器的寄存器B、暂寄存器和PSW等。功能是能完成8位数据的加、减、乘、除运算操作,同时还能完成与、或、异或等逻辑运算的操作。累加器ACC主要功能是向每个ALU用户提供操作数和数据存储设备的运算结果。在运算过程中,一个新的操作数通过寄存器发送到一个算术逻辑运算函数单元,另一个函数来自一个基于累加器的操作函数,运算在一个ALU中执行,结果再次发送回累加器。寄存器函数B主要用于存储乘法、除法、乘法和加法运算中的数字操作数。有时它可以用作乘法和除法运算的结果。当它不需要乘法和除法运算时,也可以用它作为普通数的寄存器号。中断是CPU和I/O设备之间数据传输的一种控制方式。暂寄存器用来暂时记储存放数据时从总线或其他数据寄存器所发送来的所有操作的参数。它通常是每个ALU的一个数据处理输入源,向每个ALU数据提供一个操作数,它是不能进行位寻址操作的。程序状态寄存器PSW是一个用来分别保存执行ALU运算执行结果的程序特征和数据处理器的程序状态。3.380c51的中断控制1、中断的概念:计算机需要及时处理外部事件,需要中断系统才能实现。特定的进程被描述为当CPU正在处理a时发生的事件b,这需要CPU来处理。CPU会收到中断源一个中断请求,然后CPU会发出一条指令,会中断停止当前工作的事件A,然后CPU会处理另一个事件B,当CPU完成对事件B的工作,CPU就会回到原来A被中断的地方。2、80C51中断系统的结构和中断源80C51单片机有5个中断源。中断优先级遵循的准则:优先级最高的最先响应。中断是控制CPU和I/O设备之间数据传输的一种方式。有一个完整的中断系统在单片机的内部,里面有五个中断源和两个优先级。为了输出方波脉冲,还需要中断定时器/计数器0以反转位的输出端口。CPU中断系统的所有中断,以及掩护一个中断源,都被中断允许寄存器IE控制。可以通过软件设置来设置IE的状态,如果一个位设置为1,则允许相应的中断。如果位被设置为0,则相应的中断源被屏蔽。IE寄存器作为一个8位的可以寻址寄存器,我们通常可以把它看作是具有开启、关闭中断功能的一个开关。本设计所要涉及到的位分别为定时/计数器T0中断的允许位ET0与CPU中断的允许位EA。而且中断的优先级寄存器(IP寄存器)又是一个8位的不同寻址寄存器,它就是用来判断每一个中断的优先级。IP寄存器仅仅决定了中断的优先级。各个中断已有先后之分,其顺序为:最高级INT0依次为TF0、INT1、TF1、R1/T1、TF2/EXF2。
第4章硬件电路设计4.1仿真电路图图4.1仿真电路图本次设计的硬件仿真是使用Protues软件,除了单片机的三个基本电路外,还有按键电路、音频放大电路、指示灯电路。音乐播放器是以AT89C51芯片为核心,最上面的是声音放大电路,采用LM386功率放大器,可以通过放大器驱动喇叭使其发出声音。最左边是按键电路,采用三个按键进行并联,按键电路下方是指示灯电路,当按下开关时候,指示灯就会被点亮。RESET是复位电路,S0是复位按键,按键按下,单片机就会执行复位操作。由图可知,X1和X2引脚接的是12MHz的晶振,单片机可以获得12MHz的晶振频率,右侧是它的开关电路,当开关按下,单片机就会工作,开关指示灯也会点亮。4.2时钟电路图4.2时钟电路图时钟电路由电容器和晶体振荡器组成。电容约为30PF,振荡频率为12MHz。为单片机提供12MHz晶体振荡器。该电路的两个电容的频率相同,形成谐振,这样单片机可以获得稳定的的频率。主要功能是为单片机提供稳定的系统时钟。晶体振荡器提供的时钟频率越高,速度越快。4.3复位电路图4.3复位电路图复位电路采用一个10uf电容和一个10k下拉电阻。上图是复位的原理电路图,有两种复位方式:上电复位复位和手动按钮复位。通电后,电路对电容器充电。这个过程使它处于高级状态,可以在高电平状态下复位。按下按钮后,电路的电容器处于放电状态,即低电平,不能复位。4.4按键电路图4.4按键电路图对于按键电路的设计,根据本次毕设要求的功能,确定需要几个按键、按键的数量和按键之间的连线。本次毕设需要3个按键,键盘连接方式为独立键盘式。一个I/O口所对应的是一个按键。采用三个按键并联接地,一个按键控制播放暂停的状态,一个是上一首,另一个是下一首,当按键按下,对应的功能就开始工作。4.5音频放大电路图4.5音频放大电路单片机的P1口接的音频放大电路,使用了一个音频功率放大器,它的型号是LM386,具有功率损耗低、不易失真等优点,主要适用于低电压电路,经过运放器驱动喇叭,然后单片机的I/O口产生一定频率的方波脉冲,再通过功放电路驱动喇叭使其发出声音,这样乐曲就演奏出来了,从而可以更好的发出悦耳的声音。4.6电源电路和指示灯电路图4.6电源电路图单片机AT89C51的电源电路采用的是+5v的电源,可直接由稳压电源提供,接地直接接GND。图4.7指示灯电路采用一个发光二极管和一个2.2k的电阻并接地,当开关按下,指示灯就会被点亮。第5章软件程序设计及调试5.1单片机音乐播放器发声概述声音通过振动产生才可以产生声音,单片机产生声音的原理是通过一定振动频率的方波置0置1来自动产生数字信号的方波,方波经过电路的自动放大,作用于硬件电路上的蜂鸣器,这样就可以自动产生相应的声音。但是单片机演奏音乐时并不会像其他音频乐器那样能同时演奏多种不同音色,因为由于单片机本身不会产生任何谐波的分量,所以人听起来比较单调,相对来说,单片机需要演奏多种音乐就比较简单。我们都知道音乐主要指的是一种音调和一个节拍的变化,音调主要指的就是一个音符或者声音的振动频率或者高低音的变化,节拍主要就是一个的音符需要连续唱多长时间。举例来说,首先让单片机接12MHz的晶振,假如第一个音符是DO的话,它对应的Hz是262Hz,那么需要在接口处产生一个262Hz的方波脉冲来实现这个音调的产生。那么它对应的时间就是1÷262=2272us,如果一首歌有100个音符的话,每个音符依次这样进行,音乐就能播放出来了。5.2利用定时/计数器0产生音符频率音乐播放器采用定时/计数器T0,使其工作方式1。假设晶体振荡器的频率为12Mhz和1US。定时器/计数器0的计数为n=t/tcy(t是每个刻度的半周期时间)。由于模式1是16位计数,t0的初始计数值是x=2^16-n。然后把X除以256,把它们的商变成Th0,把余数变成TL0,也就是说,把X的值转换成二进制后,把高8位变成Th0,把第8位变成TL0。这样,只要启动T0,计数满中断,让一位输出端口取一个负数,就可以产生音频信号。由于t=n*tcy,11.0592Mhz晶体振荡器的延迟时间为5ms、10ms、20ms和50ms,初始值可分别计算为ee00h、dc00h、B800文和4c00h。初始值也可以通过以下语句计算:TH0=(65536-N)/256;商为计数初值的高字节。TL0=(65536-N)%256;余数为计数初值的低字节。5.3音符频率通常,我们是以Do、Re、Mi、Fa、So、La、Si、Do来代表对应频率的声音,称为“音调”。一般我们对于音乐来说,把中央C上方的A音定为标准音高,其频率f=440Hz。其余音均通过比较获得。表4-1所示为C调音阶表,包括三个音阶,每个高音阶为八音度。每个音阶之间的频率成倍数关系,例如高音Do的频率(1046HZ)刚好是中音Do的频率(523Hz)的一半。而相对半音来说,频率比为1.06,以Re为例,Re的频率为523Hz,所以Re#的频率为523*1.059,约为554Hz,以此类推。一般来说音乐中,,一个八度音内共有12个半音。因为人耳的听觉效果是非线性的,所以这12个音阶的分度是根据对数关系划分的。当我们知道12个音符的音调,也就知道了其音调的频率,根据音符之间的频率关系,得到各个音符基本音调的频率。进而,让单片机发出相应频率的振荡信号,驱动蜂鸣器产生相应的音符声音。表5.1C调音阶-频率对照表音阶n12345678910DoDo#ReRe#MiFaFa#SoSo#La低音频率262277294311330349370392415440简谱123456中音频率523554587622659698740784831880简谱123456高音频率1046110911751245131813971480156816611760简谱1234565.4程序流程图图5.1程序流程图
5.5Keil软件及Protues软件的使用Keil手机软件是英国公司Keil软件发布的用于MCU设计C语言的系统软件。它不仅可以编辑在线文档,编译程序,还可以进行仿真调整,功能非常强大。在本科期间,有一些涉及Keil应用程序的实验,因此该应用程序可能相对熟练。程序流程的转换通常包括以下多个级别:创建项目,装备项目,编译程序以及最后进行仿真。模拟会将编写的程序流刻录到板上以进行调整。Protues软件是由英国LAB厂商制造的,它不仅可以适用于EDA的软件,而且还可以适用于单片机,可以用来进行单片机还有其外围器件的仿真。本次设计的原理图就是使用Protues进行搭建并进行仿真调试。5.6开发流程及问题分析5.6.1开发流程本次毕设首先用了Protues软件绘制了原理图,使用Keil4对程序进行了编写,又查阅相关资料,对软件好的同学进行了请教,最后生成了可执行的目标程序,之后,将生成的目标程序放入Protues软件中写入单片机电路图中,再使用Protues软件的仿真功能来看执行后的效果,根据运行出的效果再来对电路进行修改。5.6.2问题分析本次硬件电路主要是单片机和一些外围设备,在调试的过程中,遇到了一些困难。通过同学和老师们的帮助,逐渐解决了这些困难,最终完成本次毕业设计。问题一:焊接问题由于自己没有注意各个器件的引脚方向,第一次焊接时候导致焊错电路,然后我又买了一套进行焊接,最终焊出了自己满意的效果。问题二:烧录问题硬件电路焊接完成后,准备烧录程序看看运行效果,发现烧录不了程序,后来请教了一下同学,下载了一个匹配的烧录软件,最后烧录成功。问题三:软件调试在调试的过程中,我使用的是Keil软件开发环境,刚开始不知道怎么创建工程,经过视频的自学,学会了创建工程,编程的时候也遇到了很多困难,期间查阅了一些资料,向老师同学请教。第6章总结和非技术因素的考虑6.1总结通过这次毕业设计,我从中学到了很多东西,总结为以下几方面:提升了查阅文献的能力,刚开始做这个毕设的时候,没有思路,后来通过查阅很多文献,看看别人怎么做又搜集了一些资料,向孟老师进行请教和一些动手能力强同学进行了交流,后来逐渐慢慢有了一些头绪。理解了设计的基本原理,然后对此进行方案设计,又学习了Keil和protues软件。从中懂得这个专业涉及知识非常多,需要自己不断学习。巩固了自己专业知识,单片机是这次的毕设,由于自己忘得差不多和基础不扎实,又重新翻到课本,对单片机知识进行了学习,理解了单片机各个管脚的功能还有中断系统的使用,都有了进一步的了解。提升了自学能力及专研能力,寒假时候买了一块单片机学习板,通过学习板附带的视频资料对单片机进行了一个深入的学习,同时也提升了自己动手的能力。期间遇到了很多问题,查阅资料或者请教老师和同学,通过本次设计,不仅给我带来了宝贵的动手经验,而且克服了其中的困难,这是一次宝贵的经验。6.2课题研究的非技术因素的考虑随着人们对产品设计的要求越来越高,技术和非技术因素也在产品设计中受到高度重视。本节主要介绍基于单片机的音乐播放器设计中的一些非技术因素考虑,主要有以下两个方面:性能方面:本次设计的音乐播放器首先会考虑它的性能方面,为了能让它稳定工作,考虑此设计在停电或不方便用电的情况下,依然能够继续运行,选用5v电池供电方式给系统供电;成本方面:在完成此设计基本功能的前提下,保证系统能够稳定运行,选用性
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蒸汽供气合同范本
- 单位返聘合同范本
- 农村工程改建合同范本
- 农村住房贷款买卖合同范本
- 买卖股份合同范本
- 单位购买服装购买合同范本
- 劳动仲裁聘用合同范本
- 出售废钢 废铁合同范本
- 劳务分包项目合同范本
- 中介甲乙丙方合同范本
- Unit 4 Time to celebrate 教学设计-2024-2025学年外研版英语七年级上册
- 健康档案模板
- 筋膜刀的临床应用
- DB32-T 4790-2024建筑施工特种作业人员安全操作技能考核标准
- 2022年安徽阜阳太和县人民医院本科及以上学历招聘笔试历年典型考题及考点剖析附带答案详解
- 2024-2030年中国反刍动物饲料行业市场发展趋势与前景展望战略分析报告
- 护理团体标准解读-成人氧气吸入疗法护理
- 幼儿园大班《识字卡》课件
- 2024-2030全球与中国宠物医院市场现状及未来发展趋势
- 《研学旅行课程设计》课件-2认识研学旅行的参与方
- 安全警示教育的会议记录内容
评论
0/150
提交评论