简易电子琴的设计与仿真.
- 格式:docx
- 大小:207.84 KB
- 文档页数:7
目录1 Pspice的简介 (1)1.1 PSPICE的起源与发展 (1)1.2 PSPICE的组成 (1)1.3 PSPICE的模拟功能 (2)2 设计原理及电路选取 (4)2.1 基本乐理知识 (4)2.2 设计原理 (4)3 设计方案 (7)3.1设计电路图 (7)3.2参数推导 (8)3.3仿真参数和仿真电路图 (8)4.仿真曲线 (10)5.仿真结果分析 (13)6.硬件焊接与调试 (14)6.1元器件的选择 (14)6.2焊接过程与调试 (15)7.课程设计心得 (16)8.参考文献 (18)本科生课程设计成绩评定表 (19)1 Pspice的简介1.1 PSPICE的起源与发展用于模拟电路仿真的SPICE软件于1972年由美国加州大学伯克利分校的计算机辅助设计小组利用FORTR AN语言开发而成,主要用于大规模集成电路的计算机辅助设计。
SPICE 的正式版SPICE 2G在1975年正式推出,但是该程序的运行环境至少为小型机。
1985年,加州大学伯克利分校用C语言对SPICE软件进行了改写,并由MICROSIM公司推出。
1988年SPICE被定为美国国家工业标准。
与此同时,各种以SPICE为核心的商用模拟电路仿真软件,在SPICE的基础上做了大量实用化工作,从而使SPICE成为最为流行的电子电路仿真软件。
PSPICE是较早出现的EDA软件之一,在电路仿真方它的功能可以说是最为强大,在国内被普遍使用。
1.2 PSPICE的组成1.2.1 电路原理图编辑程序SchematicsPSPICE的输入有两种形式,一种是网单文件形式,一种是电路原理图形式,相对而言后者比前者较简单直观,它既可以生成新的电路原理图文件,又可以打开已有的原理图文件。
电路元器件符号库中备有各种原器件符号,除了电阻,电容,电感,晶体管,电源等基本器件及符号外,还有运算放大器,比较器等宏观模型级符号,组成电路图,原理图文件后缀为.sch。
简易电子琴的设计摘要随着基于CPLD的EDA技术的发展和应用领域的扩大与深入,EDA技术在电子信息、通信、自动控制用计算机等领域的重要性日益突出。
作为一个学电子信息专业的学生,我们必须不断地了解更多的新产品信息,这就更加要求我们对EDA有个全面的认识。
本程序设计的是简易电子琴的设计。
采用EDA作为开发工具,VHDL语言为硬件描述语言,MAX + PLUS II作为程序运行平台,所开发的程序通过调试运行、波形仿真验证,初步实现了设计目标。
本程序使用的硬件描述语言VHDL,可以大大降低了硬件数字系统设计的入门级别,让人感觉就是C语言的近亲。
通过老师的指导和自己的学习完成了预想的功能。
1 引言1.1 课程设计的目的巩固和运用所学课程,理论联系实际,提高分析、解决计算机技术实际问题的独立工作能力,通过对一个简易的八音符电子琴的设计,进一步加深对计算机原理以及数字电路应用技术方面的了解与认识,进一步熟悉数字电路系统设计、制作与调试的方法和步骤。
巩固所学课堂知识,理论联系实际,提高分析、解决计算机技术实际问题的独立工作能力。
为了进一步了解计算机组成原理与系统结构,深入学习EDA技术,用VHDL语言去控制将会使我们对本专业知识可以更好地掌握。
1.2 课程设计的内容(1)设计一个简易的八音符电子琴,它可通过按键输入来控制音响。
(2)演奏时可以选择是手动演奏(由键盘输入)还是自动演奏已存入的乐曲。
(3)能够自动演奏多首乐曲,且每首乐曲可重复演奏。
2 开发工具简介2.1 EDA技术EDA是电子设计自动化(Electronic Design Automation)缩写,是90年代初从CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。
EDA技术是以计算机为工具,根据硬件描述语言HDL(Hardware Description language)完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。
电子琴的仿真设计课程设计一、课程目标知识目标:1. 学生能理解电子琴的基本原理,掌握仿真设计的基本概念。
2. 学生能描述电子琴音色、节奏及演奏效果的产生过程。
3. 学生了解电子琴仿真设计中所涉及的电子元件和电路。
技能目标:1. 学生能运用所学的电子琴仿真设计知识,独立设计简单的电子琴音色。
2. 学生能通过实践操作,熟练使用仿真软件进行电子琴设计。
3. 学生具备分析电子琴仿真设计问题,并提出解决方案的能力。
情感态度价值观目标:1. 学生对电子琴仿真设计产生兴趣,培养对音乐和电子技术的热爱。
2. 学生在团队协作中学会相互尊重、沟通与协作,培养集体荣誉感。
3. 学生通过课程学习,认识到科技发展对音乐领域的影响,增强创新意识。
课程性质:本课程为实践性较强的电子技术课程,旨在让学生通过动手实践,掌握电子琴仿真设计的基本技能。
学生特点:学生处于高中阶段,具有一定的电子技术基础,好奇心强,喜欢动手实践。
教学要求:注重理论与实践相结合,关注学生的个体差异,引导他们主动探索、积极实践,提高电子琴仿真设计能力。
在教学过程中,关注学生的情感态度价值观培养,帮助他们形成良好的学习习惯和团队合作精神。
通过具体的学习成果分解,为后续教学设计和评估提供依据。
二、教学内容1. 电子琴基本原理:电子琴的工作原理、音色生成、节奏控制及演奏效果。
- 教材章节:第1章 电子琴概述2. 电子琴仿真设计基础:仿真设计概念、仿真软件使用、基本电子元件及电路。
- 教材章节:第2章 电子琴仿真设计基础3. 电子琴音色设计:音色合成原理、音色参数调整、音色库应用。
- 教材章节:第3章 电子琴音色设计4. 电子琴演奏功能设计:演奏控制、节奏编程、音效处理。
- 教材章节:第4章 电子琴演奏功能设计5. 实践操作:使用仿真软件进行电子琴设计,包括音色设计、演奏功能设计等。
- 教材章节:第5章 实践操作教学内容安排和进度:第1周:电子琴基本原理学习第2周:电子琴仿真设计基础学习第3-4周:音色设计理论与实践第5-6周:演奏功能设计理论与实践第7-8周:实践操作,完成电子琴仿真设计作品教学内容注重科学性和系统性,结合教材章节安排,循序渐进地引导学生学习电子琴仿真设计知识。
proteus 7的使用及调试定时器、中断、键盘接口数字电路、模拟电路的相关知识2、实现及编程2.1程序框图)2.2电路原理图囉*祖1IU ■□■1l ・ 2.3程序内容 7个音调的产生方法 按k2让音调逆向输出 如何按k8+k2放出音乐和如何让音乐停止2.4汇编源程序BUZZ EQU P2BUZZ1 EQU P1.7ORG OOOOHLJMP MAINORG 000BHLJMP INT_T0 ORG 001BH LJMP TIME1 ORG 8000H MAIN: MOV SP,#90H MOV BUZZ,#0FFH MOV TMOD,#11H SETB ET0 SETB ET1 SETB EA CLR TR0 START:MOV R0, BUZZ CJNE R0,#0FFH,KEY1 CLR TR0 SJMP START KEY1:CJNE R0,#0FEH,KEY2 MOV 30H,#0FBH MOV 31H,#0E9H LJMP SET_TIMERKEY2:CJNE R0,#0FDH,KEY3 MOV 30H,#0FCH MOV 31H,#5CH LJMP SET_TIMERKEY3:CJNE R0,#0FBH,KEY4MOV 30H,#0FCH MOV 31H,#0C1H LJMP SET_TIMER KEY4:CJNE R0,#0F7H,KEY5 MOV 30H,#0FCH MOV 31H,#0EFH LJMP SET_TIMERKEY5:CJNE R0,#0EFH,KEY6 MOV 30H,#0FDH MOV 31H,#045H LJMP SET_TIMERKEY6: ■CkUJUfiia ▼"■VZ AfiJkAAl ■E * F Wi-54 ■U A JM"bn iunTb —-P XF<T ™n *T*LlK8键按后是否音调是逆原来是忘了继续检测 4、课程设计总结4.1在此设计基础上还可以增加的功能及设计思路即每按下一个琴键,单片机能够检测到键盘的按键,并根据按键的位置通过程序 来控制,END3、调试及测试3. 1调试(按实际做的步奏) 如按下k5后显示如下图:k1— k7音调输出按一下k8。
简易电子琴的设计[优秀范文五篇]第一篇:简易电子琴的设计毕-1毕业设计任务书专业:班级:学生签名:一、设计题目简易电子琴的设计二、设计内容要求和技术参数(1)要求能够发出1、2、3、4、5、6、7等七个音符。
(2)使用元件:AT89C51、LM324,喇叭,按键等三、设计应完成的技术资料(1)写出设计过程(包括原理、方案)(2)系统硬件图并描述各部分的功能(3)对软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高(4)写出此次设计的心得体会四、设计考核的主要知识与技能本课题是电子技术与单片机混合的综合性课题,主要考核《电子技术》与《单片机》的基本知识和应用能力。
五、设计时间:六、指导教师签名:第二篇:简易电子琴电路的设计电子综合实训任务书学生姓名:专业班级:指导老师:易迎彦工作单位:武汉理工大学理学院题目:简易电子琴电路的设计初始条件:直流可调稳压电源一台、万用表一块、面包板一块、元器件若干、剪刀、镊子等必备工具要求完成的主要任务:(包括电子综合实训工作量及其技术要求以及说明书撰写等具体要求)1、技术要求:设计一个玩具电子琴,设8个琴键,分别代表1、2、3、4、5、6、7、į八个不同音符,每按下一个琴键,扬声器发出一个音符的声音。
演奏时的音量和节拍可以调节2、主要任务:(一)设计方案(1)按照技术要求,提出自己的设计方案(多种)并进行比较;(2)以CC7555时基集成电路为主,设计一个玩具电子琴电路(实现方案);(3)依据设计方案,进行预答辩;(二)实现方案(4)根据设计的实现方案,画出电路逻辑图和装配图;(5)查阅资料,确定所需各元器件型号和参数;(6)在面包板上组装电路;(7)自拟调整测试方法,并调试电路使其达到设计指标要求;(8)撰写设计说明书,进行答辩。
3、撰写电子综合实训说明书:封面:题目,学院,专业,班级,姓名,学号,指导教师,日期任务书目录(自动生成)正文:1、技术指标;2、设计方案及其比较;3、实现方案;4、调试过程及结论;5、心得体会;6、参考文献成绩评定表时间安排:电子综合实训时间:19周-20周19周:明确任务,查阅资料,提出不同的设计方案(包括实现方案)并答辩; 20周:按照实现方案进行电路布线并调试通过;撰写电子综合实训说明书。
简易电子琴的VHDL仿真与实现电子琴是一种应用广泛的乐器,而现在,电子琴的制造已经从纯硬件逐渐过渡到硬件加软件的方式。
VHDL是一种硬件描述语言,它可以方便地描述各种硬件逻辑功能,而且还可以帮助设计者实现FPGA的目标硬件。
本文主要介绍简易电子琴的VHDL仿真与实现。
一、设计思路简易电子琴的设计基本上就是将钢琴的琴键和生产声音的部件(如电子光电元件或电子开关等)结合在一起。
琴键的设计分为两个部分:按下和弹起。
按下部分是由一个简单的开关连接到FPGA引脚的输入端。
当琴键被按下时,开关闭合,产生一个低电平信号,这个信号作为FPGA的输入。
弹起部分用一个气压传感器检测琴键是否已经弹起。
生产声音的部件由一个数字-模拟转换器(Digital-to-Analog Converter,简称DAC)处理FPGA通过一个计数器输出的数字信号,将它转换成模拟信号。
这样,设计思路就非常清晰明了。
二、VHDL仿真的步骤1. 创建虚拟设计:在仿真之前,我们需要创建一个虚拟的设计,包括引脚、组件、实体、测试模块,以及其他必需的部件。
这些将精确地模拟真实世界中的电路元素。
2. 创建设计模块:VHDL仿真涉及到多个模块。
在这种情况下,我们有两个模块:数字模块和组件模块。
我们将数字模块设计为接收一个8位的计数器并输出模拟信号。
组件模块包括DAC芯片和琴键开关,这些组件分别接收输入信号,经过逻辑处理后,通过计数器和气压传感器输出压缩后的模拟信号。
3. 配置实体接口:为了确保VHDL仿真的准确性,我们必须配置模块实体接口,这里有两个实体:数值模块和组件模块。
它们需要定义数据量和接收输入端口。
4. 定义测试激励波形:这些波形定义从测试模块输入到仿真环境中的数字信号序列。
因此,我们需要定义输入数据以及时钟信号。
5. 编写测试模块:测试模块是用来检测VHDL仿真环境的激励波形。
它包括测试模块、实体、配置、激励波形和仿真模块。
三、VHDL实现的步骤1. 设计和构建硬件:在这一阶段,我们将实现FPGA硬件。
. -目录一.模电课设概述11.1 设计背景11.2 设计目的及意义1二.Proteus软件简介2三.简易电子琴基本原理33.1 音乐产生原理33.2 设计原理33.3 方案设计8四.Proteus原理图绘制124.1选取元件124.2放置元件及排版134.3模拟及仿真14五.Proteus电路仿真16六仿真结果分析206.1 频率及放大倍数测量206.2 理论比较206.3 误差分析21七心得体会21八. 参考文献22九.元器件清单23十.本科生课程设计成绩评定表26一.模电课设概述1.1 设计背景电子琴是一种键盘乐器,采用半导体集成电路,对乐音信号进行放大,通过扬声器产生音响。
现在的电子琴一般使用PCM或AWM采样音源所谓采样就是录制乐器的声音,将其数字化后存入ROM里,然后按下键时CPU回放该音。
甚至有一些高级编曲键盘可以使用外置采样(比如Tyros 3的硬盘音色)。
现代电子琴并非“模仿”乐器音色。
它使用的就是真实乐器音色。
当然,现在力度触感在电子琴里是必备的。
而且现代电子琴还加上了老式电子琴的滤波器,振荡器,包络线控制来制造和编辑音色。
甚至也带上了老式电子琴的FM 合成机构。
本次课程设计主要是通过对电子琴主体部分的电路进行模仿设计,按下不同琴键改变RC值,发出C调的八个基本音阶,采用运算放大器构成振荡电路,用集成功放电路输出音调,从而达到电子琴固有的基本功能。
1.2 设计目的及意义(1)培养学生正确的设计思想,理论联系实际的工作作风,严肃认真、实事求是的科学态度和勇于探索的创新精神。
(2)锻炼学生自学软件的能力及分析问题、解决问题的能力。
(3)通过课程设计,使学生在理论计算、结构设计、工程绘图、查阅设计资料、标准与规X(4)巩固、深化和扩展学生的理论知识与初步的专业技能。
(6)为今后从事电子技术领域的工程设计打好基础基本要求。
二.Proteus软件简介Proteus软件是由英国LabCenter Electronics公司开发的EDA工具软件,由ISIS和ARES两个软件构成,其中ISIS是一款便捷的电子系统仿真平台软件,ARES是一款高级的布线编辑器,它集成了高级原理布线图、混合模式SPICE电路仿真、PCB设计以及自动布线来实现一个完整的电子设计。
课程设计任务书学生姓名:专业班级:指导教师:工作单位:信息工程学院题目: 简易电子琴电路的设计仿真与实现初始条件:可选元件:集成运算放大器LM324、电阻、电位器、电容若干,直流电源,或自备元器件。
可用仪器:示波器,万用表,直流稳压源,函数发生器要求完成的主要任务:(1)设计任务根据要求,完成对简易电子琴电路的仿真设计、装配与调试,鼓励自制稳压电源。
(2)设计要求①设计一简易电子琴电路,按下不同琴键即改变RC 值,能发出 C 调的八个基本音阶,采用运算放大器构成振荡电路,用集成功放电路输出。
已知八个基本音阶在 C 调时所对应的频率如下表所列C 调 1 2 3 4 5 6 7 if 0 /H Z 264 297 330 352 396 440 495 528②选择电路方案,完成对确定方案电路的设计。
③利用Proteus 或Multisim 仿真设计电路原理图,确定电路元件参数、掌握电路工作原理并仿真实现系统功能。
④安装调试并按规范要求格式完成课程设计报告书。
⑤选做:利用仿真软件的PCB设计功能进行PCB设计。
时间安排:1、前半周,完成仿真设计调试;并制作实物。
2、后半周,硬件调试,撰写、提交课程设计报告,进行验收和答辩。
指导教师签名:年月日系主任(或责任教师)签名:年月日目录1. 模电课设概述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(1 )1.1设计背景⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(1)1.2设计目的及意义⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(1)1.3 开发环境proteus简介⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(1)2.电路原理⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(3) 2.1 RC桥式振荡电路及频率选择⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(3)2.2 振荡条件⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(4)3.总体方案设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(5)3.1实验电路设计思路⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(5)3.2设计电路图⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(6)3.3实验参数选择⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(6)4. 仿真曲线及结果分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(7)4.1 仿真操作过程及曲线⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(7)4.2 仿真结果分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(14)5.实物制作及仿真、实物的差异⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(15)5.1实物制作过程和调试过程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(15)5.2 仿真、实物的差异⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(16)6. 心得体会⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(17)7. 元件清单⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(18)8. 参考文献⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯(19)1 模电课设概述1.1 设计背景电子琴是一种键盘乐器,采用半导体集成电路,对乐音信号进行放大,通过扬声器产生音响。
简易电子琴的VHDL仿真与实现随着科技的发展,电子琴已成为一种十分普及的音乐乐器。
除了可以通过购买市面上的电子琴来使用外,我们还可以自己动手制作一台简易的电子琴。
本文将介绍使用VHDL仿真与实现一台简易电子琴的方法。
首先,我们需要了解VHDL(VHSIC Hardware Description Language)是一种硬件描述语言,用于描述数字电路和系统。
VHDL可以描述数字电路和系统的行为、结构和时间性质,并且可以转化为硬件和软件实现。
因此,我们可以使用VHDL来描述电子琴的结构和行为,然后将其实现在FPGA上。
在电子琴的设计中,我们需要考虑最基础的功能:音符的产生和声音的输出。
因此,我们需要将电子琴拆分成两部分来考虑:输入和输出。
输入部分主要负责产生音符,音符的产生需要考虑按键的位置、按键的压力等因素。
由于VHDL主要用来描述数字电路,我们可以将输入部分简化为一组称为“开关矩阵”的二维数组。
在这个开关矩阵中,我们可以设置每个按键的位置和状态(即是否按下),并通过数字电路来判断按键状态的变化。
输出部分则负责将产生的声音输出到扬声器上。
在FPGA 中,我们可以通过PWM(Pulse-Width Modulation)技术来实现声音的输出。
PWM技术可以将模拟信号转化为数字信号,然后通过FPGA输出数字信号的高低电平来模拟模拟信号的频率和幅度,从而实现声音的输出。
接下来,我们需要考虑如何将输入和输出部分结合起来。
我们可以将输入部分和输出部分放在同一个模块中,并通过端口来连接。
在这个模块中,我们可以设置一个时钟,根据时钟的脉冲来判断按键状态是否改变,并且触发PWM来输出声音。
在设计完成后,我们需要进行VHDL仿真来验证我们的电子琴是否正确。
仿真可以模拟电路的行为和输出,以验证电路是否按照预期工作。
我们可以通过仿真来测试输入部分的工作状态,例如测试按键是否可以正确响应。
同时,我们也可以测试输出部分的工作状态,例如测试声音的频率和幅度是否符合预期。
简易电子琴设计-毕业设计简易电子琴设计-毕业设计引言:在现代科技的飞速发展下,电子琴作为一种电子乐器,已经成为人们日常生活中不可或缺的一部分。
本文将介绍一种简易电子琴的设计方案,旨在帮助毕业设计的学生们更好地理解电子琴的工作原理,并能够通过实践来提高自己的设计能力。
一、设计目标我们的设计目标是制作一款简易电子琴,具备以下功能:1. 发出不同音调的声音;2. 支持多个音符同时发声;3. 具备简单的音效调节功能。
二、硬件设计1. 主控芯片选择我们选择了Arduino UNO作为主控芯片,因为它具备较强的计算和控制能力,并且易于学习和使用。
2. 输入设备设计为了模拟钢琴键盘,我们使用了12个按钮作为输入设备,分别对应12个音符。
通过按下不同的按钮,可以触发不同的音符发声。
3. 输出设备设计为了发出声音,我们使用了一个小型扬声器作为输出设备。
通过控制扬声器的震动频率和幅度,可以发出不同音调的声音。
4. 电源和连接设计我们使用了一个9V电池作为电源,通过Arduino UNO的电源接口供电。
同时,我们还需要使用杜邦线将按钮和扬声器与Arduino UNO连接起来。
三、软件设计1. 初始化设置在Arduino代码中,我们首先需要进行初始化设置。
包括定义输入输出引脚、配置扬声器和按钮的工作模式等。
2. 按钮扫描在电子琴中,我们需要实时检测按钮的状态,以确定用户是否按下了某个按钮。
通过循环扫描每个按钮的状态,我们可以实现按钮的按下和松开的检测。
3. 音符发声当用户按下某个按钮时,我们需要根据按钮的编号来确定对应的音符,并通过控制扬声器的震动频率和幅度来发出相应的声音。
4. 音效调节为了增加音乐的表现力,我们可以在代码中添加一些音效调节功能。
例如,通过改变扬声器的震动频率和幅度,可以实现音符的延长、颤音等效果。
四、实验结果经过一段时间的设计和调试,我们成功地制作出了一款简易电子琴。
通过按下不同的按钮,我们可以发出不同音调的声音。
简易电子琴的VHDL 设计与实现一.设计课题与任务要求:设计制作一个简易电子琴演奏器。
原理概述:依据声乐知识,产生音乐的两个因素是音乐频率的持续时刻,音乐的十二平均率规定,每两个八音度之间的频率相差一倍,在两个八音度之间,又可分为12个半音。
每两个半音的频率比为4。
另外,音名A〔乐谱中的低音6〕的频率为440HZ,音名B到C之间,E到F 之间为半音,其余为全音。
由此能够计算出乐谱中从低音1到高音1之间每个音名的频率如下表所示。
全然要求:1、用8×8点阵显示“1234567”七个音符构成的电子琴键盘。
其中点阵的第一列用一个LED点亮表示音符“1”,第二列用二个LED点亮表示音符“2”,依此类推,如以如下面图所示。
图1点阵显示的电子琴键盘2、用BTN1~BTN7七个按键模拟电子琴手动演奏时的“1234567”七个音符。
当某个按键按下时,数码管显示相应的音符,点阵上与之对应的音符显示列全灭,同时蜂喊器演奏相应的声音;当按键弹开时数码管显示的音符灭掉,点阵显示恢复,蜂喊器停止声音的输出。
以如下面图所示为按下BTN3按键时点阵的显示情况。
图2按键按下后的点阵显示3、由拨码开关切换选择高、中、低音,并用数码管进行相应的显示。
4、通过按键BTN0进行复位,操纵点阵显示图1的初始状态。
提高要求:1、可通过一个拨码开关进行手动/自动演奏的切换,并与点阵显示配合增加自动演奏乐曲曲折折曲曲折折折折曲曲折折曲曲折折折折折折的功能。
2、增加手动演奏的音符存储、播放功能。
二.系统设计〔包括设计思路、总体框图、分块设计〕1.设计思路讲明:电子琴的设计包括七个模块:弹奏模块keyplay、自动演奏模块autoplay、查表及显示模块table、分频模块fenpin、存储模块store、七段数码管显示模块seg7和点阵的显示模块lattice。
弹奏模块keyplay依据按键动作key,和高中低模式选择mode产生指示音调的index_key。
题目: 简易电子琴的设计初始条件:1.运用所学的微机原理和接口技术知识;2.微机原理和接口技术实验室的实验箱设备。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)使用汇编语言设计一个能够用键盘运行的电子琴,(实现一个以上功能):1.弹奏:用户每按一个键盘琴键就弹奏相应的音符;2.演奏:按下键盘上某一个指定的建后自动弹奏预存琴谱功能;3.变调:按下键盘上某一指定键后,再弹奏和演奏时琴键相应的音符频率变高;按下另一指定键后,再弹奏和演奏时琴键相应的音符频率变低;4.严格按照课程设计说明书要求撰写课程设计说明书。
摘要随着电子技术的发展,电子琴很为常见,硬件的设计很费人力与物力,因此软件的应用得到了很好的应用,这个简易电子琴设计采用了软硬件结合的方法完成了任务要求。
应用了8255和8253的芯片,利用CPU,8086达到软硬件结合,从而实现电子琴的弹奏和演奏两种方式的应用。
可以随心所欲控制电子琴是弹奏还是自动演奏。
此电子琴程序实现了:1.弹奏:用户每按一个键盘琴键就弹奏相应的音符;2.演奏:按下键盘上某一个指定的建后自动弹奏预存琴谱功能。
k0为控制键:高电平时自动演奏。
打到低电平时停止演奏。
低电平时可弹奏,K1,K2,K3,K4,K5,K6,K7分别为1,2,3,4,5,6,7目录………………………………………………………………………………………………前言第一章电子琴的设计要求和使用器件1.1 初始条件1.2 电子琴要完成的主要任务1.3 电子琴课设的使用器件1.4 设计方案的确定第二章电子琴的硬件设计2.1 电子琴的硬件框图2.2 8255芯片的资料2.3 8253芯片的资料第三章电子琴的软件设计3.1 程序流程图3.2 发音程序3.3 延时程序3.4 停止发音程序3.5 整体的软件汇编程序第四章电子琴的调试和设计体会4.1 硬件调试4.2 软件调试4.3 设计体会第五章附录5.1 参考文献5.2 乐谱5.3 成绩评定表前言随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重要的作用。
实验三:设计简易电子琴学号: xxxxxxxxx姓名: xxx专业(班级):0310409(电子)指导老师:王老师,谭老师摘要:电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演重要的角色,它已经溶入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是用555定时器为核心控制元件,设计一个电子琴。
以555定时器为主控核心,与键盘扬声器等模块组成核心主控制模块。
要求如下:1、要求有7个音阶,可以用数字芯片构成,也可由单片机构成。
2、用Multisim仿真。
3、搭建实体电路关键词:频率、音阶、方波、扬声器任务提出与方案论证1.1 乐音音高音高即音的高低,它是由发音物体在一定时间内的震动次数(即振动频率)所决定的。
频率越大则音越高,反之则越小。
因此可以通过改变发声物体的频率来实现音阶变换,继而实现简易电子琴的制作。
1.2 555定时器构成多谐振荡器图1-1输出端产生特定频率方波可以驱动扬声器发出特定音高的声音。
1.3 音阶的变换方波频率fo 1.43(R12R2)C1 Hz通过改变R1,R2或C1即可改变频率继而实现音阶的变换总体设计2.1 系统框图图1-22.2 音阶控制在图1-1中通过改变电容C1来实现频率变化继而实现不同音阶。
设置7个电容来达到7个不同音阶的目的。
2.3 频率产生通过555定时器构成多谐振荡器,输出特定的方波,驱动扬声器发声。
2.3扬声器发声设备。
详细设计3.1总体电路图1-33.2 音阶电容参数如图1-3中,有七个按钮开关分别用于选通七个电容来实现音阶变换都与C1并联,选通时电容为并联之和。
通过公式计算,电子琴的7个音阶所对应的电容已标在图上。
3.3 仿真图1、2、3、4、5、6、7、总结通过实验,加深了对555定时器的了解,让我更进一步的提高了动手能力,第一次实现对它的应用,觉得蛮有成就感的,真正做发哦了理论与实践相结合,对知识实现了活学活用,掌握了基本的研究方法,还使我明白了许多待人接物与为人处世的道理。
简易电子琴一:系统设计要求简易电子琴拥有16个按键,每个按键按下后都可以发出不同的声音,还有一个按键,按下后可以播放一小段示例音乐。
要求按键采用扫描方式检测哪个按下,并且在七段数码管上显示按下的是哪个按键。
二:系统结构框图和工作原理工作原理:系统上电启动后,首先采用按行扫描的方式查询时哪一个按键被按下,首先扫描第一行,若第一行没有按键按下,继续扫描第二行,依次类推,若扫描到某一行有键按下时,再检测是哪个键按下了,得到结果后,先保存键值,然后进入处理阶段,处理时,首先送七段数码管显示键值。
然后再利用计数器和喇叭实现发声,发声的原理主要利用不同声音有不同频率得到的,具体数据是参考的书上的。
若没有按键按下,当按下音乐控制键时,开始播放音乐,音乐的数据也来自书上,按下停止键音乐停止,具体原理利用发声的频率加一些延时构成。
都没有按键按下时,系统不停地在等待按键的按下。
三:单元硬件设计说明(1)时钟电路:时钟电路由一个12M晶振,和两个3pF电容组成,产生12M赫兹的方波脉冲信号做为单片机的内部时钟。
(2)复位电路和音乐控制电路:一个5V的电源,一个10KΩ的电阻,一个4KΩ的电阻,一个74LS04,一个10F的电容及连个按键构成。
具体见实际电路图。
(3)显示电路,由7个470R上拉电阻和七段数码管组成。
(4)键盘:4×4扫描式按键盘构成。
四:软件设计与说明包括程序流程图以及PROTEUS电路图1主程序流程2,显示和发声子程序 3音乐播放子程序PROTEUS电路图五:程序KEYBUF EQU 30HSTH0 EQU 31HSTL0 EQU 32HTEMP EQU 33HSPK EQU P1.6 ; 蜂鸣器所在端口ORG 0000HLJMP STARTORG 0BHLJMP INT_T0START: MOV TMOD,#01HSETB ET0SETB EAWAIT:MOV P2,#0FFHCLR P2.4 ;从第四行开始扫描MOV A,P2ANL A,#0FH ;屏蔽高四位,高四位为行,低四位为列XRL A,#0FHJZ NOKEY1 ;判断是否有键按下,没有就跳转LCALL DELY10MSMOV A,P2 ;消除抖动和干扰ANL A,#0FHXRL A,#0FHJZ NOKEY1MOV A,P2 ;确定有键按下以后的处理ANL A,#0FHCJNE A,#0EH,NK1 ;是否为第四行第一列的键被按下MOV KEYBUF,#0 ;保存列号LJMP DK1NK1: CJNE A,#0DH,NK2MOV KEYBUF,#1LJMP DK1NK2: CJNE A,#0BH,NK3MOV KEYBUF,#2LJMP DK1NK3: CJNE A,#07H,NK4MOV KEYBUF,#3LJMP DK1NK4: NOPDK1: ;第四行的处理MOV A,KEYBUFMOV DPTR,#TABLEMOVC A,@A+DPTRMOV P0,AMOV A,KEYBUFMOV B,#2 ;Table1以字保存,所以散转MUL ABMOV TEMP,AMOV DPTR,#TABLE1MOVC A,@A+DPTRMOV STH0,A ;送入高字节MOV TH0,AINC TEMPMOV A,TEMPMOVC A,@A+DPTRMOV STL0,A ;送入低字节MOV TL0,ASETB TR0DK1A: M OV A,P2 ;判断按键是否松开ANL A,#0FHXRL A,#0FHJNZ DK1ACLR TR0NOKEY1:MOV P2,#0FFHCLR P2.5MOV A,P2ANL A,#0FHXRL A,#0FHJZ NOKEY2LCALL DELY10MSMOV A,P2ANL A,#0FHXRL A,#0FHJZ NOKEY2MOV A,P2ANL A,#0FHCJNE A,#0EH,NK5MOV KEYBUF,#4LJMP DK2NK5: CJNE A,#0DH,NK6 MOV KEYBUF,#5LJMP DK2NK6: CJNE A,#0BH,NK7 MOV KEYBUF,#6LJMP DK2NK7: CJNE A,#07H,NK8 MOV KEYBUF,#7LJMP DK2NK8: NOPDK2:MOV A,KEYBUFMOV DPTR,#TABLEMOVC A,@A+DPTRMOV P0,AMOV A,KEYBUFMOV B,#2MUL ABMOV TEMP,AMOV DPTR,#TABLE1MOVC A,@A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,@A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK2A: M OV A,P2ANL A,#0FHXRL A,#0FHJNZ DK2ACLR TR0NOKEY2:MOV P2,#0FFHCLR P2.6MOV A,P2ANL A,#0FHXRL A,#0FHJZ NOKEY3LCALL DELY10MSMOV A,P2ANL A,#0FHXRL A,#0FHJZ NOKEY3MOV A,P2ANL A,#0FHCJNE A,#0EH,NK9MOV KEYBUF,#8LJMP DK3NK9: CJNE A,#0DH,NK10 MOV KEYBUF,#9LJMP DK3NK10: CJNE A,#0BH,NK11 MOV KEYBUF,#10LJMP DK3NK11: CJNE A,#07H,NK12 MOV KEYBUF,#11LJMP DK3NK12: NOPDK3:MOV A,KEYBUFMOV DPTR,#TABLEMOVC A,@A+DPTRMOV P0,AMOV A,KEYBUFMOV B,#2MUL ABMOV TEMP,AMOV DPTR,#TABLE1MOVC A,@A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,@A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK3A: M OV A,P2ANL A,#0FHXRL A,#0FHJNZ DK3ACLR TR0NOKEY3:MOV P2,#0FFHCLR P2.7MOV A,P2ANL A,#0FHXRL A,#0FHJZ NOKEY4LCALL DELY10MSMOV A,P2ANL A,#0FHXRL A,#0FHJZ NOKEY4MOV A,P2ANL A,#0FHCJNE A,#0EH,NK13MOV KEYBUF,#12LJMP DK4NK13: CJNE A,#0DH,NK14 MOV KEYBUF,#13LJMP DK4NK14: CJNE A,#0BH,NK15 MOV KEYBUF,#14LJMP DK4NK15: CJNE A,#07H,NK16 MOV KEYBUF,#15LJMP DK4NK16: NOPDK4:MOV A,KEYBUFMOV DPTR,#TABLEMOVC A,@A+DPTRMOV P0,AMOV A,KEYBUFMUL ABMOV TEMP,AMOV DPTR,#TABLE1MOVC A,@A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,@A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK4A: M OV A,P2ANL A,#0FHXRL A,#0FHJNZ DK4ACLR TR0NOKEY4: JNB P1.0,MUSICLJMP WAITMUSIC:MOV R3,#00HNEXT:MOV A,R3MOV DPTR,#TABLE2MOVC A,@A+DPTRJZ MUSIC ;如果检测到0000时,再执行一遍MOV R7,AINC R3MOV A,R3MOVC A,@A+DPTRMOV R2,AACALL SONGINC R3SJMP NEXT;=== 歌曲播放子程序===SONG:MOV A,R2 ; 取出节拍RL AJNZ K EEPMOV A,#01HKEEP:REPEAT:ACALL EIGHTHDJNZ R2,REPEATRET;=== 产生1/8拍延时子程序===EIGHTH:MOV A,R7 ; 查表取出廷时参数,保存到R4MOV DPTR,#DELAY_TMOVC A,@A+DPTRMOV R4,AMOV A,R7 ; 查表取出1/8拍周期数,保存到R5 MOV DPTR,#S_PARAMOVC A,@A+DPTRMOV R5,ANEXTCYC:ACALL SOUNDDJNZ R5,NEXTCYCRET;=== 发声子程序===SOUND:SETB SPKACALL SDELAYCLR SPKACALL SDELAYRET;=== 延时子程序===SDELAY:MOV A,R4 ; 廷时值在R4内MOV R0,AXL2:MOV R1,#03HDL1:NOPDJNZ R1,DL1DJNZ R0,XL2RET;=== 1/8拍周期表===S_PARA:DS 1DHDB 15H,16H,00DB 19H,00H,1CH,00H,1FH,21H,00H,25HDB 00H,29H,2CH,00H,31H,34H,37H,00HDB 3EH,41H,00H,49H,00H,52H,57H,00HDB 62H;=== 延时参数表===DELAY_T:DS 1DHDB 7EH,77H,00HDB 6AH,00H,5EH,00H,54H,4FH,00H,46HDB 00H,3FH,3BH,00H,35H,32H,2FH,00HDB 2AH,27H,00H,23H,00H,1FH,1DH,0C0HDB 1AHDELY10MS:MOV R6,#10D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1RETINT_T0:MOV TH0,STH0MOV TL0,STL0CPL P1.6RETITABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB 7FH,6FH,77H,7CH,39H,5EH,79H,71HTABLE1: DW 64021,64103,64260,64400DW 64524,64580,64684,64777DW 64820,64898,64968,65030DW 65058,65110,65157,65178;=== 歌曲表===TABLE2:DW 2202H,2902H,2902H,2902H,2906H,2702H ;我从山中来DW 2502H,2702H,2502H,2402H,2208H ;带着兰花草DW 2E02H,2E02H,2E02H,2E02H,2E06H,2C02H ;种在小园中DW 2902H,2C02H,2D02H,2A02H,2908H ;祈祷花开早DW 2902H,2E02H,2E02H,2C02H,2906H,2702H ;一日看三回DW 2502H,2702H,2502H,2402H,2206H,1D02H ;看得花时过DW 1D02H,2502H,2502H,2402H,2206H,2902H ;兰花却依然DW 2702H,2502H,2402H,2002H,2208H ;苞也无一个DW 0000H ;END六:调试与运行程序写完后,存在一些缺点和错误,经过调试后,能正常发声,但是不能显示键值,经过和同学探讨发现用错了数码管,最后把数码管改成共阴极后,终于也能显示键值了。
简易电子琴电路的设计仿真与实现课程设计课程设计任务书学生姓名:专业班级:指导教师:工作单位: 信息工程学院题目: 简易电子琴电路的设计仿真与实现初始条件:可选元件:集成运算放大器LM324、电阻、电位器、电容若干,直流电源,或自备元器件。
可用仪器:示波器,万用表,直流稳压源,函数发生器要求完成的主要任务:(1)设计任务根据要求,完成对简易电子琴电路的仿真设计、装配与调试,鼓励自制稳压电源。
(2)设计要求①设计一简易电子琴电路,按下不同琴键即改变 RC值,能发出C调的八个基本音阶, 采用运算放大器构成振荡电路,用集成功放电路输出。
已知八个基本音阶在C调时所对应的频率如下表所列C调 1 2 3 4 5 6 7 if 0 /H Z 264 297 330 352 396 440 495 528②选择电路方案,完成对确定方案电路的设计。
③利用Proteus或Multisim仿真设计电路原理图,确定电路元件参数、掌握电路工作原理并仿真实现系统功能。
④安装调试并按规范要求格式完成课程设计报告书。
⑤选做:利用仿真软件的PCB设计功能进行PCB设计。
时间安排:1、前半周,完成仿真设计调试;并制作实物。
2、后半周,硬件调试,撰写、提交课程设计报告,进行验收和答辩。
指导教师签名: 年月日系主任(或责任教师)签名: 年月日目录1.模电课设概述..............................................................................1)1.1设计背景..............................................................................1)1.2设计目的及意义.....................................................................11.3开发环境proteus简介 (1)2.电路原理....................................................................................32.1 RC桥式振荡电路及频率选择......................................................32.2振荡条件 (4)3.总体方案设计……………………………………………………………………53.1实验电路设计思路…………………………………………………………53.2设计电路图...........................................................................63.3实验参数选择 (6)4.仿真曲线及结果分析.....................................................................74.1仿真操作过程及曲线...............................................................74.2仿真结果分析 (14)5.实物制作及仿真、实物的差异......................................................155.1实物制作过程和调试过程......................................................155.2 仿真、实物的差异 (16)6.心得体会………………………………………………………………………(17)7.元件清单………………………………………………………………………(18)8.参考文献………………………………………………………………………(19)1模电课设概述1.1 设计背景电子琴是一种键盘乐器,采用半导体集成电路,对乐音信号进行放大,通过扬声器产生音响。
proteus 7的使用及调试
定时器、中断、键盘接口数字电路、模拟电路的相关知识2、实现及编程
2.1程序框图
)
2.2电路原理图
2.3程序内容 7个音调的产生方法 按k2让音调逆向输出 如何按k8+k2放出音乐和如何
让音乐停止
2.4汇编源程序 BUZZ EQU P2 BUZZ1 EQU P1.7 ORG OOOOH LJMP MAIN ORG 000BH
LJMP INT_T0 ORG 001BH LJMP TIME1 ORG 8000H MAIN: MOV SP,#90H MOV BUZZ,#0FFH
MOV TMOD,#11H SETB ET0 SETB ET1 SETB EA CLR TR0 START: MOV R0, BUZZ CJNE R0,#0FFH,KEY1 CLR TR0 SJMP START KEY1: CJNE R0,#0FEH,KEY2 MOV 30H,#0FBH MOV 31H,#0E9H LJMP SET_TIMER KEY2:
CJNE R0,#0FDH,KEY3 MOV 30H,#0FCH MOV 31H,#5CH LJMP SET_TIMER KEY3:
CJNE R0,#0FBH,KEY4
MOV 30H,#0FCH MOV 31H,#0C1H LJMP SET_TIMER KEY4:
CJNE R0,#0F7H,KEY5 MOV 30H,#0FCH MOV 31H,#0EFH LJMP SET_TIMER KEY5:
CJNE R0,#0EFH,KEY6 MOV 30H,#0FDH MOV 31H,#045H LJMP SET_TIMER KEY6:
囉*
祖
1IU
■□■1l
・
■CkUJUfiia ▼"■VZ AfiJkAAl ■E * F Wi -54
■U A JM
"bn iunTb
—-
P XF<T
™n *T*Ll
2CH,02H,82H DB 16H,32H,56H,12H DB 0A6H,32H,56H,52H DB
66H,72H,0B6H,62H DB 62H,52H,58H,32H,22H DB 16H,12H,14H,32H,22H DB 16H,12H,14H,22H,32H DB 26H,92H,0A4H,12H,22H DB 1CH DB 00
K8键按后是否音调是逆
原来是忘了继续检测
END
3、调试及测试
3. 1调试(按实际做的步奏)
如按下k5后显示如下图:
k1— k7音调输出
按一下k8。
在按k1—k7音频逆向输出
先按着k8再+k1键后会在音频输出歌曲,k1键停止
3. 2测试
在proteus 环境下点击k1-k7看看发出的音是不是正确的 向的
K8+k1是否音乐输出
在调试源代码中采用分块测试:音频输出、按键音乐播放 最后采用组合调试
3. 3出现的问题及解决
在做k8按键检查k 到8直到k8放开才跳转一直出错。
p2 口 0 0 0
TM0D 设置错误。