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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

单片机电子音乐盒的设计13.docx

1、单片机电子音乐盒的设计13 摘 要单片机的易用性与多功能性使它广泛应用于各种微控制系统。本文介绍了一种基于单片机的电子音乐盒的设计,它是以AT89C2051单片机为控制核心,辅以一些外围器件,采用汇编语言编写程序,实现音乐播放功能。并在音乐盒基础上利用单片机闲置P1口拓展了LED点阵移位显示功能。整个系统电路结构简单,可靠性能高,测试结果满足设计要求。本文着重介绍了该系统的设计原理,硬件设计方法与软件编程思路。关键字:单片机、AT89C2051、音乐盒、LED移位显示 ABSTRACTThe ease of use and versatility make SCM widely used in

2、 various micro-control system. This paper introduces a SCM-based electronic music box design, which is based on AT89C2051 single chip microcomputer as control core, supplemented by some peripheral elements, using assembly language programming to realize music playing functions. Utilizing the residua

3、ry port P1 on the SCM, it extends the function of this music box, which could make LED lattice shift display. The electric circuit construction of the whole system is simple, the function has high reliability and the experiment test results satisfy the request. This paper emphasize introduces the de

4、sign principle of the system, hardware design and software programming ideas.Key words: SCM, AT89C2051, music box, LED shift display第1章 引言1.1 单片机介绍单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。单片机也被称

5、为微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。 早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着

6、工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大提高。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在

7、作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。由于单片机具有控制功能强,体积小,成本低,功耗小等一系列的特点,使它在工业控制,智能仪器,节能技术改造,通信系统,信号处理及家用电器产品中都得到广泛的应用,随着数字技术的发展及单片机在电子系统中的广泛应用,在很大程度上改变了传统的设计方法。以往采用模拟电路,数字电路实现的电路系统,大部分功能单元都可以通过对单片机硬件功能的扩展及专用程序的开发来实现系统提出的要求,这意味着许多电路设计问题将转化为程序设计问题。这种用模拟技术,数字技术的综合设计系统,用软件取代硬件实现和提供系统系能的新的设计思想体系,

8、一般称之为微控制技术。在微控制系统的设计中,系统设计和软件设计起着关键性的作用。1.2 单片机音乐电子音乐已广泛地应用于社会生活的各个领域。其类型从音乐卡片到CD、MP3 等多种多样,制作原理也各不相同。声音是通过振动产生的。单片机对某一I/O引脚以一定的频率循环置1和清0,这一引脚便产生一定频率的方波,该方波通过放大后作用于扬声器便产生一定频率的声音。若改变输出方波的频率,产生的声音也就改变了。通过控制输出方波的时间长短,声音的长短也就得到控制。因此,根据乐谱,单片机就可产生电子音乐。音乐中最关键的两个要素是音符和节拍。单片机控制的音乐发生器系统由硬件电路和软件两部分构成。利用单片机控制的电

9、子音乐发生器软硬件上具有独特的优点,系统的开发周期短,成本低,电路制作容易。更换歌曲时,硬件电路无需作任何修改,只需修改软件即可实现。软件编程时,可用51系列单片机的汇编语言或C51语言实现。同时还可根据个人的习好通过软件改变节拍的延时时间,增加电子音乐的趣味性。第2章 设计要求及理论基础设计一个单片机作品,首先需要有个总体的框架,并根据作品的设计要求选定合适的设计方案对其论证、选取合适的器件。本章主要阐述基于单片机的电子音乐盒设计方案与论证。2.1 设计要求2.1.1 基本要求1)以单片机为核心器件组成一个音乐盒;2)音乐盒音符范围:C调低音5sdo8()高音;3)内部存储至少两首以上可以播

10、放的歌曲;4)加一个按键,每按一次按键顺序播放一首歌曲。2.1.2 创新部分增加75LED点阵,通过硬件、软件设计使之移位显示字符,以拓展音乐盒功能、添加视觉效果、增强趣味性。2.1.3 成果形式硬件加软件。2.2 相关音乐知识在人类还没有产生语言时,就已经知道利用声音的高低、强弱来表达自己的思想和感情。声带、琴弦等物体振动时就会发出声波,声波通过空气传播进入人耳,人们就听到了声音。声音有噪音和乐音之分,乐音是振动有规律的,如人声带发出的歌声、由琴弦发出的琴音等。音乐中所有的声音主要是乐音。乐音听起来有的高低之分,这就叫音高。音高由发声物体振动频率的高低决定,高音的频率高,低音的频率低。比如,

