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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

单片机控制音乐播放器毕业论文.docx

1、单片机控制音乐播放器毕业论文高等教育毕业论文题 目: 单片机控制音乐播放器 姓 名: XX 指导教师: XXX 专业、层次: 年 级: 05级 年 月 日指导教师评语及评分论文评分指导教师(签名) 年 月 日答辩评语及评分答辩评分答辩组长(签名) 年 月 日综合评分成 绩评定人签名 年 月 日毕业论文(设计)任务书( 学年)学院名称:题 目学生姓名专业层次学号指导教师任务书下达时间概述:要求阅读或检索的参考资料及文献(包括指定给学生阅读的外文资料):目 录目 录 1摘 要 2第1章 前 言 3第2章 单片机的基本组成 42.1 单片机的定义 42.2 单片机的几部份 4第3章 硬件系统结构 7

2、3.1 SPCE061A结构 73.2 语音采集的硬件电路 7第4章 软件设计与实现 94.1 语音信号的采集压缩与数据传输 94.2 语音采集的硬件连接 94.3 语音数据的传输 10第5章 控制和编译过程 125.1 软件设计结构 125.2 软件控制音乐播放编译过程 13第6章 结论 16致 谢 17参考文献 18附录: 19单片机控制音乐播放器摘 要现当今,单片机的应用无处不在.利用单片机控制音乐播放也多不胜举,音乐芯片也相当之多,而利用单片机存储音乐,控制播放最为广泛.它有功能多价格优外部电路简单的特点,深受音乐爱好者及音乐芯片制造商的青昧,用80C51 单片机及少数外部点路控制MU

3、SIC播放,产生“生日快乐歌”,并伴有彩灯闪烁.利用软件的功能设置,使音乐和灯光有同步的效果.对于单片机产生音乐,关键是控制頻率的输出.我们知道,不同的聲音对应不同的頻率,产生有规律的頻率输出就可以得到相应規律的聲音.音乐中,有8个基本音符:doremifasolaxido,八个不同的音符对应著不同的頻率.只要我们对照音符输出相对应的頻率,就可以产生美妙的音乐了.本章中采用了T0中断的方法产生不同頻率,并用两键控制播放和停止。这里,我用8051单片机控制音乐。由键盘控制播放,用运算放大器的同相放大方式驱动SPEAKER。关键词:单片机 硬件系统 软件系统 控制程序结构 第1章 前 言单片机又称

4、单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机了解计算机原理与结构的最佳选择。MCS-51系列单片机有5个中断源,中断分为2个中断优先级,即高优先级和低优先级,每个中断源的优先级都可以由软件来设定 51单片机中断系统的组成:它由4个与中断有关的特殊功能寄存器(TCON、SCON的相关位作中断源的标志位)、中断允许控制寄存器IE、中断优先级管理(IP寄存器)和中断顺序查询逻辑电路等组成。可以说,二十世纪跨越了三个“电”的时代,即电气时代、电

5、子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成,还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能型”,如智能型洗衣机等。现在有些工厂的技术人员

6、或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。第2章 单片机的基本组成2.1 单片机的定义单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机了解计算机原理与结构的最佳选择。可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成,还有一类

7、计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单

8、片机或其它可编程逻辑器件上。2.2 单片机的几部份 一、总线:我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中,连连线并不成为一个问题,因为各器件间一般是串行关系,各器件之间的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以就需要的连线就很多了,如果仍如同模拟电路一样,在各微处理器和各器件间单独连线线,则线的数量将多得惊人,所以在微处理机中引入了总线的概念,各个器件共同享用连线,所有器件的8根数据线全部接到8根公用的线上,即相当于各个器件并联起来,但仅这样还不行,如果有两?器件同时送出数据,一个为0,一个为1,

9、那么,接收方接收到的究竟是什么呢?这种情况是是不允许的,所以要通过控制线进行控制,使器件分时工作,任何时候只能有一个器件发送数据(可以有多个器件同时接收)。器件的数据线也就被称为数据总线,器件所有的控制线被称控制总线。在单片机内部或者外部存储器及其它器件中有存储单元,这些存储单元要被分配地址才能用,分配地址也是以电信号的形给出的,由于存储单元比较多,所以,用于地址分的线也较多,这些线被称为地址总线。二、数据、地址、指令:之所以将这三者放在一起,是因为这三者的本质都是一样的数字,或者说都是串0和1组成的序列。换言之,地址、指令也都是数据。指令由单片机芯片的设计者规定的一种数字,它与我们常用的指令

10、助记符有着严格的一一对应关,不可以由单片机的开发者更改。地址:是寻找单片机内部、外部的存储单元、输入输出口的依据,内单元的地址值已由芯设计者规定好,不可更改,外部的单元可以由单片机开发者自行决,但有一些地址单元是一定要有的。数据:这是由微理机处理的象,在各种不同的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况:1、地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。2、方式字或控制字(如MOV TMOD,#3),3即是控制字。3、常数(如MOV TH0,#10H)10H即定时常数。4、实际输出值(如P1口接彩灯,要灯全亮,则执行指令:MOV P1,#0FFH,

11、要灯全暗,则执指令:MOV P1,#00H)这里0FFH和00H都是实际输出值。又如用于LED的字形码,也是实 际输出的值。 理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞,会把数据当成指令来行了。三、P0口、P2口和P3的第二功能用法初学时往往对P0口、P2口和P3口的第二功能用法迷惑不解,认为第二功能和原功能之间要有个切换的过程,或者说要有一条指令,事实上,各端口的第二功能完全是自动,不需要指令来转换。如P3.6、P3.7分别是WR、RD信号,当微片理机外接RAM或有外部I/O口 时,它们挥作第二功能,不能作为通用I/O口使用,只要一微处理机一执行到MOVX指令,就会有相应的

12、信号从 P3. 或P3.7送出,不需要事先用指令说明。事实上不能作为通用I/O口使用也并不能将其作为通用I/O口使用。你完全可以在指令中按排一条S ETB P3.7的指令,并且当单片机执行到这条指令时,也会使P3.7变为高电平,但使用者不会这么做,因为这通常这会导致系统当溃(即死机)。四、程序的执行过程单片机在通电复位后8051内的程序计数器(PC)中的值为0000,所以程序总是从0000单元开始执行,也就是说:在系统的ROM中一定要存在0000个单元,并且在0000单元中存放的一定是一条指令。五、堆栈:堆栈是一个区域,是用来存放数据的,这个区域本身没有任何特殊之处,就是内部RAM的一份,特殊

13、的是它存放和取用数据的方式,即所谓的先进后出,后进先出,并且堆栈有特的数据传输指令,即PUSH和甈OP,有一个特殊的专为其服务的单元,即堆栈指针SP每当执一次 PUSH指令时,SP就(在原来值的基础上)自动加1,每当执行一次POP指令,SP就(在原来值基础上)动减1。由于SP中的值可以用指令加以改变,所以只要在程序开始阶段更改了SP值,就可以把堆栈设置在规定的内存单元中,如在程序开始时用一条MOV SP,#5FH指令,就时把堆栈设置在从内存单元60H开始的单元中。一般程序的开头总有这么条设置堆栈指针的指令,因为开机时,SP的初始值为07H,这样就使堆栈从08H单元 开始往后8H到1FH这个区域

14、正是8031的第二、三、四工作寄存器区,经常要被使用,这会造成数的浑乱。不作编写程序时,初始化堆栈指令也不完全相同,这是作者的习惯问题。当设置好堆栈区,并不意味着该区域成为一种专用内存,它还是可以象普通内存区域一样使用,只是一般情下编程者不会把它当成通内存用了。六、单片机的开发过程这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设已设计并制作好硬件下面就是编写软件的工作。在编写软件之前,首先要确定一些常数、地址,事实这些常数、地址在设计阶段已被直接或间接地确定下来了。如当某器件的连线设计好后,其地址也就确定了,当器件的功能被确定下来后,其控制字也就被确定了。然后用文本编缉器(如ED

15、IT、CCED 等)写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简单程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后,就可以写(将程序固化在EPROM中)。在源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够 识别种格式的文件,只要将此文件调入即可写片。在此,为使大家对整个过程有个认识,举一说明:ORG 0000H LJMP START ORG 040H START:MOV SP,#5FH;设堆栈LOOP:NOP LJMP LOOP;循环 END。第3章 硬件系统结构3.1 SPCE061A结构SPCE061A的内部结构如图3-1

16、,其特点如下:图3-1 SPCE061A的内部结构工作电压:VDD为2.63.6V(CPU),VDDH为VDD5.5V(I/O);CPU时钟为0.3249.152MHz;内置存储器:SRAM为2KB,内存Flash为32KB;可编程音频处理;2个16位可编程定时器/计数器;7通道10位ADC(内置麦克风放大和自动增益控制功能);2个10位DAC;32路可编程通用输入输出端口;串行输入输出接口;低电压监测/低电压复位功能;14个中断源可来自定时器、外部时钟输入、键唤醒等;内置在线仿真电路ICE。3.2 语音采集的硬件电路语音采集的硬件电路如下图3-2所示。MIC采用驻极体电容话筒,这种话筒具有灵

17、敏度高、无方向性、重量轻、体积小、频率响应宽、保真度好等优点。与PC机的串行通信用SPCE061A的UART接口,用MAX232芯片进行电平转换,即可实现RS232通信。图3-2 语音采集的硬件电路第4章 软件设计与实现4.1 语音信号的采集压缩与数据传输语音信号处理的基础是对语音信号进行数字化,并采样存储。SRCE061A内置专门用于语音信号采集的自动增益控制放大器(AGC)的麦克风输入通道(MIC_IN)。语音信号经麦克转换成电信号,由隔离电容隔掉直流成分,然后输入至内部前置放大器。SPCE061A内部自动增益控制电路AGC能随时跟踪、监视前置放大器输出的音频信号电平,当输入信号增器时,A

18、GC电路自动减小放大器的增益;当输入信号减小时,AGC电路自动增大放大器的增益,以便使进入A/D的信号保持在最佳电平,又可使谐波减至最小。ADC初始化程序如下:INT OFF;R1=0x0030;P_TimerA_Ctrl=R1;时钟频率为CLKA的fosc/2R1=0xfa00;P_TimerA_Data=R1;采样率为16kHzR1=0x003d;P_ADC_Ctrl=R1;/设置AGC功能R1=0x00A8;P_DAC_Ctrl=R1;/采用自动方式且通过MIC_IN通道输入,通过定时器A的溢出锁存数据,ADC为自动方式R1=0x1000;P_INT_Ctrl=R1;/开中断IRQ1_T

19、MINT IRQ;4.2 语音采集的硬件连接语音采集的硬件连接图如下图3-1所示:图 3-1 语音采集的硬件连接图波形编码的基本原理是以波形逼近为原则,在时域上把幅度样本分层量化并用代码表示;特点是语音质量高、抗噪性强编码率高,适于语音及高保真音乐。参数编码是基于某种语音产生模型,在编程端分析出该模型参数选择适当的方式进行编码;特点是语音质量差、抗噪抗弱和编码率低。凌阳SPCE061A提供了压缩算法库SACMLIB(见表3-1),其处理的语音信号范围是200Hz3.4kHz的电话语音,并将A/D、编/解码、存储及D/A做成相应的模块,对于每个模块都有其应用程序接口API。表4-1 SACM-L

20、IB 库中模块及其算法模块名称压缩算法采样率/kHz语音压缩编码率/Kb/s用途SACM_A2000子带编码1616、20、24播放语音及高保真音乐SACM_S480/S720CELP混合编码164.8、7.2播音SACM_S240参数编码242.4播音SACM_MS01FM音乐合成1616、20、24音乐合成SACM_DVR子带编码1616Kb/s的传输率,8Ksps采样率ADC信道录音DAC放音4.3 语音数据的传输SPCE061A的通用异步串口(UART)提供了一个8位全双工标准接口,用于完成SPCE061A与外设之间的串行通信。借助于IOB口的特殊功能和UART IRQ中断,可以同时完

21、成UART接口的接收与发送数据的过程。根据应用需求,把UART设置为中断方式接收数据,以查询方式发送数据。目前,Mircosoft公司的VC+6.0是基于Windows程序设计的主流开发工具之一。VC+不仅秉承了C+简便、灵活及面向对象等优点,而且提供了功能强大的MFC类库,并能自动生成应用程序框架,提供标准化的程序结构和用户接口。特别需要指出的是,为了今后调用低层的音频处理API函数,对由下位上传的音频数据进一步进行语音识别方面的处理,我们使用VC来编写上位机的控制及存储程序。在实验室和工业应用中,RS232串口是常用的计算机与外部串行设备(单片机)之间的数据传输通道,由于串行通信简单易用,

22、所以应用广泛。通常在VC+中有三种方法可以实现串行通信,使用VC+的标准通信函数_inp和_outp来实现串口通信;把串口看成是一个特殊的设备文件,使用有关文件处理的API函数来实现串口通信;使用ActiveX的串行通信控件MSComm来实现串口通信。第5章 控制和编译过程5.1 软件设计结构主要是实现键盘处理,程序中必须确认是哪一个按键被按下,然后转到相应的处理程序中执行,实际上该程序是一个完整的键盘扫描程序,如果改动其中的处理子程序完全可以应用到其他的控制电路中,下文附有详细的程序和说明供参考,图5-1为软件设计的结构流程图。图5-1 软件设计的结构流程图流程图键盘扫描程序的任务简单讲就是

23、:首先确认是否有按键按下,然后通过扫描判断来得到是在哪一行的按键,最后通过比较预先设定的4行表格查找并计算得到具体的按键,从而转到相应的功能程序。(1)置列线为输入状态(P1.4-P1.7为1),行线(P1.0-P1.3)先为0,即设定的P1.7-P1.0等于F0H并把该状态保存,接这读入当前P1口状态,不难理解,只要有按键(任何一个)按下,P1口的状态肯定不是原来设定的P1.7-P1.0等于F0H,通过判断就可以实现第一步的目的:首先确认是否有按键按下?(2)从第一行(P1.0行)开始一步步扫描,找出并确认按键在哪一行,扫描的方法步骤见表2。行线每次只有一个为0,例如第1次扫描时设定P1.0

24、为0,而P1.1-P1.3为1,显然,在当前扫描过程中按下按键如果不是P1.0行,那么P1口状态始终是FEH,因此表2说明中强调“只有任一次比较P1口不等于该数值,说明当前按键就在该行”就是这样的含义,其余各次比较也是一样道理,通过这样的判断,可以实现查找按键所在得行数。(3)程序中定义了4个表KEYVALTAB1-KEYVALTAB4,分别存放的数据用来为比较程序服务而指示出各行的按键具体位置,表3列出按键标号和比较数据对应关系,在R2中存放行号的起始值,R0用来存放在每一行中查到按键的具体位置(R0范围是0-3),各行查找时比较的数据见表(3)。读写可以简单分析就可以得到结果,假设通过程序

25、先判断按键在第一行,显然如果S0按下,P1.7-P1.0的状态是11101110(S1连接于P1.0和P1.4),也就是表3中S0EEH。(4)KEYCALCU子程序中通过乘3运算用于散转指令JMP,注意LJMP是3字节指令,各按键对应的功能程序安排在一起串LJMP,所以通过乘3运算才能正确对应到各按键的执行目标功能程序。关于各键的相应处理功能就较简单,只要对应不同的按键输入相应的控制命令,对于S0-S9是控制P3.3-P3.0不同的状态以得到所对应的BCD编码,对于S10-S13则是控制P3.4,P3.5的状态以实现对U3-U6的控制。5.2 软件控制音乐播放编译过程软件控制音乐播放编译过程

26、如下程序所示ORG 0000HLJMP STARTORG 000BHINC 20H;中断服务,中断计数器加1MOV TH0,#0DBHMOV TL0,#0FFH;11.0592M晶振,形成10毫秒中断RETISTART:MOV SP,#50HMOV TH0,#0DBHMOV TL0,#0FFHMOV TMOD,#01HMOV IE,#82HMUSIC0:NOPMOV DPTR,#DAT;表头地址送DPTRMOV 20H,#00H;中断计数器清0MUSIC1:NOPCLR A;A清零MOVC A,A+DPTR;查表取代码JZ END0;是00H,则结束CJNE A,#0FFH,MUSIC5;如果

27、不是休止符,往下执行,以R6作为音符频率控制,唱R7节拍那么久。LJMP MUSIC3MUSIC5:NOPMOV R6,A;R6=18H音符的频率INC DPTR;DPTR加1MOV A,#0MOVC A,A+DPTR;取节拍代码送R7MOV R7,A;R7=30H音符发音的时间SETB TR0;启动计数MUSIC2:NOPCPL P3.2;P3.2是音乐输出引脚MOV A,R6MOV R3,A;R3=R6=18HLCALLDELMOV A,R7CJNE A,20H,MUSIC2;中断计数器(20H)=R7否;不等,则继续循环。MOV 20H,#00H;等于,则取下一代码INC DPTRLJM

28、P MUSIC1MUSIC3:NOP;休止100毫秒CLR TR0MOV R2,#0DH;R2=13MUSIC4:NOPMOV R3,#0FFH;R3=255LCALL DELDJNZ R2,MUSIC4INC DPTRLJMP MUSIC1END0:NOPMOV R2,#0FFH;歌曲结束,延时1秒后继续MUSIC6:MOV R3,#00HLCALL DELDJNZ R2,MUSIC6LJMP MUSIC0DEL:NOPDEL3:MOV R4,#02HDEL4:NOPDJNZ R4,DEL4NOPDJNZ R3,DEL3RETNOPDAT:DB 18H,30H,1CH,10H,20H,40H

29、,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,26H DB 40H,20H,20H,2BH,20H,26H,20H,20H DB 20H,30H,80H,0FFH,20H,20H,1CH,10HDB 18H,10H,20H,20H,26H,20H,2BH,20HDB 30H,20H,2BH,40H,20H,20H,1CH,10HDB 18H,10H,20H,2

30、0H,26H,20H,2BH,20HDB 30H,20H,2BH,40H,20H,30H,1CH,10HDB 18H,20H,15H,20H,1CH,20H,20H,20HDB 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,2BH,40HDB 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,00HEND第6章 结论现当今,单片机的应用无处不在.利用单片机控制音乐播放也多不胜举,音乐芯片也相当之多,而利用单片机存储音乐,控制播放最为广泛.它有功能多价格优外部电路简单的特点,深受音乐爱好者及音乐芯片制造商的青昧,二十世纪跨越了三个“电”的时代,即电气时代,顾名思义,计算机成为我们生活的主流已是家喻户晓的事情,然而,单片机也随之飞速的

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1