简易电子音乐盒设计

  • 格式:doc
  • 大小:149.50 KB
  • 文档页数:14

下载文档原格式

  / 14
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录

[中文摘要] (1)

引言 (2)

一、设计方案 (2)

1.1 概述 (3)

1.2 方案论证 (3)

二、系统硬件简介及组成 (5)

2.1 8051的内部资源和结构特点 (5)

2.1.1 中央处理器 (6)

2.1.2 存储器组织 (7)

2.2 扣扣204440748提供完整版本 (7)

2.2.1 芯片的引脚描述 (7)

2.2.2 MCS-51单片机的片外总线结构 (10)

2.3 系统总体设计 (10)

2.3.1 时钟电路设计 (11)

2.3.2 复位电路设计 (11)

2.3.3 16按键键盘电路设计 (12)

2.3.4 8位LED显示器电路设计 (15)

2.3.5 外部存储器扩展电路 (19)

2.3.6 串行接口电路 (19)

2.3.7 蜂鸣器及驱动电路的介绍 (20)

三、软件设计 (20)

3.1 编程思路 (20)

3.2 播放方法 (21)

3.3 程序清单实例 (23)

四、总结 (39)

致谢及声明 (40)

参考文献 (41)

摘要

本课题是利用单片机原理设计一个简易的电子音乐盒。以8051单片机为核心(它由5V 直流电源供电),利用I/O口产生一定频率的方波,使用运算放大器的同相放大方式进行电路驱动(驱动蜂鸣器),发出不同的音调,从而演奏乐曲;使用七段LED数码管来进行显示歌曲序号(其中LED采用的是动态扫描显示),通过功能选择键并加以必要的外围电路来控制来选择、暂停和播放音乐。软件方面采用C语言和汇编语言综合编程及模块化结构设计,阐述了程序的各个模块和实现过程,使程序设计的逻辑关系更加简洁明了,当知道模块的输入和所要求的输出时,就可直接测试小模块,增加了程序的可读性和可移植性,为了便于扩展和更改。

关键词: 单片机电路 LED 音乐盒中断编程

引言

电子音乐 ------ 当下时代的音乐标志,电子音乐的出现也以其特有的优势,同样把这种延伸提高到了一个全新的高度。与传统音乐的本质区别在于,它打破了千万年来传统音乐用“声乐语言”和“器乐语言”表达乐思的基本格局,以及手工操作的各种常规方法的局限性,而代之以任何声音都可入乐和改变了传统记谱法,并采用许多时代的软体化电子化的创作手段,确立了电子音乐以科学技术为依托和动力的发展思路,借助先进的技术手段探寻全新的音乐领域。正是由于这些独特优势才使电子音乐成为当下时代的音乐标志。

所谓单片机就是在一片硅片上集成了包括中央处理器CPU(Central Processing Unit)、随机存储器RAM(Random Access Memory)、只度存储器ROM(Read Only Memory)、中断系统、定时器以及多种I/O口(Input/Output ports)的一个不带外部设备的微型计算机,即

单片微型计算机,简称单片机。

单片机是微型计算机应用技术的一个重要分支,单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,得到了广泛的应用和迅速的发展,它已经渗透到我们生活的各个领域。单片机的应用无处不在,利用单片机控制音乐播放也多不胜举。音乐芯片也相当之多,而利用单片机存储音乐,控制播放最为广泛。它有功能多﹑价格优﹑外围电路简单的特点,备受音乐爱好者及音乐芯片制造商的青昧。

一、设计方案

1.1 概述:

本次设计任务是做一个电子音乐盒,用51单片机及少数外围电路控制音乐播放,对于单片机产生音乐,关键是控制频率的输出。我们知道,不同的声音对应不同的频率,产生有规律的频率输出就可以得到相应规律的声音。在音乐中,有8个基本音符:do﹑re﹑mi﹑fa﹑so ﹑la﹑xi﹑do八个不同的音符对应着不同的频率。只要对照音符输出相对应的频率,就可以产生美妙的音乐了。

当有键按下时,判断键值,启动计数器T0,产生一定频率的脉冲,驱动蜂鸣器,放出音乐。同时启动定时计数器T1,显示播放时间,并驱动LCD,显示歌曲号及播放时间,可以在LED 显示歌曲号。

1.2 方案论证:

设计中我考虑了两种设计方案,两种设计方案中主要去区别在于硬件电路的不同,对于本设计通过模拟电路和单片机设计均可以实现,最后根据设计要求、可行性和适合性的考虑选择了单片机设计的方案。现在一一介绍论证如下:

[方案一]

此方案采用的是模拟电路,其中涉及有几部分:

(1)基准频率产生器,产生基准频率,其值应根据音调发生器的频率要求决定。电路可由晶振构成时钟脉冲振荡器。

(2)音调发生器,音调发生器产生各个音区与音符所对应的频率;音符代码存储器,用来存储与乐曲的音符对应的数字代码及乐曲的数量。

(3)通常先将乐曲进行编码,再将其代码存储在EPROM存储器。

(4)节拍发生器与地址计数器,节拍发生器的振荡频率由乐曲演奏的速度所决定。演奏的速度越快,节拍发生器的速度越高。

[方案二]

采用单片机进行设计:

在大体上对音乐播放器的功能按几个部分进行了划分,其中包括键盘扫

描、单键演奏、键盘点播乐曲、音乐输入存储及播放、液晶显示等几个部分。

随后进行分工,主要分为键盘扫描、键盘点播乐曲、音乐存储及播放部分,

并合作了实现电子琴演奏功能的部分,最后把程序整和在一起与硬件电路进行调试完成。

其中对于音乐的存储和演奏进行讨论。起初设想把音乐的声调高低这些信

息用不同的电压代表。将音符按音高和音长直接存储在数据存储器里并与按键相关联,调用自动演奏子程序产生相应频率和时长的方波电压输出到喇叭即可。通过A\D转换存储到内存单元里,而这不同的电压正可以通过不同的按键实现,后来在具体编程时发现有困难,于是在网上查到相应音高的分频值存储在寄存器里,并将其与对应的按键进行关联,通过键盘扫描子程序将对应的分频值送入单音播放子程序即可产生相应频率的电压方波,再将其输出到喇叭即可产生对应的音高实现电子音乐功能。