11、女人唱歌时声带振动频率高,男人唱歌时声带振动频率低,所以女声比男生高。音乐中所用乐音范围从每秒钟振动16次的最低音到每秒钟振动4186次的最高音,大约97个。不同音高的乐音是用C、D、E、F、G、A、B来表示的,这7个字母就是乐音的音名;他们一般依次唱成DO、RE、MI、FA、SO、LA、SI,这是唱曲时乐音的发音,所以叫唱名。把C、D、E、F、G、A、B这一组音的距离分成12个等份,每一个等份叫一个“半音”。两个音质间的距离有两个“半音”的,就叫“全音”。一般,那些唱成DO、RE、MI、FA、SO、LA、SI的音叫自然音,在它们的左上角加上#号或b号的叫变化音。#叫升记号,表示把音在原来的基

12、础上升高半音;b叫降记号,表示把音在原来的基础上降低半音。音持续时间的长短即时值,一般用拍数表示。休止符表示暂停发音。一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样就可以利用不同频率的组合,加之与拍数对应的延时构成音乐。2.3 单片机产生音频脉冲原理通过上小节内容可知,产生不同频率的音频脉冲就能产生音乐。单片机产生不同频率的脉冲可以利用它的定时/计数器来产生特定方波频率信号。以下将分析音乐的音符和对应的频率,以及单片机定时计数的关系。2.3.1 音符频率音符对应不同的音调其频率也有所不同,如表2-1所示。表2-1 对应不同音调的音符频率表音调音符1sdo8()2sdo8()

13、3sdo8()4sdo8()5sdo8()6sdo8()7sdo8()C262294330350393441495D294330371393441495556E330371416441495556624F350393441467525589661G393441495525589661742A441495556589661742833B495556589661742833935音调音符1234567C523589661700786882990D5896617007868829901112E66170078688299011121248F700786882990111212481322G78688

14、29901112124813221484A88299011121248132214841665B9901112124813221484166518692.3.2 定时/计数器0产生音符频率采用12MHz时钟频率,利用单片机的内部定时器/计数器0,使其工作在模式1,定时中断,然后控制某一引脚的输出每次取反,就可以在该引脚输出相应的方波频率。改变计数初值就可以改变频率。即要产生音频输出方波,首先要算出某一音频的周期(1/频率),然后将此周期除以2得到半个周期的时间。定时器的定时时间等于半个周期,定时时间到就将输出脉冲取反,重复上述过程,就可在该引脚上得到某一音频的脉冲。其中,定时时间=(216-计

15、数初值)时钟周期12或 定时时间=(216-计数初值)机器周期因此 计数初值=216-定时时间机器周期例如:中音1(DO)的频率=523Hz,周期 T=1523s=1912s ;定时/计数器0的定时时间为:T2=19122s=956s ;定时 956s 的计数值=定时时间机器周期=956s1s=956 ;装入定时器0的计数初值THTL = 65536-956 = 64580。将64580装入TH0、TL0寄存器中,启动T0工作后,每计数956次时将产生溢出中断,进入中断服务程序,每次对该引脚的输出值进行取反,就可得到中音DO(523Hz)的音符频率。通过上述方法依次求出音符C调低音5sdo8(

16、)高音的所有计数初值。例如:C调的低音DO的THTL=65536500000/262=63627,高音DO的THTL=65536500000/1047=65058。为了编程记谱方便,对它们进行简单的音符编码,如表2-2所示。在编程中,歌曲的音符用音符编码记谱,然后根据音符编码查找对应的计数初值。表2-2 音符、音符编码及定时器初值对应表音符THTL音符编码音符THTL音符编码5sdo8()642631765031A6sdo8()64402265087B7sdo8()64526365136C164580465161D264668565200E364780665236F4648227不发音0564

17、900866497092.4 单片机实现音乐的节拍除了音符以外,节拍也是音乐的关键组成部分。节拍实际上就是音持续时间的长短,在单片机系统里可以用延时来实现。如果1/4拍的延时设为0.1秒,则1拍的延时是0.4秒。以此类推:假设1/4拍执行一次延时程序,则1/2拍就执行两次延时程序,所以只要求出1/4延时时间,其余的节拍就是它的倍数。如表2-3所示。为了记谱方便,将节拍数也进行了编码。由于不同的音乐每小节的拍数不同,可以适当调节一个延时时间的长度,如表2-4所示。表2-3 节拍与节拍编码对照表按1/4拍为一个延时时间按1/8拍为一个延时时间编码节拍编码节拍编码节拍编码节拍11/461 1211/

18、863/422/48221/48133/4A2 1233/8A1 1441C341/2C1 1251 14F3 3455/8表2-4 1/4节拍与1/8节拍延时时间设定表乐谱节拍1/4拍的延时时间/ms乐谱节拍1/8拍的延时时间/ms4/41254/4623/41873/4942/42502/41252.5 音频功放在一定频率范围内,具有固定频率的振动就能产生乐音,但是单片机产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动能力,这就需要音频功率放大电路。常常采用美国国家半导体公司的低压音频功率放大器LM386实现音频功放电路。LM386具有以下功能特性: 适于电池工作

19、; 使用外部元件少; 供电范围宽:412V或者818V; 低静态电流消耗:4mA; 电压增益范围:20200V。LM386的增益可调,可以广泛应用于各种音频电路中。LM386的内部结构及音频放大原理将在将在下一章具体阐述。2.6 小结知道了课题的设计要求与其所使用的基础原理,我们就能进行方案的选取和设计,下面两章将从单片机电子音乐盒的硬件设计和软件设计两个方面进行详细介绍。第3章 硬件设计设计一个单片机作品,首先需要有个总体的框架,并根据作品的设计要求选定合适的设计方案以及选取合适的器件。本次单片机音乐盒设计采用以下设计思路:1)选取合适型号的单片机,通过T0定时中断,并配合一个I/O引脚输出

20、音频频率,通过音频放大电路外接扬声器。2)通过另外一个引脚利用中断方式接入“播放音乐”选择按键;3)利用一组或两组I/O口,外接LED点阵驱动电路实现字符的移位显示。3.1 方案选取3.1.1 单片机的选取首先选择单片机中最为普遍的MCS51系列。其中AT89C2051是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机,片内含2k bytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C2051

21、单片机可应用于许多高性价比的应用场合。主要性能: 和MCS-51产品兼容; 2KB可重编程FLASH存储器(1000次); 2.7-6V电压范围; 全静态工作:0Hz-24KHz 2级程序存储器保密锁定 128*8位内部RAM 15条可编程I/O线 两个16位定时器/计数器 6个中断源 可编程串行通道 高精度电压比较器(P1.0,P1.1,P3.6) 直接驱动LED的输出端口由于完成核心功能音频输出只需一个I/O口,并且额外功能LED移位显示可根据所选单片机的剩余I/O口进行设计,因此AT89C2051足以满足基本要求。其20个引脚体积小巧,内部2k字节的程序存储器容量适中,低压低频工作条件,

22、并且价格低廉容易购得。综上,本次设计选择AT89C2051单片机。3.1.2 音频放大电路的选择方案一:甲类功放。甲类功放的功率管在输入信号一周内都是导通的(放大区,即导通角为360)。甲类功放最大的缺点是效率低。图3-1是将扬声器负载RL直接接在音频放大器发射极的甲类功放电路,这种连接称为负载直接耦合甲类功放。若工作点安排在最大动态范围点负载线中点(负载直接耦合交直流负载线相同),且不计饱和压降,则RL上信号电压振幅等于电源电压VCC的一半(见图3-2),所以最大输出功率 P0=12Vom2RL=18Vcc2RL (3-1)电源消耗的功率 Pcc=IcVcc=12Vcc2RL (3-2)故负

23、载直接耦合甲类功放的最大效率只有25%。此外,有一种使用变压器实现阻抗变换的甲类功放,其理论效率能达到50%。但是由于低频变压器功率消耗大,频率特性也差,现在已较少使用。 图3-1 负载直接耦合甲类功放电路 图3-2 甲类功放工作图解方案二:乙类功放。晶体管只有半周期工作在放大区(导通),另外半周期截止,即导通角为180的工作状态。电阻作为负载的乙类功放必须采用双管,让其轮流导通半周期,才能在负载RL上合成完整的输出电压,因此称为“推挽”电路。乙类功放在静态时电源不消耗功率,因此效率较甲类功放大大提高,理论上可达78.5%。方案三:甲乙类功放。乙类功放的效率虽然高于甲类功放,但非线性失真却比甲

24、类功放大。尤其是输入信号较小时,乙类功放的非线性失真严重。这是因为BJT的发射结存在导通电压所致。为了解决这一问题,可对推挽功率管设置一定的放大偏置,使功率管工作时导通时间在半周期以上(导通角大于180),这类功放称为甲乙类功放,其失真小于乙类功放,当然效率也低于乙类功放。方案四:丙类功放。功率管导通时间小于半周期的功放。丙类功放只有用具有选频特性的原件作负载才能克服非线性失真。它主要用于射频载波信号的放大。综上,本设计的音频放大将采用乙类功放。特别是,在美国国家半导体公司生产的芯片中有一款主要应用于低电压消费类产品的音频功率放器LM386。LM386的第三级放大采用的正是乙类功放推挽电路。L

25、M386为使外围元件最少,电压增益内置为20。若在1脚和8脚之间增加一只外接电阻和电容,便可将电压增益调为任意值,直至200。输入端以地位参考,同时输出端被自动偏置到电源电压的一半,在6V电源电压下,它的静态功耗仅为24mW,使得LM386特别适用于电池供电的场合。因此,我们将采用LM386为核心器件的音频放大电路。LM386的功能特性、内部结构及原理将在后文阐述。3.1.3 中断方式根据单片机TMOD寄存器中的M1和M0位的设定,定时/计数器可选择4种不同的工作方式。定时计数器0和1的前3种工作方式相同,方式3的设置差别较大,此处不予考虑。方案一:工作方式0。方式0是13位结构,由TH的高8

26、位和TL的低5位构成,TL的高3位未用。当TL的低5位计数溢出时想TH进位;当全部13位计数溢出时,则将溢出标志TF置1,在中断允许的情况下可产生中断申请。方式0的定时时间范围为18192us,计数值的范围为18192。方案二:工作方式1。方式1是16位计数结构。定时计数器由TH的全部高8位和TL的全部低8位组成。方式1的定时时间范围为165.5ms,计数值的范围为165536。方式三:工作方式2。方式2具有自动重新加载功能,变软件加载为硬件加载。此时将16位计数器分为两部分:用TL作计数器,用TH作预置计数器。程序初始化是把计数初值分别装入TL和TH中,当计数器溢出后,预置计数器TH便以硬件

27、方法自动向计数器TL重新加载。方式2定时时间范围为1256us,计数值的范围为1256。在本设计中定时/计数器主要用以装载不同音符的半周期时间以定时控制I/O口取反,输出不同频率的音调。基于上述用途,16位的计数器方便使用和编程,故采用方案二的工作方式1。3.1.4 LED显示方式方案一:静态显示。将一帧图像中的每一个二极管的状态分别用0和1表示,若为0,则表示LED无电流,即暗状态;若为1则表示二极管被点亮。若给每一个发光二极管一个驱动电路,一幅画面输入以后,所有LED的状态保持到下一幅画。对于静态显示方式,所需的译码驱动装置很多,引线多而复杂,成本高,且可靠性也较低。方案二:动态显示。对一

28、幅画面进行分割,对组成画面的各部分分别显示,是动态显示方式。动态显示方式,可以避免静态显示的问题。但设计上如果处理不当易造成亮度低,闪烁问题。因此合理的设计既应保证驱动电路易实现,又要保证图像稳定、无闪烁。动态显示采用多路复用技术的动态扫描显示方式,复用的程度不是无限增加的,因为利用动态扫描显示使我们看到一幅稳定画面的实质是利用了人眼的暂留效应和发光二极管发光时间的长短,发光的亮度等因素。通过实验发现,当扫描刷新频率(发光二极管的停闪频率)为50Hz,发光二极管导通时间1ms时显示亮度较好,无闪烁感。鉴于上述原因,采用方案二。3.1.5 LED驱动电路方案一:采取并口输入,占用大量I/O口资源

29、。方案二:选取串口输入,使用较少。所以选用串口输入。串口输入可以选用芯片有74HC595、74LS164。同时74HC595、74LS164具有串入并出8位移位功能,也易于与单片机配合实现LED点阵的字符移位显示功能。鉴于上述原因,采用方案二。3.2 硬件电路的实现附加LED点阵的电子音乐盒的硬件电路由8部分组成:单片机、时钟与复位电路、选择按键输入电路、音频发生器、音频放大器、扬声器、LED驱动电路和LED点阵。电子音乐盒的硬件电路设计框图如图3-3所示。利用单片机内部定时/计数器0与P3.0引脚配合,构成音频发生器;音频放大器主要由音频放大芯片LM386构成,用以驱动扬声器输出;选择按键通

30、过P3.2引脚接入,可以工作在查询方式,也可以工作在中断方式;LED驱动电路主要由8位移位寄存器74HC595和74LS164构成。图3-3 电子音乐盒硬件电路设计框图3.2.1 AT89C2051单片机硬件结构 单片机作为系统的核心控制部件,其内部结构及引脚分布将对整个硬件电路的设计布局起到决定性的作用。下面将介绍AT89C2051的内部结构与引脚分布。3.2.1.1 AT89C2051单片机内部结构AT89C2051单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上,除模拟比较器外其内部结构与8051内部结构基本一致。如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。它们都是通过片内

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

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