1、基于 51单片机的电子琴设计电 创 “十 年 杯 ”电 子 设 计竞 赛 论 文触 摸 你 心 爱 的 旋 律-电 子 琴 设 计基于 51 单片机的电子琴设计- 2 -目 录摘要-3引言-4一概述-5系统开发意义-5设计目标-5系统组成及总框图-6二、硬件设计-7系统的硬件电路设计 .72.1AT89C51 .72.2 单片机的时钟振荡电路 .72.3.复位状态 .82.3.复位电路 .82.4 单片机最小系统 .92.5 键盘输入部分 .92.6 音频功放电路 .10TDA2030A 放大电路-112.8 扬声器 .11三、软件设计 .123.1 如何用单片机实现音乐的节-13音乐相关知识
2、-133.1.1 定时/ 计数器的设计和状态字定义: .143.2 音调数据表 .163.3 软件流程 .错误!未定义书签。3.3.1 系统流程图 .错误!未定义书签。3.4 软件程序 .17四、电路的仿真 .184.1 仿真运行直接播放音乐 .184.2 电子琴功能 .错误!未定义书签。4.3 电子琴音阶功能 .错误!未定义书签。五、系统调试 .195.1 硬件调试 .195.2 软件调试 .19六、课程设计体 会 .20参考文献 .21基于 51 单片机的电子琴设计- 3 -附录 A(单片机简介,C 程序) .22附录 B(C 程序) .23附录 C(元件清单) .31附录 D(实物图)
3、.32附录 E(电源电路)-33基于 51单片机的电子琴设计摘要电子琴的设计以 AT89S52单片机作为系统的核心控制部分,通过制作硬件电路和软件的设计编写,然后进行软硬件的调试运行,最终达到设计电路的乐器演奏。设计中应用中断系统和定时/计数原理控制演奏器发声,对音乐发生所必须确定的音符和节拍分别用程序语言实现。可以用它来弹奏。特点是设计思路简单、清晰,成本低。关键词:AT89S52,电子琴,单片机,音乐发生器基于 51 单片机的电子琴设计4引言单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传
4、统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用 AT89S52单片机为核心控制元件,设计一个电子琴和音乐发生器双功能。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有 25个按键和扬声器。本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随
5、意弹奏想要表达的音乐。并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述。一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器 T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。基于 51 单片机的电子琴设计5一 概述1.1 系统开发意义该设计具有以下优点:可以随意弹奏想要表达的音乐。比传统电子琴功能更完善。制作简单,成本低。1.2 设计目标由于本设计主要用于人们娱乐方面,因此在设计上尽量使其安全以
6、及简单易操作。其次,在这次设计可行性上进行分析如下:1、经济可行性:所谓经济可行性,即在这次设计上需要投入资金的多少,由于毕业设计是没有项目资金,没有开发经费,因此在经济上必须能够承受,比较理想化的项目对于我们毕业设计来说是不可行的。通过分析后,无论是在器件价格或是常见度上均是可行的。2、技术可行性:技术可行性主要是分析技术条件上是否能够顺利开展并完成开发工作,硬件、软件能否满足设计者的需要等。通过分析各种软件环境,硬件仿真环境等均已经具备。综上所述,本系统设计目标已经明确,在经济与技术上均可行,因此本系统的开发是完全可行的。基于 51 单片机的电子琴设计61.3系统组成及总框图硬件设计的任务
7、是根据总体设计要求,在选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的原理框图、电路原理图。该设计要实现一种由单片机控制的电子琴,单片机工作于 12MHZ 时钟频率,使用其定时/计数器 T0,工作模式为 1,改变计数值 TH0 和 TL0 可以产生不同频率的脉冲信号。该设计具有 25 个音节的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。由于本例实现的音乐发生器是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。用单片机产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动能力,这就需要音频功率放
8、大电路。图 4.总体设计框图音频功放电路扬声器按键输入晶振复位电路功能选择(弹奏/播放)单片机AT89S52基于 51 单片机的电子琴设计7二、硬件设计系统的硬件电路设计2.1 AT89C51AT89S52是一种低功耗、高性能 CMOS8位微控制器,具有 8K 在系统可编程 Flash 存储器。使用 Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上 Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统 可编程Flash,使得 AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案
9、。 AT89S52具有以下标准功能: 8k字节 Flash,256 字节 RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个 16 位 定时器/计数器,一个6向量 2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻 辑操作,支持 2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52。主要性能:与 MCS-51单片机产品兼容
10、、8K 字节在系统可编程 Flash存储器、1000 次擦写周期、全静态操作:0Hz33Hz 、 三级加密程序存储器 、32个可编程 I/O口线 、三个 16位定时器/计数器八个中断源、全双工 UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。2.2时钟振荡电路AT89C52中有一个用于构成内部振荡器的高增益反相放大器,引脚 XTAL1和 XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或者陶瓷谐振器一起构成自然振荡器。外接石英晶体及电容 C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容 C1,C2 虽然
11、没有什么严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳基于 51 单片机的电子琴设计8定性、起振的难易程序及温度稳定性。如果使用石英晶体,我们推荐电容使用30PF 10PF。在此设计中选取:12MHZ 时钟频率。图 5.单片机振荡电路2.3单片机的复位及复位电路2.3.1复位状态计算机在启动运行时都需要复位,复位使中央处理器 CPU和系统中的其他器件都处于一种初始状态,并从这个初始状态工作。MCS-51 系列单片机有一个复位引脚 RST。在 MCS-51系列单片机的 RST引脚上输入一个高电平信号,该高电平信号至少要维持两个机器周期以上的时间,单片机被复位。2.3.2复位
12、电路与其他计算机一样,MCS-51 单片机系统的复位方法有上电自动复位、手动复位以及“看门狗”复位等。此最小系统采用手动复位电路。在系统运行过程中,有时可能对系统需要进行复位,为避免对硬件经常加电和断电造成的损害,我们可以采用手动复位。这种方法是将一个开关串联一只电阻后,再并联于电容 C的两端,在系统运行过程中需要复位时只要使开关闭合,在 RST引脚上就会出现一定时间的高电平信号,从而使单片机实现复位。基于 51 单片机的电子琴设计9图 6.复位电路2.4 单片机最小系统由时钟振荡电路加复位电路构成单片机 AT89S52的最小系统:图 7. 单片机最小系统2.5 键盘输入部分本系统中用到 25个按键,用 P0,P1,P2,P3I/O 口接独立键盘即可满足需要,软件消除抖动处理,并能准确判断所需执行的相应程序。电子琴设 25个按键,分别代表一些音符,包括中音段的全部音符。其电路图如下: