没有合适的资源?快使用搜索试试~ 我知道了~
基于51单片机的电子琴课程设计报告书.doc
需积分: 12 0 下载量 163 浏览量
2022-07-17
10:44:31
上传
评论
收藏 370KB DOC 举报
温馨提示
试读
28页
基于51单片机的电子琴课程设计报告书.doc
资源详情
资源评论
资源推荐
1 / 28
摘要
本设计主要研究基于 AT89C52 单片机的简易电子琴设计。
它是以单片机作为主控核心,设置键盘、蜂鸣器等外围器件;另外还用到一
些简单器件如:NPN 型三极管与电阻等。利用按键实现音符和音调的输入;用 NPN
型三极管 8550 实现低音频功率放大;最后用蜂鸣器进行播放“送别”。
本设计硬件部分主要由最小系统,按键系统模块和蜂鸣器模块组成。其软件
部分主要有主程序模块、定时中断程序、定时计数程序。
(1)最小系统:它是单片机应用系统的设计基础。它包括单片机的选择、时钟
系统设计、复位电路设计、简单的 I/O 口扩展、掉电保护等。
(2)按键系统模块:本设计采用 10 个按键,其中 7 个按键用来显示 7 个音调,
其它 3 个按键可以进行高低中音的切换,并自动播放已存歌曲。
(3)蜂鸣器模块:此电子琴发音电路是通过三极管驱动蜂鸣器发音,经过上拉
电阻提高驱动能力。
本次设计首先对单片机设计简易电子琴仔细分析,接着制作硬件电路和编写
软件的程序,最后进行软硬件的调试运行。并且从原理图,主要芯片,各模块的
原理和各个模块的程序调试来阐述。利用单片机产生不同频率来获得我们要求的
音阶,实现高、中、低共 21 个音符的发音和音乐播放时的控制,并且能自动播
放程序中编排的音乐。系统运行稳定,其优点是硬件电路简单,软件功能完善,
控制系统可靠,性价比高等,具有一定的使用和参考价值。
0 / 28
目录
1.概述 1
1.1 设计背景 1
1.2 设计意义 1
1.3 设计任务 1
2.系统总体方案与硬件设计 2
2.1 总体设计 2
方案一:采用单个的逻辑器件组合 2
方案二:用 VHDL 语言编程来实现 2
2.2 单片机选型 3
2.3 单片机的最小工作系统 3
2.3.1 时钟电路 3
2.3.2 复位电路 4
2.4 原理框图 4
2.5 按键部分设计 5
2.5.1 操作键设计 5
2.5.2 键盘设计 5
2.5.3 去抖动 6
2.6 发音部分设计 7
3.系统软件设计 7
3.1 系统分析 7
3.1.1 系统软件的组成 7
3.1.2 系统总体功能流程图 8
3.2 参数计算 9
3.2.1 发音原理 9
3.2.2 计算举例 9
3.2.3 计算结果 9
3.3 程序设计 11
3.3.1 判断音阶(高中低音)子程序 11
3.3.2 播放子程序(包括自动播放存储音乐和按键发音)12
4. Proteus 软件仿真 14
4.1 硬件调试 14
4.2 软件调试 14
4.3 仿真结果(任举一例)15
4.4 结果分析 15
5. 课程设计体会 16
参考文献 17
附 1 源程序代码 18
附 2 系统原理图 26
0 / 28
1.概述
1.1 设计背景
随着电子科学技术的飞速发展,电子技术正在逐渐改善着人们的学习、生活、
工作,因此开发本系统希望能够给人们带来更多的生活乐趣。
基于当前市场上的玩具需求量增大,其中电子琴就是一个很好的应用方面。
单片机技术使我们可以利用软硬件来实现电子琴的功能,从而可以实现电子琴的
微型化,可以用作玩具琴、音乐转盘以与音乐童车等等。并且可以进行一定的功
能扩展。鉴于传统电子琴可以用键盘上的“1”到“A”键演奏从低 So 到高 DO
等 11 个音,从而也可以通过单片机实现对十个按键的扩展,实现七个音符键的
高、中、低 21 个音调的显示播放和任意音乐的自动播放。该设计将十个音键制
作成独立键盘,其中七个为音符键,三个为控制键,使电子琴的功能更加完美。
不但可以实现对按键的控制,而且可以实现对音乐的自动存储和播放,使该设计
功能更加完善。
1.2 设计意义
该设计具有以下优点:
①可以方便更换音符和音调;
②比传统电子琴功能更完善;
③制作简单,成本低;
1.3 设计任务
实现电子琴发声控制系统;要求电路实现如下功能:
利用蜂鸣器作为发声部件,设置 10 个按键,实现高音、中音、低音的 1、2、3、
4、5、6、7 的发音。并在存储一首歌曲的容,可以实现自动播放。
用 PROTEUS 实现的电子琴仿真设计
说明:单片机的工作时钟频率为 11.0592MHz。
1 / 28
2.系统总体方案与硬件设计
2.1 总体设计
实现本次设计的方案有多种,下面比较说明一下最佳方案的选择。
方案一:采用单个的逻辑器件组合
音乐是有由不同的音阶组成的,而不同的音阶又是由不同的频率发出的,那
么利用不同的频率,就可以发出不同的音乐了。
我们知道计数器 8253 可以产生任意频率的方波频率信号,因此,我们只要
把一首歌曲的音阶对应频率与计数器的频率对应起来就可通过计数器产生音乐
了。根据本实验要求,采用 8279 将键扫得到的键值通过查表得到相应的 8253 的
频率值,将从 8253 得到相对应的按键弹奏信号经过 LM386 进行放大,再用喇叭
输出,就实现了简易电子琴的基本功能,也就完成了实验的要求。
方案二:用 VHDL 语言编程来实现
系统整体基本原理图如下:
图 1、系统整体基本原理图
利用我们实验室先进的数字电路实验设备,我们可以采用 VHDL 语言编程来
实现。我们可以通过 VDHL 语言,对实验原理图的各个部分进行设计,通过编译,
可以在计算机上下载此实验原理图,利用电路学习机上的芯片。我们很快就可以
设计出一个简单的电子琴。并实现其功能。
方案三:采用 AT89S52 单片机作为主控芯片,设置键盘、蜂鸣器等外围器件,
另外还用到一些简单器件如:NPN 型三极管与电阻等。利用按键实现音符和音调
的输入;用 NPN 型三极管 8550 实现低音频功率放大;最后用蜂鸣器发音。
2 / 28
三种方案的比较:
方案一采用单个的逻辑器件组合实现。这样虽然比较直观,逻辑器件分工鲜
明,思路也比清晰,一目了然,但是由于元器件种类、个数繁多,而过于复杂的
硬件电路也容易引起系统的精度不高、体积过大等不利因素。例如七个不同的音
符是由七个不同的频率来控制发出的,所用仪器之多显而易见。方案二采用 VHDL
语言编程来实现电子琴的各项功能。系统主要由电子琴发声模块、选择控制模块
和储存器模块组成。和方案一相比较,方案二就显得比较笼统,虽然我们可以看
到用超高速硬件描述语言 VHDL 的优势,但本质上它只是把整个系统分为了若干
个模块,而不牵涉到具体的硬件电路。方案三与前两种方案相比,主控芯片采用
AT89S52 单片机,它是大规模集成电路技术发展的产物,具有高性能、高速度、
体积小、价格低廉、稳定可靠、应用广泛的特点。同时具有强大的控制功能和灵
活的编程实现特性,由于本设计主要用于人们娱乐方面,因此在设计上尽量使其
安全以与简单易操作。而第三种方案具有经济可行性、技术可行性、实物应用性。
综上所述,本次课程设计采用第三种方案。
2.2 单片机选型
硬件电路要以单片机作为主控芯片,实现按键输入音符和音调,两位数码管
的显示以与低音频功率放大和蜂鸣器发音。针对本设计的功能和用途,采用
AT89S51 单片机更好,实现功能完全,性价比较高,更适合本设计。
2.3 单片机的最小工作系统
单片机加上适当的外围器件和应用程序,构成的应用系统称为最小系统。
2.3.1 时钟电路
单片机部具有一个高增益反相放大器,用于构成振荡器。通常在引脚 XTALl
和 XTAL2 跨接石英晶体和两个补偿电容构成自激振荡器,结构图 2 中 X1、C1、
C2。可以根据情况选择 6MHz、12MHz 或 24MHz 等频率的石英晶体,补偿电容
通常选择 30pF 左右的瓷片电容。
图 2、时钟电路
2.3.2 复位电路
单片机小系统常采用上电自动复位和手动按键复位两种方式实现系统的复
位操作。上电复位要求接通电源后,自动实现复位操作。手动复位要求在电源接
通的条件下,在单片机运行期间,用按钮开关操作使单片机复位。其结构如下图。
剩余27页未读,继续阅读
智慧安全方案
- 粉丝: 3604
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- yolov5,SSD 可能使用到的一些代码
- 基于c51单片机+DS1302+DHT11温湿度模块+LCD1602显示的万年历硬件原理图+BOM+软件程源码序+仿真图.zip
- NSGA2的MATLAB代码
- Messagepassingtest_GCN_DGL.py
- Sh,Docker 运维好帮手,一招通过 sh 脚本批量快速启动和重启多个Docker 容器
- PCF2123.pdf
- 打开注册表操作.doc
- Windows 常见运行运行库32+64
- WMJUL8iC.html
- 基于3KW光伏并网单相逆变器设计(TMS320F28035控制板+显示板+STM32F103功率板)硬件(原理图+PCB)工程
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0