1 / 27
文档名称:

—基于单片机的-电子琴.docx

格式:docx   大小:1,183KB   页数:27页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

—基于单片机的-电子琴.docx

上传人:碎碎念的折木 2025/5/20 文件大小:1.16 MB

下载得到文件列表

—基于单片机的-电子琴.docx

相关文档

文档介绍

文档介绍:该【—基于单片机的-电子琴 】是由【碎碎念的折木】上传分享,文档一共【27】页,该文档可以免费在线阅读,需要了解更多关于【—基于单片机的-电子琴 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。河南理工大学
《单片机应用与仿真训练》设计报告
基于单片机的电子琴设计
姓 名:
学 号: 专业班级 指导教师: 所在学院:
2025
河南理工大学本科课程设计报告
- 3 -
摘要
单片微型计算机是大规模集成电路技术进展的产物,属第四代电子计算机, 它具有高性能、高速度、体积小、价格低廉、稳定牢靠、应用广泛的特点。它的应用必定导致传统的掌握技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。
电子琴是现代电子科技与音乐结合的产物,是一种型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的掌握功能和敏捷的编程实现特性, 它已经溶入现代人们的生活中,成为不行替代的一局部。本文的主要内容是用AT89S51 单片机为核心掌握元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主掌握模块,在主控模块上设有 16 个按键和扬声器。
本文主要对使用单片机设计简易电子琴进展了分析,并介绍了基于单片机电子琴统硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随便弹奏想要表达的音乐。并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来具体阐述。
一首音乐是很多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,固然对于单片机来产生不同的频率格外便利,我们可以利用单片机的定时/计数器 T0 来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
名目
1 概述………………………………………………………………………………
……………………


系统总体方案及硬件设计(宋体、小四,加粗,固定值 18 磅。以下一样要求)


软件设计



Proteus 软件仿真
课程设计体会参考文献
附 1:源程序代码附 2:系统原理图
河南理工大学本科课程设计报告
- 3 -
1 概述
1. 1 电子琴技术状况
本次设计提出了用 AT89S52 单片机为核心掌握元件,设计一个简易的电子琴. 本方案以 AT89S52 单片机作为主控核心,与键盘、扬声器等模块组成核心主掌握模块在主控模块上设有 7 个按键和扬声器。依据使用者的操作随便弹奏想要表达的音乐。一首音乐是很多不同的音阶组成的,而每个音阶对应着不同的频率, 这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,固然对于单片机来产生不同的频率格外便利,我们可以利用单片机的定时/计数器 T0 来产生这样方波频率信号。
1. 2 任务与要求
实现电子琴发声掌握系统;要求电路实现如下功能:
利用蜂鸣器作为发声部件,两个数码管作为显示部件,设置 10 个按键,实现高音、中音、低音的1、2、3、4、5、6、7 的发音。并在存储一首歌曲的内容,可以实现自动播放。
用 PROTEUS 实现的电子琴仿真设计
说明:单片机的工作时钟频率为 。
3 主要芯片简介
AT89C52 是一个低功耗,高性能 CMOS 8 位单片机,片内含 4k Bytes ISP(In-system programmable)的可反复擦写 1000 次的 Flash 只读程序存储器,器件承受 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准MCS-51 指令系统及 80C52 引脚构造,芯片内集成了通用 8 位中心处理器和 ISP Flash 存储单元,功能强大的微型计算机的 AT89S51 可为很多嵌入式掌握应用系统供给高性价比的解决方案。
AT89C52 具有如下特点:40 个引脚〔引脚图如图 1-1 所示〕,4k Bytes Flash片内程序存储器,128 bytes 的随机存取数据存储器〔RAM〕,32 个外部双向输入/输出〔I/O〕口,5 个中断优先级 2 层中断嵌套中断,2 个 16 位可编程定时计数器,2 个全双工串行通信口,看门狗〔WDTC〕电路,片内时钟振荡器。
河南理工大学本科课程设计报告
- 3 -
- 4 -
河南理工大学本科课程设计报告
此外,AT89C52 设计和配置了振荡频率可为 0Hz 并可通过软件设置省电模式。空闲模式下,CPU 暂停工作,而RAM 定时计数器,串行口,外中断系统可连续工作,掉电模式冻结振荡器而保存RAM 的数据,停顿芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有 PDIP、TQFP 和 PLCC 等三种封装形式,以适应不同产品的需求。
图 1-1 AT89C52
河南理工大学本科课程设计报告
- 7 -
2 系统总体方案及硬件设计
本系统承受单片机 AT89C52 为电子琴的掌握核心,系统主要包括播放模块、安键掌握模块。下面对各模块的设计逐一进展论证比较。总电路图见附页二。
1 系统总体方案
定时/计数器的设计和状态字定义:
假设要产生音频脉冲,只要算出某一音频的周期〔1/频率〕,再将此周期除以 2,即为半周期的时间。利用定时器计时半周期时间, 反相,然后重复计时再反相。就可在 引脚上得到此频率的脉冲。利用 AT89C51 的内部定时器使其工作计数器模式〔MODE1〕下,转变计数值 TH0 及 TL0 以产生不同频率的方法产生不同音阶,例如,频率为 523Hz,其周期 T=1/523=1912μ s,因此只要令计数器计时 956μ s/1μ s=956,每计数 956 次时将 I/O 反相,就可得到中音 DO〔523Hz〕。计数脉冲值与频率的关系式是:N=fi÷2÷fr,式中,N是计数值;fi 是机器频率〔晶体振荡器为 12MHz 时,其频率为 1MHz〕;fr 是想要产生的频率。其计数初值 T 的求法如下:T=65536-N=65536-fi÷2÷fr
例如:设 K=65536,fi=1MHz,求中音 DO〔261Hz〕。T=65536-N=65536- fi÷2÷fr=65536-1000000÷2÷fr=65536-500000/fr,中音 DO 的 T=65536
-500000/523=64580。
单片机 12MHZ 晶振,中音符与计数 T0 相关的计数值如表所示:
音符
频率〔HZ〕
简谱码〔T 值〕
音符
频率〔HZ〕
简谱码〔T 值〕
低 1 DO
262
63628
# 4 FA#
740
64860
#1 DO#
277
63731
中 5 SO
784
64898
低 2 RE
294
63835
# 5 SO#
831
64934
#2 RE#
311
63928
中 6 LA
880
64968
低 3 M
330
64021
# 6
932
64994
低 4 FA
349
64103
中 7 SI
988
65030
# 4 FA#
370
64185
高 1 DO
1046
65058
低 5 SO
392
64260
# 1 DO#
1109
65085
# 5 SO#
415
64331
高 2 RE
1175
65110
低 6 LA
440
64400
# 2 RE#
1245
65134
# 6
466
64463
高 3 M
1318
65157
低 7 SI
494
64524
高 4 FA
1397
65178
中 1 DO
523
64580
# 4 FA#
1480
65198
# 1 DO#
554
64633
高 5 SO
1568
65217
中 2 RE
587
64684
# 5 SO#
1661
65235
# 2 RE#
622
64732
高 6 LA
1760
65252
中 3 M
659
64777
# 6
1865
65268
中 4 FA
698
64820
高 7 SI
1967
65283
承受查表程序进展查表时,可以为这个音符建立一个表格,有助于单片机通过查表的方式来获得相应的数据:低音 0-19 之间,中音在 20-39 之间,高音在 40
-59 之间
用单片机播放音乐,或者弹奏电子琴,实际上是依据特定的频率,输出一连串的方波。为了输出适宜的方波,首先应当知道音符与频率的关系。
2. 1. 2音调数据表
单片机发出不同频率的方波,人听起来,就是不同的音调。
上表中的频率数值,有些过多,去掉不常用的黑键频率,只是把白键对应的数据存放在单片机中,即可满足绝大局部的应用需求。
定义音调数据表的程序如下:
河南理工大学本科课程设计报告
- 7 -
DW 63628,63835,64021,64103,64260,64400,64524 ;64580,低音区:1 2 3 4 5 6 7 DW 64580,64671,64777,64820,64898,64968,65030 65058中音区:1 2 3 4 5 6 7 DW 65058,65110,65157,65178,65217,65252,65283 65312高音区:1 2 3 4 5 6 7
把这个数据表,放在程序中,需要播音的时候,就从表中取出一个数据送到定时器,当定时器溢出中断的时候,再对输出引脚取反,那么,在扬声器中,即可听到上表中频率的声音。
音乐的音拍,一个节拍为单位〔C 调〕
曲调值
DELAY
曲调值
DELAY
调 4/4
125ms
调 4/4
62ms
调 3/4
187ms
调 3/4
94ms
调 2/4
250ms
调 2/4
125ms
2. 2 总体硬件组成框图
播放模块喇叭
中心掌握模块
AT89C52
按键掌握模块
按键状态
图 2-1 总体硬件组成框图
试验中每按下一个琴键,单片机能够检测到键盘的按键,并依据按键的位置, 通过程序来掌握,使喇叭发出不同频率〔音调〕的声音,声音延迟一段时间,等到按键放开之后,声音停顿。然后再连续扫描,看是否有键按下。如此循环,即可实现根本的琴键功能。
2. 2. 1 子系统模块一
河南理工大学本科课程设计报告
- 7 -
- 10 -
河南理工大学本科课程设计报告
LED 显示模块如图 2-2 所示,利用 AT89S51 单片机的 P0 端口的 -
连接到一个七段数码管的 a-h 的笔段上,数码管的公共端接电源。矩阵扫描显示当前按键模块如下:
播放模块是喇叭构成。它几乎不存在噪声,音响效果较好,而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。
2. 2. 2 子系统模块二
2. 2. 3 子系统模块三
电子琴设有 7 个按键,分别代表 7 个音符,包括中音段的全部音符。通过软硬件设计,按键触发外部中断,中断使程序跳转,实现模式转换,启动电子琴。然后通过查询电子琴所按下的按键,读取电子琴输入状态,跳转到对应的程序人口,实现各种琴键的声音。
矩阵键盘模块图如下:
- 9 -
河南理工大学本科课程设计报告
2. 2 .4 AT89C52复位模块
2. 5 AT89C52晶振模块