电子琴1.docx
《电子琴1.docx》由会员分享,可在线阅读,更多相关《电子琴1.docx(13页珍藏版)》请在冰豆网上搜索。
电子琴1
智能控制设计大赛
电
子
琴
所在单位:
华南理工大学
自动化学院083班
作者:
刘晨自动化08
周闯自动化08
目录
摘要……………………………………………………………………………4
一、设计原理…………………………………………………6
1.1音乐知识…………………………………………………………6
1.2播放原理……………………………………………………………6
1.3电路原理……………………………………………………………6
二、具体设计及实现………………………………………8
2.1系统总框图…………………………………………………………8
2.2硬件设计……………………………………………………………9
2.2.1主芯片AT89S52……………………………………9
2.2.2矩阵键盘………………………………………………10
2.3软件设计……………………………………………………………14
2.3.1主程序流程…………………………………………………14
2.3.2键盘程序流程………………………………………………15
三、测试、结果及分析…………………………………………………17
3.1基本功能……………………………………………………………17
3.2发挥功能部分………………………………………………………17
3.3其他发挥部分………………………………………………………18
参考文献………………………………………………………………………18
附录一、完整的系统原理图……………………………………………………19
附录二、完整的系统源代码……………………………………………………20
电子琴论文
设计任务与要求
电子琴
一、设计任务
设计制作一个电子琴。
二、设计要求
1.基本要求:
1)可以通过按键控制发音,能够发出1、2、3、4、5、6、7、i等八个音符;
2)可以播放已存储的音乐;
3)能够自动演奏多首(两首以上)乐曲,且演奏方式可选择(如重复播放或者顺序播放等)。
2.扩展要求:
1)可以发出八个以上的音符;
2)进行音调、音量的选择;
3)可以对编奏乐曲进行录音,在按下放音键时能演奏出来;
4)其他。
引言
单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。
它的应用必定导致传统的控制技术从根本上发生变革。
因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。
电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是用AT89S52单片机为核心控制元件,设计一个电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。
本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。
利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。
并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述。
一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
摘 要
电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是用AT89S51单片机为核心控制元件,设计一个电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。
本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。
关键词:
单片机键盘扬声器电子琴
一、设计原理
1.1、音乐知识
2.音乐产生的方法;
3.一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
现在以单片机12MHZ晶振为例,例出高中低音符与单片机计数T0相关的计数值如下表所示
4.音符频率(HZ)简谱码(T值)音符频率(HZ)简谱码(T值)
5.低1DO26263628#4FA#74064860
6.#1DO#27763731中5SO78464898
7.低2RE29463835#5SO#83164934
8.#2RE#31163928中6LA88064968
9.低3M33064021#693264994
10.低4FA34964103中7SI98865030
11.#4FA#37064185高1DO104665058
12.低5SO39264260#1DO#110965085
13.#5SO#41564331高2RE117565110
14.低6LA44064400#2RE#124565134
15.#646664463高3M131865157
16.低7SI49464524高4FA139765178
17.中1DO52364580#4FA#148065198
18.#1DO#55464633高5SO156865217
19.中2RE58764684#5SO#166165235
20.#2RE#62264732高6LA176065252
21.中3M65964777#6186565268
22.中4FA69864820高7SI196765283
22.1、播放原理
一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。
利用定时器计时半周期时间,每当计时终止后就将P2.4反相,然后重复计时再反相。
就可在P2.4引脚上得到此频率的脉冲。
1.3、电路原理
二、具体方案
2.1、硬件设计
2.1.1、芯片AT89S52
AT89S52单片机是一种低功耗高性能的CMOS8位微控制器,内置8KB可在线编程闪存。
该器件采用Atmel公司的高密度非易失性存储技术生产,其指令与工业标准的80C51指令集兼容。
片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。
通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,AT89S52便成为一个高效的微型计算机。
它的应用范围广,可用于解决复杂的控制问题,且成本较低。
AT89S52的主要特性如下:
兼容MCS51产品
8K字节可擦写1000次的在线可编程ISP闪存
4.0V到5.5V的工作电源范围
全静态工作:
0Hz~24MHz
3级程序存储器加密
256字节内部RAM
32条可编程I/O线
3个16位定时器/计数器
8个中断源
UART串行通道
低功耗空闲方式和掉电方式
通过中断终止掉电方式
看门狗定时器
双数据指针
灵活的在线编程(字节和页模式)
AT89S52引脚功能与封装
1.多功能I/O口
AT89S52共有四个8位的并行I/O口:
P0、P1、P2、P3端口,对应的引脚分别是P0.0~P0.7,P1.0~P1.7,P2.0~P2.7,P3.0~P3.7,共32根I/O线。
每根线可以单独用作输入或输出。
2.RST复位输入端。
在振荡器运行时,在此脚上出现两个机器周期的高电平将使其单片机复位。
看门狗定时器(Watchdog)溢出后,该引脚会保持98个振荡周期的高电平。
在SFRAUXR(地址8EH)寄存器中的DISRTO位可以用于屏蔽这种功能。
DISRTO位的默认状态,是复位高电平输出功能使能。
3.ALE/PROG地址锁存允许信号。
在存取外部存储器时,这个输出信号用于锁存低字节地址。
在对Flash存储器编程时,这条引脚用于输入编程脉冲PROG。
一般情况下,ALE是振荡器频率的6分频信号,可用于外部定时或时钟。
但是,在对外部数据存储器每次存取中,会跳过一个ALE脉冲。
在需要时,可以把地址8EH中的SFR寄存器的0位置为“1”,从而屏蔽ALE的工作;而只有在MOVX或MOVC指令执行时ALE才被激活。
在单片机处于外部执行方式时,对ALE屏蔽位置“1”并不起作用。
4.PSEN程序存储器允许信号。
它用于读外部程序存储器。
当AT89S52在执行来自外部存储器的指令时,每一个机器周期PSEN被激活2次。
在对外部数据存储器的每次存取中,PSEN的2次激活会被跳过。
5.EA/Vpp外部存取允许信号。
为了确保单片机从地址为0000H~FFFFH的外部程序存储器中读取代码,故要把EA接到GND端,即地端。
但是,如果锁定位1被编程,则EA在复位时被锁存。
当执行内部程序时,EA应接到Vcc。
在对Flash存储器编程时,这条引脚接收12V编程电压Vpp。
6.XTAL1振荡器的反相放大器输入,内部时钟工作电路的输入。
7.XTAL2振荡器的反相放大器输出。
AT89S52封装结构图
W.
2.1.24*4矩阵键盘
在作品采用了4*4键盘,只占用8个IO口(P1口)就实现了16个按键,操作过程更加简单、方便。
2.2软件设计
2.2.1主程序流程
音乐播放部分:
音乐弹奏部分
2.2.2键盘程序流程图
本系统中键盘程序分为键盘扫描子程序和按键功能执行子程序。
键盘扫描子程序流程图如下图2-42所示,按键功能子程序流程图如下图2-3-3所示:
图2-4-2按键盘扫描子程序流程图
三测试、结果及分析
3.1基本功能
1)可以通过按键控制发音,能够发出1、2、3、4、5、6、7、i等八个音符;
2)可以播放已存储的音乐;
3)能够自动演奏多首(两首以上)乐曲,且演奏方式可选择(如重复播放或者顺序播放等)。
以上三个要求全部实现
3.2发挥功能部分
1)可以调节音量大小
2)可以发出低音和中音