文档详情

单片机电子琴单片机课程设计.doc

发布:2018-02-01约6.94千字共21页下载文档
文本预览下载声明
郑州科技学院 单片机课程设计 题 目:基于51单片的声光电子琴设计 学生姓名: 苏梦强 专业班级: 电子科学与技术 学 号: 201131074 院 系: 电气工程学院 指导教师: 饶美丽 完成时间: 2015年1月9日 目录 一、设计任务与要求 1 1.1 设计任务 1 1.2 设计要求 1 1.3 设计意义 1 二、方案总体设计 2 2.1 方案对比 2 2.2总体设计 4 2.3 总体方案工作原理 4 三、软件设计 6 3.1 系统流程 6 3.2延时源代码 6 3.3 发音源代码 7 3.3单个按键源代码 7 3.4所有程序代码 8 四、系统仿真与调试 11 4.1 仿真软件简介 11 4.2软件调试 11 4.3 使用说明 13 五、设计总结 14 附录1:总体电路原理图 17 附录2:元器件清单 18 一、设计任务与要求 1.1 设计任务 实现电子琴发声控制系统;要求电路实现如下功能: 利用蜂鸣器作为发声部件,两个数码管作为显示部件,设置10个按键,实现高音、中音、低音的1、2、3、4、5、6、7的发音。并在存储一首歌曲的内容,可以实现自动播放。 说明:单片机的工作时钟频率为11.0592MHz。 1.2 设计要求 设计一个带有复位电路,晶振时钟,能显示音调字符的8键电子琴。 1.3 设计意义 该设计具有以下优点: 可以方便得知播放的音符和音调; 比传统电子琴功能更完善; 制作简单,成本低 方案总体设计 本次课程设计的课题是基于51单片机的电子琴的设计,所要达到的要求如下: 1)利用蜂鸣器作为发声部件。 2)一个数码管作为显示部件。 3)设置8个按键,实现高音、中音、低音的1、2、3、4、5、6、7、8的发音。 本次设计主要是要通过软硬件的配合实现电子琴的上述功能,操作人员可以通过按下键盘上任意一个键来发出相应的音符。 2.1 方案对比 AT89C51具有高速度、低电压、低功耗、且可靠性和成本都比较低的特点。因此本次课程设计采用AT89C51单片机作为整个电路核心控制器件。对于本控制系统使用一片AT89C51系列的单片机,不需要外扩展存储器,就能实现显示、预制状态、动态调节的功能,因而整体结构简单。 设计电路时运用89C51系列单片机的接口来实现各种输入、输出功能。P2.7待定部分口用作输出口,向发声电路输出信号;P1口和P0口共同实现一个键盘的功能。 方案一:采用单个的逻辑器件组合 我们知道计数器8253可以产生任意频率的方波频率信号,因此,我们只要把一首歌曲的音阶对应频率与计数器的频率对应起来就可通过计数器产生音乐了。根据本实验要求,采用8279将键扫描得到的键值通过查表得到相应的8253的频率值,将从8253得到相对应的按键弹奏信号经过LM386进行放大,再用喇叭输出,就实现了简易电子琴的基本功能,也就完成了实验的要求 方案二:用VHDL语言编程来实现 利用我们实验室先进的数字电路实验设备,我们可以采用VHDL语言编程来实现。我们可以通过VDHL语言,对实验原理图的各个部分进行设计,通过编译,可以在计算机上下载此实验原理图,利用电路学习机上的芯片。我们很快就可以设计出一个简单的电子琴。并实现其功能。 方案三:采用AT89C51单片机 采用AT89C51单片机作为主控芯片,设置键盘、蜂鸣器等外围器件,另外还用到一些简单器件如:一位数码管,和PNP型三极管等。利用按键实现音符和音调的输入;一位的数码管进行被操作的按键显示:用PNP型三极管实现低音频功率放大;最后用蜂鸣器发音。 方案比较: 方案一采用单个的逻辑器件组合实现。这样虽然比较直观,逻辑器件分工鲜明,思路也比清晰,一目了然,但是由于元器件种类、个数繁多,而过于复杂的硬件电路也容易引起系统的精度不高、体积过大等不利因素。例如七个不同的音符是由七个不同的频率来控制发出的,所用仪器之多显而易见。方案二采用VHDL语言编程来实现电子琴的各项功能。系统主要由电子琴发声模块、选择控制模块和储存器模块组成。和方案一相比较,方案二就显得比较笼统,虽然我们可以看到用超高速硬件描述语言VHDL的优势,但本质上它只是把整个系统分为了若干个模块,而不牵涉到具体的硬件电路。方案三与前两种方案相比,主控芯片采用AT89C51单片机,它是大规模集成电路技术发展的产物,具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。同时具有强大的控制功能和灵活的编程实现特性,由于本设计主要用于人们娱乐方面,因此在设计上尽量使其安全以及简单易操作。而第三种方
显示全部
相似文档