电子琴的设计八音阶
8键电子琴设计范文
8键电子琴设计范文电子琴是一种通过按键来发出声音的乐器。
传统的电子琴通常有88个键,其中包括黑键和白键,但是在一些特殊的场合或是对于初学者来说,这样多的键可能会造成困扰。
因此,设计一个只有8个键的电子琴,可以简化学习过程,并且更方便携带。
首先,我们需要确定这8个键应该如何设计。
基本的乐理知识告诉我们,音乐的音高由不同的音阶来决定。
因此,我们可以将这8个键分别对应不同的音阶,在键盘上进行布局。
比如,我们可以选择C大调的八个音阶,包括C、D、E、F、G、A、B、C。
这样,每个键都代表一个音阶,使用者可以通过按下不同的键来演奏不同的音阶。
接下来,我们需要确定如何发出不同的音色。
电子琴通常有许多不同的音色,比如钢琴音、管风琴音、吉他音等等。
为了在只有8个键的情况下能够演奏出多种音色,我们可以在每个键上安装一个开关,用于切换不同的音色。
这样,使用者可以通过按下键盘上的开关来选择自己喜欢的音色。
另外,为了方便学习者记忆键位,可以考虑在每个键上标注上对应的音符或音阶。
这样,学习者可以通过查看键盘上的标记来快速找到自己想要演奏的音阶或音符。
同时,为了提高音质,我们可以在电子琴中加入合适的扬声器或是连接外部音箱。
这样可以让演奏出的音乐更加清晰且有力度。
最后,一些额外的功能也可以加入到这个8键电子琴设计中。
比如,变调器可以使演奏者调高或调低音阶,从而演奏出不同的调式。
节奏器可以帮助演奏者保持稳定的节奏感。
此外,可以添加录音功能来记录演奏过程,以便回放和分析。
总结起来,设计一个只有8个键的电子琴需要考虑以下几个方面:键位布局、音色切换、键位标记、音质提升以及额外的功能。
通过合理的设计,这样的电子琴可以方便学习者学习和演奏音乐,同时也易于携带和使用。
课程设计报告书之八音电子琴的设计-精品
PORT(INDEX: IN STD_LOGIC_VECTOR(7 DOWNTO 0);--音符输入信号
CODE: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--音符显示信号
HIGN: OUT STD_LOGIC;--高低音显示信号
TONE0: OUT INTEGER RANGE 0 TO 2047);--音符的分频系数
WHEN 4=>INDEX0<="00010000"; --5
WHEN 5=>INDEX0<="00010000"; --5
WHEN 6=>INDEX0<="00010000"; --5
WHEN 7=>INDEX0<="00100000"; --6
WHEN 8=>INDEX0<="10000000"; --8
TONE1: IN INTEGER RANGE 0 TO 2047;--音频分频系数
SPKS: OUT STD_LOGIC);--驱动扬声器的音频信号
END ENTITY FENPIN;
ARCHITECTURE ART OF FENPIN IS
SIGNAL PRECLK:STD_LOGIC;
SIGNAL FULLSPKS:STD_LOGIC;
END AUTO;
ARCHITECTURE BEHAVIORAL OF AUTO IS
SIGNAL COUNT0:INTEGERRANGE0 TO 31;
BEGIN
PULSE0:PROCESS(CLK,AUTO)
VARIABLE COUNT:INTEGERRANGE0 TO 8;
简易电子琴(NE555,LM386)
课程设计说明书课程设计名称:模拟电路课程设计课程设计题目:简易电子琴模拟电路课程设计任务书题目简易电子琴内容及要求①产生e调8个音阶的振荡频率,分别由1、2、3、4、5、6、7、0号数字键控制;②其频率分别为:1:261.6、2:293.6、3:329.6、4:349.2、5:392.0、6:440.0、7:439.9、0:523;③利用集成功放放大该信号,驱动扬声器;④设计一声调调节电路,改变生成声音的频率。
进度安排第7周:查阅资料,学习仿真软件,确定方案,完成原理图设计及仿真;第8周:领元器件、仪器设备,制作、焊接、调试电路,完成系统的设计;第9周:检查设计结果、撰写课设报告。
音乐在人类社会扮演着重要的角色,传统的乐器学习难度大且价格高昂,而一些简易的电子乐器价格相对便宜,能满足一般爱好者需求。
故研制电子乐器具有一定社会意义。
本次课程设计中,采用NE555和LM386功率放大器来完成设计要求。
利用555定时器构成多谐振荡器,通过8个按键控制不同的RC组合使其产生不同频率八个基本音阶的脉冲信号波,通过LM386功率放大器驱动扬声器,即可发出八个音阶的音乐。
关键词:简易电子琴、NE555、LM386、8个音阶第一章系统组成 (1)1.1系统框图 (1)1.2系统介绍 (1)第二章各模块设计 (2)2.1按键开关模块 (2)2.2振荡器模块 (2)2.3扬声器模块 (3)第三章仿真图及分析 (4)3.1仿真波形图 (4)3.2仿真结果分析 (7)第四章设计结果分析 (8)第五章实验小结 (9)参考文献 (10)附录A 元件清单 (11)附录B 焊接实物图 (12)第一章 系统组成1.1系统框图图1.1系统框图采用555集成定时器组成简易电子琴,整个电路由振荡器、LM386功放器、扬声器和按键开关等部分组成。
主振荡器是由555定时器,八个按键开关,外接电容C1、C2,外接电阻R8以及R1-R7(用8个可调电阻调成所需电阻元件)等元件组成。
简易电子琴设计说明书
简易电子琴设计说明书一﹑设计题目:设计一简易电子琴,要求:①能够发出1、2、3、4、5、6、7、ⅰ等八个音符,此八音符电子琴可通过按健输入来控制音响。
②演奏时可以选择手动演奏还是自动演奏已存入的乐曲。
使用元件:AT80c51、LM324、扬声器、按键等。
二、设计目的:㈠掌握电子电路的一般设计方法和设计流程,并且能够对电子电路、电子元器件、印制电路板等方面的知识有进一步的认识。
㈡学习使用protel软件绘制电路原理图及印刷板图。
㈢掌握应用EWB对所设计的电路进行仿真,通过仿真结果验证设计的正确性。
三、设计内容及步骤:为使所设计的简易电子琴实现预期功能——此八音符电子琴可通过按健输入来控制音响的目的,要建需立音阶与8051输出频率的对应表,如下表:简易电子琴硬件系统图:流程图:原理:(一)音乐产生原理及硬件设计由于一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
本次设计中单片机晶振为12M H Z,那么定时器的计数周期为1M H Z,假如选择工作方式1,那T值便为T=216--5﹡105/相应的频率,那么根据不同的频率计算出应该赋给定时器的计数值,列出不同音符与单片机计数T0相关的计数值如下表所示:采用查表程序进行查表时,可以为这个音符建立一个表格,有助于单片机通过查表的方式来获得相应的数据:T A B L E D W64580,64684,64777,64820,64898,64968,65030源程序:方案一:产生按键音符O R G0000HL J M P M A I NO R G000B HL J M P B R E A KM A I N:M O V T M O D,#01H;设置定时器0的工作方式S E T B E AS E T B E T0;设置定时器0中断S E T B T R0;启动定时器0W A I T1:L C A L L K E Y;调用K E Y子程序,判断有键按下否?第几个键?C L R E A;屏蔽中断C J N E R3,#00H,W A I T1;如果R3=0,表示有键按下M O V A,22H;将22H里存放的按键号送给AR L A;因为查表里都是字,所以得乘2查得数据M O V D P T R,#T A B L E;指向表头M O V C A,@A+D P T R;查表M O V T H0,A;将数据高位送T H0M O V21H,A;将高位备份M O V A,22H;将22H里存放的按键号送给AR L A;因为查表里都是字,所以得乘2查得数据I N C A;取低位数据M O V C A,@A+D P T RM O V T L0,AM O V20H,AW A I T2:L C A L L K E YS E T B E AC J N E R3,#00H,W A I T1J M P W A I T2K E Y:M O V R3,#00H;K E Y子程序,判断有键按下否?第几个键?M O V R1,#0F F HM O V R0,#00HM O VA,R1M O V P2,AM O VA,P2C L R CC P L C;利用标志位C Y来判断是哪个键按下M O V R2,#08HWAI T3:R L C A;移位判断J N C S TO R EI N C R0D J N Z R2,WAI T3S TO R E:M O V22H,R0;将按键号存22H,R3=0有键按下M O V R3,#00HR E TB R E AK:P U S H AC C;中断产生方波,从P1.0口输出P U S HP S WM O V T L0,20HM O V T H0,21HC P LP1.0P OP P S WP OPAC CR E T ITAB L E:D W65030,64968,64898,64820,64777,64684,64580;7,6,5,4,3,2,1 E N D方案二:产生按键音符O R G0000HS J M P S TA RTO R G000B HAJ M P I N T_0O R G0030HS TART:M O V P1,#00HS E T B E AS E T B E T0;计数器0M O V T M O D,#02HM O V T H1,#09C HM O V T L1,#09C H;定时器初植C L RT R0;定时器不允许S C AN:;键盘扫描M O VA,P2;判断键盘按下,跳到S C AN_1,若未按,继续扫描C J N E A,#0F F H,S C AN_1N O PS J M P S C ANS C AN_1:AC A L L D E L AY;是不是真的要按下?如果是,则跳转S U_K E Y查询是哪个按下?M O VA,P2C J N E A,#0F F H,S U_K E YN O P。
简易8按键电子琴设计实验
本文仅供参考电子琴系统设计设计要求设计一个简易电子琴。
(1)用喇叭发1、2、3、4、5、6、7、ⅰ。
(2)要求按下按键发声,松开延时一段时间停止。
(3)中间再按别的键则发另一音调的声音。
(4)键盘输入功能。
(5)按键同时对应指示灯点亮,按键结束,指示灯熄灭。
方案设计1.音乐产生原理由于一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
本次设计中单片机晶振为12MHZ,那么定时器的计数周期为1MHZ,假如选择工作方式1,那T值便为T=216--5﹡105/相应的频率,那么根据不同的频率计算出应该赋给定时器的计数值,列出不同音符与单片机计数T0相关的计数2.(1)方案一:采用CPLD外接扬声器、键盘、数码管等。
8个译码输出显示的数码管,以显示目标芯片的32 位输出信号,且8个发光管也能显示目标器件的8位输出信号。
时钟为50MHz ,输出接扬声器。
具体过程:主系统可由两个模块组成:当系统检测到有按键按下时,对应音符的频率由模块1获得,这是一个数控分频器。
由其clk端输入一具有较高频率的信号,分频后输出。
音符的持续时间须根据乐曲的速度及每个音符的节拍数决定,模块2的功能是为模块1提供决定所发音的分频预置值,而此数在模块1输入口停留的时间即为此音符的节拍值。
(2)方案二:采用单片机外接扬声器、键盘、数码管等。
具体过程:当系统扫描到键盘上有键子被按下,则快速检测出是那一个键子,然后单片机的定时器被启动,发出一定频率的脉冲,该频率的脉冲经喇叭驱动电路放大滤波后,就会发出相应的音调。
如果在前一个按下的键发声的同时有另一个键被按下,则启用中断系统,前面键的发音停止,转到后按的键的发音程序,发出后按的键的音。
Verilog hdl—简易电子琴设计(可打印修改)
这个过程实际上进行了一次二分频,频率变为原来的二分之一,即
6MHZ。
因此,分频系数的计算可以按照下面的方法进行。以中音 1 为例,
对应的频率值为 523.3HZ,它的分频系数应该为:
Divider=6MHz/523.3=6*106 /523.3=11466 至于其他音符,同样由上式求出对应的分频系数,这样利用程序可
PIO7
PIO6 PIO5 PIO4 PIO3 PIO2
CLOCK0 CLOCK2 CLOCK5 CLOCK9
PIO1
PIO0
ʵÑéµç·½á¹¹Í¼
¼ü8 ¼ü7 ¼ü6 ¼ü5 ¼ü4 ¼ü3 ¼ü2 ¼ü1
NO.3
1.Altera 公司的 Cyclone 系列的 EP2C5T144C8 芯片 2.康芯教学实验箱 软件 Quartus II Quartus II 是 Altera 公司的综合性 PLD 开发软件,支持原理 图、VHDL、VerilogHDL 以及 AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器, 可以完成从设计输入到硬件配置的完整 PLD 设计流程 以下为使用 Quartus II 软件得到的 RTL 级视图
在初次编写分频模块时候,使用的是比较基本的计数器分频法, 编写程序后在 modelsim 软件中进行了仿真,发现无法观察到分频情 况。经过分析,原因是由于分频比过大,因此在波形图中很难观察 到。而且由于预分频的占空比很小,更难以观察到高电平。在原因 找到后,为了考察程序的性能,我们将输入频率减小。同时适当缩 小分频比,这样就得到了模块仿真中的分频波形。
必须将计算得到的分频数四舍五入取整。若分频器时钟频率过低,
简易电子琴课程设计
*****大学数字电子技术课程设计设计题目:简易电子琴院(系):学院专业班级:2020级电气自动化技术*班姓名:学号:指导教师:时间:2021年10月18日至2021年10月22日说明1.课程设计进行期间,学生应按教学计划、每天的学习情况(包括学习内容、遇到问题及解决办法、心得体会等)如实进行记录。
2.结束时,根据课程设计内容和学习记录编写课程设计说明书。
3.指导教师应综合考虑学生的学习态度、设计质量、答辩情况等,给出成绩。
*****大学数字电子技术课程设计任务书专业班级班学号姓名一、设计题目简易电子琴二、设计任务与要求基本功能:1、产生8个音阶的振荡频率,分别由8个按键控制,驱动扬声器发声。
三、参考文献[1] 黄双根,任重,黄大星. 模拟电子技术[M]. 广州:华南理工大学出版社,2015[2] 陈宗梅. 模拟电子技术实验与课程设计[M]. 北京:北京理工大学出版社,2019[3] 夏继军,宋武. 电路基础[M]. 北京:北京邮电大学出版社,2015[4] 杨志忠,卫桦林. 数字电子技术基础(第三版)[M]. 北京:高等教育出版社,2018[5] 张祥丽. 数字电子技术实验与课题设计[M]. 北京:北京理工大学出版社,2011四、设计时间2021 年10 月18日至2021 年10月22 日指导教师签名:年月日目录1 课程设计的目的 (1)2 课程设计的任务与要求 (1)2.1 课程设计的任务 (1)2.2 基本要求 (1)2.3 课程设计的要求 (1)2.4 设计要求介绍 (1)3 系统的组成及工作原理 (2)3.1 系统的组成 (2)3.2工作原理 (3)4 元器件的介绍 (3)4.1 NE555多谐振荡器: (4)4.2 扬声器的动作原理 (5)4.3电阻 (6)4.4电容 (8)5 焊接工艺 (9)5.1焊接工具 (10)5.2焊前处理 (11)5.3焊接技术 (11)5.4电子元器件的安装 (12)5.5焊接的注意事项 (12)5.6焊接及结果分析 (13)6 调试 (13)7 电路测试及测试结果 (13)8 设计总结 (13)参考文献 (15)附录1 总体电路原理图 (16)附录2 元器件清单 (17)课程设计成绩评定 (18)1 课程设计的目的(1)掌握正弦振荡器的构成,原理与设计方法;(2)熟悉模拟元件的选择,使用方法。
基于RC正弦波振荡电路的电子琴设计
基于RC正弦波振荡电路的电子琴设计作者:孙文,赵万云,邹子春,袁小平来源:《现代电子技术》2010年第09期摘要:介绍一种八音阶微型电子琴的设计方法,它采用模拟电路中的RC正弦振荡原理。
设计出的电子琴音阶频率满足国际标准,la调频率满足国际标准音C调频率440 Hz。
给出电路参数的选取方法和一组参考值。
结果证明,用模拟电路方法制作电子琴结构简单,而且成本低廉。
关键词:电子琴; 模拟电路; 频率; RC正弦波振荡电路; 八音阶中图分类号:TB51 文献标识码:A文章编号:1004-373X(2010)09-0199-03Design of Electronic Organ Based on RC Sine-wave Oscillation CircuitSUN Wen, ZHAO Wan-yun, ZOU Zi-chun, YUAN Xiao-ping(China University of Mining Technolog, Xuzhou 221116, China)Abstract:The technique of designing micro-electronic organ with eight musical scales is introduced. It gives the method of design parameters based on RC sine-wave oscillation line. The frequency of la is 440 Hz, which meets the internationalreference value and some methods are given. It proves that it is convient and inexpensive to design micro-electronic organ with this method.Key words:electronic organ; analog line; frequency; RC sine-wave oscillation line ; eight musical scale0 引言对于固定的简单功能的实现,模拟电路具有结构简单,实现方便,成本低廉的优点。
科技论文写作 简易电子琴的设计
简易电子琴的设计孙凡(大连理工大学信息工程学院)摘要本课程设计主要采用EDA技术设计了一个简易的八音符电子琴,它可通过按键输入来控制音响从而演奏出已存入的乐曲。
在课程设计中,系统开发平台为Windows XP,程序设计采用VHDL语言[1],程序运行平台为QuartusⅡ6.0。
然后编写程序实现电子琴的各项功能,使不同的音阶对应不同频率的正弦波,按下不同的键时发出对应频率的声音。
程序通过调试运行,时序仿真,电路功能验证,顺利地实现了设计目标。
关键词电子琴;EDA;VHDL;音阶;频率Design of a simple electronic organSun Yang(College of Information Engineering ,Dalian University)Abstract The main use of this curriculum design EDA technology to design a simple eight-note organ, it can be key to control the audio input so as to have been deposited in a concert of music. In the course design, system development platform for Windows XP, the procedures VHDL design language[1], platform for running QuartusⅡ6.0. And then program to achieve the various functions of the organ, so that different scale corresponds to a different frequency sine wave, press different keys when the voice of the corresponding frequency. Running through the debugging process, timing simulation, functional verification circuit, successfully achieved the goal of the design.Key Words Electronic organ; EDA; VHDL; scale; frequency1. 引言随着信息科学的进步,现代电子产品的性能越来越高,复杂度越来越大,更新步伐也越来越快,电子技术的发展进入了划时代的阶段。
单片机+电子琴设计+八个音调+三首歌+歌词显示
系统功能说明:1、通过八个按键是否按下发出相应的1234567i这8个音调2、实验中可以播放三首歌曲,通过开关控制3、播放歌曲时,液晶屏显示播放歌曲号及歌词附录1:晶振为12M的音乐频率表音符频率(Hz)简谱码(T值)低1DO 262 63628 TH0=F7H TL0=24H #1DO# 277 63731 TH0=F8H TL0=F3H 低2RE 294 63835 TH0=F9H TL0=5BH #2RE# 311 63928 TH0=F9H TL0=B8H 低3M 330 64021 TH0=FAH TL0=15H 低4FA 349 64103 TH0=FAH TL0=67H #4FA# 370 64185 TH0=FAH TL0=B9H 低5SO 392 64260 TH0=FBH TL0=04H #5SO# 415 64331 TH0=FBH TL0=4BH 低6LA 440 64400 TH0=FBH TL0=90H #6 466 64463 TH0=FBH TL0=CFH 低7SI 494 64524 TH0=FCH TL0=0CH 中1DO 523 64580 TH0=FCH TL0=44H #1DO# 554 64633 TH0=FCH TL0=79H 中2RE 587 64684 TH0=FCH TL0=ACH #2RE# 622 64732 TH0=FCH TL0=DCH 中3M 659 64777 TH0=FDH TL0=09H 中4FA 698 64820 TH0=FDH TL0=34H #4FA# 740 64860 TH0=FDH TL0=5CH 中5SO 784 64898 TH0=FDH TL0=82H #5SO# 831 64934 TH0=FDH TL0=A6H 中6LA 880 64968 TH0=FDH TL0=C8H #6 932 64994 TH0=FDH TL0=E2H 中7SI 988 65030 TH0=FEH TL0=06H 高1DO 1046 65058 TH0=FEH TL0=22H #1DO# 1109 65085 TH0=FEH TL0=3DH 高2RE 1175 65110 TH0=FEH TL0=56H #2RE# 1245 65134 TH0=FEH TL0=6EH 高3M 1318 65157 TH0=FEH TL0=85H 高4FA 1397 65178 TH0=FEH TL0=9AH #4FA# 1480 65198 TH0=FEH TL0=AEH 高5SO 1568 65217 TH0=FEH TL0=C1H #5SO# 1661 65235 TH0=FEH TL0=D3H 高6LA 1760 65252 TH0=FEH TL0=E4H #6 1865 65268 TH0=FEH TL0=F4H 高7SI 1967 65283 TH0=FFH TL0=03H 休止符用TH0=FFH ,TL0=FFH表示附录2:LCD相关资料两行液晶显示的地址:(均为十六位计数)0 1 2 3 4 5 6 7 8 9 A B C D E F40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F命令格式要求,设置地址指针的时候第8位为1,后边为地址,即AC0~AC6,就是对应上表的地址。
电子琴设计八音阶
目录摘要 (2)关键字 (2)第一章系统设计 (2)1.1 设计要求 (2)1.1.1 根本局部 (2)1.1.2 发挥局部 (2)1.2总体设计方案 (2)1.2.1 设计思路 (3)1.2.2 方案比拟 (3)1.2.3 系统组成和工作原理 (3)第二章单元电路设计 (4)2.1顶层模块(top)的设计 (4)2.2自动演奏模块〔automusic〕的设计 (4)2.3音调发生模块〔tone〕的设计 (4)2.4数控分频模块〔speaker〕的设计 (4)第三章软件设计 (5)3.1VHDL语言简介 (5)3.2软件设计 (5)第四章系统测试 (6)4.1测试使用的仪器 (6)4.2测试方法 (6)4.3指标测试和测试结果 (6)第五章完毕语 (6)第六章参考文献 (6)第七章附录 (7)电子琴的设计摘要:用可编程逻辑器件〔PLD〕来完成该设计。
核心是一数控分频器,对输入的脉冲进展分频,得到每个音阶对应的频率,由此实现简易电子琴的发音功能。
电子琴可演奏由键盘输入的音阶或切换到自动演奏存储在电子琴的乐曲。
本设计基于超高速硬件描述语言VHDL 在Xilinx公司的SpartanⅡ系列的XC2S2005PQ-208芯片上编程实现;经仿真,硬件测试和调试根本能够到达技术指标,实验结果和仿真结果根本一致。
关键词:PLD,VHDL,数控分频,电子琴The Design of Electrical OrganCao Xueke Tan Xianfeng Tian Dandan〔Nanhua University HengYang Hunan 421001〕Teacher:Wang YanAbstract:The design is acplished with Programmable-Logic-Device(PLD).The core of it is anumerical control frequency divider, which can divide the input pulse into the corresponding frequency to the musical scale, so that it can achieve the sounding function of simple electronic organ. The organ can play the musical scale put in with a keyboard or switch to auto play the melody stored in it. The design is programmed with VHDL and realized in the chip of XC2005PQ-208 Xilinx series. It can basically reach the technique index after simulating, hardware debugging.The experiment result is consonant with the simulating result.Keywords:PLD, VHDL, numerical control frequency divider, electrical organ第一章系统设计1.1 设计要求1.1.1 根本局部设计一八音电子琴,由键盘输入来控制其对应的音响。
8音电子琴
八音电子琴的设计西南大学电子信息工程学院成员:董哲康闫佳佳时间:公元2009年8月6日一、作品简介及要求1.能发出1、2、3、4、5、6、7、i这八个音;2.用按键作为电子琴的键盘;3.C调到B调的对应频率为:高音C调261.63*2HZB调493.88HZA调440.00HZG调392.00 HZF调349.23 HZE调329.63 HZD调293.66 HZC调261.63 HZ二.设计思路本系统是采用EDA技术设计的一个简易的八音符电子琴和音乐发生器,该系统基于计算机中时钟分频器的原理,采用自顶向下的设计方法来实现,它可以通过按键输入来控制音响。
系统由乐曲自动演奏模块、乐器演示模块琴/乐功能选择模块、音调发生模块和数控分频模块五个部分组成。
系统实现是用硬件描述语言VHDL按模块化方式进行设计,然后进行编程、时序仿真、整合。
本系统功能比较齐全,有一定的使用价值。
三.简易电子琴设计过程3.1简易电子琴的工作原理音乐产生原理及硬件设计由于一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
该电子琴可以实现两个功能,用按键CS来选择不同功能,第一种功能是用手动即通过按键的形式输入不同音名,第二种功能是音乐发生器,可以自动重复播放“梁祝”音乐。
当CS为高电平1时,选择功能二,当CS为低电平0时,选择功能一,由于本设计是利用的GW48EDA_PK3实验系统,选择的是NO.3方案,所以要长按实验箱上的八键,才会选择功能二。
其硬件原理图如图一(图一)3.2简易电子琴的工作流程图如图二所示(图二)3.3简易电子琴中各模块的设计系统内部结构图如下图图三所示(图三)3.3.1琴/乐功能选择器BMUX模块程序:library ieee;use ieee.std_logic_1164.all;entity bmux is port(index1:in std_logic_vector(3 downto 0);index2:in std_logic_vector(3 downto 0);cs :in std_logic;toneindex:out std_logic_vector(3 downto 0)); end;architecture arc_bmux of bmux isbeginprocess(cs)begincase cs iswhen '0'=>toneindex<=index1;when '1'=>toneindex<=index2;when others=>toneindex<=null;end case;end process;end arc_bmux;3.3.3按键tone模块程序:library ieee;use ieee.std_logic_1164.all;entity tone isport(key:in std_logic_vector(6 downto 0); toneindex1:out std_logic_vector(3 downto 0)); end;architecture one of tone isbeginsearch:process(key)begincase key iswhen"0000001"=>toneindex1<="0001"; when"0000010"=>toneindex1<="0010"; when"0000100"=>toneindex1<="0011"; when"0001000"=>toneindex1<="0100"; when"0010000"=>toneindex1<="0101"; when"0100000"=>toneindex1<="0110"; when"1000000"=>toneindex1<="0111";when others=>toneindex1<="0000";end case;end process;end;3.3.4T oneT aba模块程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY ToneTaba ISPORT ( Index : IN STD_LOGIC_VECTOR (3 DOWNTO 0) ;CODE : OUT STD_LOGIC_VECTOR (3 DOWNTO 0) ;HIGH : OUT STD_LOGIC;Tone : OUT STD_LOGIC_VECTOR (10 DOWNTO 0));END;ARCHITECTURE one OF ToneTaba ISBEGINPROCESS(Index)BEGINCASE Index ISWHEN "0000" => Tone<="11111111111" ; CODE<="0000"; HIGH <='0';-- 2047HIGH <='0';-- 773;WHEN "0010" => Tone<="01110010000" ; CODE<="0010"; HIGH <='0';-- 912;WHEN "0011" => Tone<="10000001100" ; CODE<="0011"; HIGH <='0';--1036;when "0100" => tone<="10001011100" ; code<="0100"; high <='0';--1116;WHEN "0101" => Tone<="10010101101" ; CODE<="0101"; HIGH <='0';--1197;WHEN "0110" => Tone<="10100001010" ; CODE<="0110"; HIGH <='0';--1290;WHEN "0111" => Tone<="10101011100" ; CODE<="0111"; HIGH <='0';--1372;WHEN "1000" => Tone<="10110000010" ; CODE<="0001"; HIGH <='1';--1410;WHEN "1001" => Tone<="10111001000" ; CODE<="0010"; HIGH <='1';--1480;WHEN "1010" => Tone<="11000000110" ; CODE<="0011"; HIGH <='1';--1542;WHEN "1100" => Tone<="11001010110" ; CODE<="0101"; HIGH <='1';--1622;HIGH <='1';--1668;WHEN "1111" => Tone<="11011000000" ; CODE<="0001"; HIGH <='1';--1728;WHEN OTHERS => NULL;END CASE;END PROCESS;END;。
课程设计【简易电子琴设计】报告书
课程设计报告题目课程名称院部名称专业班级学生姓名学号课程设计地点课程设计学时指导教师简易电子琴电路制作一实验目的1.学习调试电子电路的方法,提高实际动手能力。
2.了解由振荡电路与功率放大电路结合构成简易电子琴的电路及原理。
二实验内容【实验原理】1.简易电子琴电路是将振荡电路与功率放大电路结合的产物。
(1)RC振荡电路(如图1所示)是由RC选频网络和同向比例运算电路组成,对不同频率的输入信号产生不同的响应。
1、RC桥式振荡电路1.1、电路图RC桥式振荡电路如图1所示。
1.2、RC串并联选频网络RC桥式振荡电路可以选出特定频率的信号。
具体实现过程的关键是RC串并联选频网络,其理论推导如下:可得选频特性:即当f0=1/(2πRC)时,输出电压的幅值最大,并且输出电压是输入电压的1/3,同时输出电压与输出电压同相。
通过该RC串并联选频网络,可以选出频率稳定的正弦波信号,也可通过改变R,C的取值,选出不同频率的信号。
2、振荡条件2.1、自激振荡条件图2所示为含外加信号的正弦波振荡电路,其中A,F分别为放大器回路和反馈网络的放大系数。
图2中若去掉Xi,由于反馈信号的补偿作用,仍有信号输出,如图3所示Xf=Xi,可得自激振荡电路。
自激振荡必须满足以下条件:2.2、起振条件自激振荡的初始信号一般较小,为了得到较大强度的稳定波形,起振条件需满足|A·F|>1。
在输出稳定频率的波形前,信号经过了选频和放大两个阶段。
具体来说,是对于选定的频率进行不断放大,非选定频率的信号进行不断衰减,结果就是得到特定频率的稳定波形。
设计方案1、设计电路图设计电路图如图4所示。
图4即是八音阶微型电子琴的原理电路图,8个开关对应着电子琴8个音阶琴键,使用时只能同时闭合一个开关。
在实际电路中,为达到起振条件AF>1,常用两个二极管与电阻并联,可实现类似于热敏电阻的功效。
另外需要说明的是,理论上电路的初始信号是由环境噪声及电路本身的电压提供的。
基于vhdl八音符电子琴电路设计
目录一、设计任务与要求 (1)二、总体框图 (2)三、选择器件 (5)四、功能模块 (6)1.Songer模块 (6)1.1NoteTabs模块 (6)1.2ToneTaba模块 (11)1.3Speakera模块 (13)2.div模块 (16)3.七段译码器模块 (18)五、总体设计电路图 (21)1.顶层设计的电路原理图 (21)2.顶层设计的仿真结果 (23)3.电路的管脚图 (23)六、结束语 (24)七、心得体会 (25)八音符电子琴电路设计一、设计任务与要求在EDA开发平台上利用VHDL语言设计一个八音符电子琴,由键盘输入控制音响或自动演奏。
用户可以将自己编制的乐曲存入电子琴,演奏时可以选择键盘输入乐曲或者自动演奏已存入的乐曲。
二、总体框图系统设计方案:方案一:采用单个的逻辑器件组合实现。
这样虽然比较直观,逻辑器件分工鲜明,思路也比清晰,一目了然。
但是由于元器件种类、个数繁多,而过于复杂的硬件电路也容易引起系统的精度不高、体积过大等不利因素。
例如八个不同的音符是由八个不同的频率来控制发出的,而采用方案一就需要运用不同的分频器来对信号进行不同程度的分频。
所用仪器之多显而易见。
方案二:采用VHDL语言编程来实现电子琴的各项功能。
系统主要由电子琴发声模块、选择控制模块和储存器模块组成。
和方案一相比较,方案二就显得比较笼统,只是把整个系统分为了若干个模块,而不牵涉到具体的硬件电路。
但是我们必须看到用超高速硬件描述语言VHDL的优势,它不仅具有良好的电路行为描述和系统描述的能力而且通俗易懂。
经过对以上两种方案的分析、比较和总结,我们选用方案二来进行八音符电子琴的设计。
八音符电子琴设计总体框图,如图1:图1 八音符电子琴设计总体框图该系统由三个模块:Songer、Div和SEG7(7段译码器)组成。
1. Songer模块:此模块包括3个小模块,分别是NoteTabs模块,ToneTab模块和Speakera模块。
8键电子琴的设计
简易电子琴设计说明一、方案选择1、任务要求1)、任务:设计并制作一个能完成电子琴基本功能的电路。
2)、技术要求:①发生器件为8Ω、0.25W动圈式扬声器;②设置至少八个音符的按键;③+5V稳压电源供电。
3)、发挥要求:①增加演奏三首固定乐曲的按键;②增加其他音乐效果;③固定乐曲演奏计时。
2、设计方案用AT89C51单片机为核心控制元件,设计一个简易的电子琴. 本方案以AT89C51单片机作为主控核心,并与键盘、扬声器等模块组成,设有16个按键和一个扬声器.根据使用者的操作随意弹奏想要表达的音乐。
一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,其中T0用来产生音频频率,T1用来产生音调。
,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
通过对单片机系统的学习和认识,我们可以通过AT89C51可以完成此建议电子琴的任务,因为我们学过并且有很多的资料里,但是使用AT89C51单片机做此电子琴是我们的不二选择,因为我们的了解和接触最多的就是AT89C51,别的型号的芯片我们不熟,所以AT89C51是个很好的选择。
AT89C51单片机有128B的数据存储器RAM,对于一般的小型应用系统已经够用,对需要存放大量数据的系统,就需要扩展数据存储器。
作为数据存储器的使用有静态读/写存储器SRAM,动态读写存储器DRAM和E²PROM存储器等。
单片机一般用SRAM扩展数据存储器。
本次设计共有十六个键,由于在音阶中“0”不代表任何音阶,所以,没有使用“0”键。
其余15个键是发生键,按键时间长发生长,按键时间短发生短;按“唱歌键”后,再按“1”键或“2”建….“14”键,可播放14个键所代表的14首歌曲;按“1”到“F”键后,可发出低、中音哆、来、咪、发、梭、拉、西、哆。
简易电子琴设计数电课程设计
长沙学院数电课程设计说明书题目简易电子琴设计系(部)专业(班级)姓名学号指导教师起止日期数字电子技术课程设计任务书(16)系(部):专业指导教师:长沙学院课程设计鉴定表概要 (5)目录一、简易电子琴的简介 (6)1、电子琴设计的背景 (6)3、电子琴设计的目标 (6)二、简易电子琴的工作原理电路以及方案选择分析 (7)1、简易电子琴的工作原理及其电路 (7)2、方案选择分析 (8)三、用multisim仿真图及仿真数据分析 (9)1、仿真图 (9)2、仿真数据结合电路分析: (13)四、设计心得体会 (14)五、参考文献 (14)概要随着电子信息社会的进步发展,音乐逐渐成为我们生活中很重要的一部分,电子琴则是一种很常见的键盘乐器,是现代电子科技和音乐结合的产物。
在各个领域扮演很重要的角色,早已融入现代人们的日常生活中,成为不可替代的一部分。
我们人类的乐器创作非常广泛,几乎在更大软件均有乐器制造,制作乐器也是和我们电子信息工程的专业知识相结合,所以本文就设计了一个简易电子琴。
此次试验实现了8个音阶的振荡频率控制的音调,成功实现简易电子琴的基本功能。
本实验着重讲述了如何使用555制作简易电子琴产生8个不同音阶控制电路的设计,当操作者按下8个按键即可产生8种不同的音调,然后通过LM386功率放大器进行音调放大。
在multisim软件仿真中,由于没有LM386芯片,本实验通过用TDA2030替代LM386完成了简易电子琴的仿真,其基本的设计思路是采用了模块设计:实现基本要求时只要用555构成多谐振荡电路,通过不同的电阻(用变阻器调节成8个所需电阻)来获得不同的频率,再经过LM386放大所以发出不同的音调。
如果要实现提高要求则需要在基本要求上添加一部分电路即可。
通过开关控制不同的电阻所对应的振荡电路的通断调节相应频率大小,从而产生不同的音调。
此次试验我们在图书馆以及网上查找了大部分资料实验才得以完成,最简易的电子琴工作原理有利于对高端音乐软件产品的研究。
简易电子琴电路的设计
1. 技术指标 (1)2. 设计方案及其比较 (1)2.1 方案一 (1)2.2 方案二 (3)2.3 方案比较 (6)3. 实现方案 (6)4. 调试过程及结论 (10)5. 心得体会 (16)6. 参考文献 (16)简易电子琴电路的设计1.技术指标设计一个玩具电子琴,设8个琴键,分别代表1、2、3、4、5、6、7、į八个不同音符,每按下一个琴键,扬声器发出一个音符的声音。
演奏时的音量和节拍可以调节。
2.设计方案及其比较2.1 方案一选用RC振荡电路和运算放大器构成简易电子琴电路。
RC振荡电路的具体电路为文氏桥正弦振荡电路。
电路原理图如下图1。
图1 简易电子琴电路原理图其中1C和按键电阻并联,2C和12R串联,两者共同构成RC串并联选频网络。
由于选频网络的相移为零,这样RC串并联选频网络送到运算放大器同相输入端的信号电压与输出电压同相,所以RC反馈网络形成正反馈,满足相位平衡条件,因而可以形成振荡。
由于振荡的能量是电源,激励信号源是电路中的噪声,它的频谱丰富,包含频率成分f;但由于噪声信号极其微弱,在振荡期间应使信号做增幅振荡,为此合理选择电阻使0ω信号就会通过正反馈而使得输出信号不断增大,使输出幅环路增益大于1,这样频率为0度越来越大,最后受电路中非线性元件的限制,使振荡幅度自动稳定下来,电路进入等幅振荡。
频率0f之外的信号由于不满足振荡平衡条件,将不会在输出信号中出现,RC选频网络实现了信号频率的选择功能。
按键电阻的选择:查阅资料得知八个音阶的频率如下表1:表1 八个音阶的频率由于1C的值确定为0.1uF,由公式:fπ2/1=(1)fRC0=并结合表一计算可得电阻阻值分别为(单位:欧姆):36kR3.1=(2)28R7.k2=(3)23R3.k3=(4)20kR4.4=(5)16kR2.5=(6)k13R1.6=(7)R3.10k7=(8)R1.9k8=(9)通过阻值选择电阻器件。
电路要求不仅能够振荡,而且能够稳幅。
数字电子EDA课程设计八音电子琴
燕山大学EDA课程设计实验报告院系:信息科学与工程学院姓名: 班级: 学号: 日期:[实验名称] 八音电子琴[实验要求] 1.能发出1.2.3.4.5.6.7.i八个音2.用按键作为键盘3.C调至B调对应频率如下表音调C(高音) BAGFEDC 频率(Hz) 261.63x2 493.88 440.00 392.00 349.23 329.63 293.66 261.63[实验电路设计]1.命题分析根据命题的要求,要使扬声器发音,需要在其输入信号端连接一个对应频率的方波信号.实验使用的信号源可以提供从几Hz到几兆Hz不等的信号频率,自然可以想到本实验命题的关键是一个具有相应分频比的分频器.考虑到硬件(按钮)在实际工作过程中会因元件的接触产生一些不可避免的抖动脉冲电平,会对实验造成影响,因此需要在按键接入线路中安装防抖动电路.2.设计过程1>分频器为了取得合适的电路复杂度和可接受的误差范围,分频器的时钟信号选取为器件所提供的JPCK—1 (3MHz音频信号).然后通过计算,用时钟信号频率除以各发音频率,得到的分频比如下表:分频比(16进制)5DEE63846F847D628ADE951CA760BBDE 频率(Hz) 高C:261.63x2 B:493.88 A:440.00 G:392.00 F:349.23 E:329.63D:293.66 C:261.63利用四片十六进制计数器74LS161就可以连接成适用的分频器.分频器连接完成后会产生一个预定频率的周期脉冲.但是实验要求的方波其占空比应该为1:1,因此在输出脉冲端加装一个T触发器,每次脉冲到达触发器的时候输出便会跳变电平,这就达到了驱动扬声器的条件.但是在应用了T触发器后输出方波的周期比预定的扩大了一倍,也就是说频率减至原来的二分之一.此时应重新选择时钟信号,令其为原来2倍即可.根据实验指导书,最终确定选择的时钟信号为6MHz. 2>防抖动电路利用D触发器的电压跟随特性可以用一个频率较低的时钟信号驱动,达到防止按键抖动的目的.电路较简单,见图3.图1.时钟分频电路(downway)图2.CP为375K时上图的B4输出波形由于设计的原因,本电路只能支持单音节输入.当同时键入两个以上的音阶时,分频比较小的(比较高的音阶)优先发声.图3.按键输入防抖动电路3>电路组合组合后的电路模块如图4.共有11个输入端和1个输出端.其中,CP_6M为整个电路的主频,使用电路板上的6MHz信号输出端;CP_1US为防抖动电路中触发器所使用的时钟,要求频率不高,选择电路板提供的CLK3-3(12Hz); KEYCa-B是电子琴的输入按键接口,依次是从低音到高音.Speaker是电路的输出端,接入扬声器,为其产生相应音阶的频率. 实际电路如图4. 连接完成后,对该电路进行仿真测试,如图5,令其CP_6M为6MHz,CP_1US为一个较低频率脉冲,设臵KEYB(音节B)为有效电平,在speaker上得到的输出频率为493,与实际音节的频率相同.图4.八音电子琴图5.电子琴完成品的仿真波形T触发器2分频电路[硬件测试][实习心得]第一感觉,数字电子技术EDA实习很有意思.我们可以有充分的时间去思考怎么做出一个东西,这个东西的用处也许不大甚至几乎没有,但重要的是思考的过程:从它的用途总结出它的特性,从它的特性构思出它的原理,从原理到构建模型,再到模型的实现,利用已有的知识,可用的元件,最终组合出一个具有高度逻辑性的组合电路,这和我们小时候玩搭积木差不多.把积木一块块的搭成一座城堡,中间缺少任何一层甚至任何一块,城堡都可能会倒塌.同理,在我们构建命题所给的元器件时任何一个逻辑错误都可能是致命的,导致最后无法出现正确结果或者干脆不能用.因此,实习,有意思的同时还不能大意.这是一个锻炼逻辑思维和思维严谨性的极好的机会,我和我的同学们在这次工作中受益非浅.大家都积极思思考,查找资料,集思广益来解决现有的问题。
基于51单片机的简易电子琴设计
基于51单片机的简易电子琴设计一、设计任务及要求1、在该简易电子琴设计中,设置8个按键,8个按键可以发出do、re、mi、fa、sol、la、si、Do 8个音阶。
2、设计三个拨码开关,三个拨码开关可以调节高音、中音、低音三个音调。
3、画出电路的总体方框图和电路原理图。
二、设计原理音乐由许多不同的音阶组成的,而每个音阶对应着不同的频率,这样,我们就可以利用不同的频率组合,构成我们想要的音乐。
简易电子琴是摁下拨码开关时,单片机AT89C51会发出声音,声音从端口经过LM386,经过放大以后传入喇叭。
声音主要是经过单片机4×4矩阵键盘的按键产生,这里只用到8个按键来产生高中低的8个音阶,来产生do re mi fa sol la si Do。
下面是计数初值:#6LA# 466 1072 64463 高3MI 1318 372 65157低7SI 494 1012 64524 高4FA 1397 358 65178中1DO 523 0956 64580 #4FA# 1480 338 65198#1DO# 554 0903 64633 高5SO 1568 319 65217中2RE 578 0842 64684 #5SO# 1661 292 65235#2RE# 622 0804 64732 高6LA 1760 284 65252中3MI 659 0759 64777 #6LA# 1865 268 65268中4FA 698 0716 64820 高7SI 1976 253 65283 三、设计方案本次设计的电子琴主要是利用AT89C51单片机为核心控制元件,同时还包括键盘、拨码开关和扬声器等控制模块,由键盘选择八个音阶。
1、电路原理图的总体设计总体电路需要c51单片机一片,音乐按键及喇叭等外围电路,要进行音调控制和音频放大,设计好的电路图如下图所示:2、键盘控制模块的设计矩阵按键部分由8个轻触按键按照2行4列排列,连接到P3端口。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录摘要 (2)关键字 (2)第一章系统设计 (2)1.1 设计要求 (2)1.1.1 基本部分 (2)1.1.2 发挥部分 (2)1.2总体设计方案 (2)1.2.1 设计思路 (3)1.2.2 方案比较 (3)1.2.3 系统组成和工作原理 (3)第二章单元电路设计 (4)2.1顶层模块(top)的设计 (4)2.2自动演奏模块(automusic)的设计 (4)2.3音调发生模块(tone)的设计 (4)2.4数控分频模块(speaker)的设计 (4)第三章软件设计 (5)3.1VHDL语言简介 (5)3.2软件设计 (5)第四章系统测试 (6)4.1测试使用的仪器 (6)4.2测试方法 (6)4.3指标测试和测试结果 (6)第五章结束语 (6)第六章参考文献 (6)第七章附录 (7)电子琴的设计摘要:用可编程逻辑器件(PLD)来完成该设计。
核心是一数控分频器,对输入的脉冲进行分频,得到每个音阶对应的频率,由此实现简易电子琴的发音功能。
电子琴可演奏由键盘输入的音阶或切换到自动演奏存储在电子琴内的乐曲。
本设计基于超高速硬件描述语言VHDL在Xilinx公司的SpartanⅡ系列的XC2S2005PQ-208芯片上编程实现;经仿真,硬件测试和调试基本能够达到技术指标,实验结果和仿真结果基本一致。
关键词:PLD,VHDL,数控分频,电子琴The Design of Electrical OrganCao Xueke Tan Xianfeng Tian Dandan(Nanhua University HengYang Hunan 421001)Teacher:Wang YanAbstract:The design is accomplished with Programmable-Logic-Device (PLD). The core of it isa numerical control frequency divider, which can divide the input pulse into the corresponding frequency to the musical scale, so that it can achieve the sounding function of simple electronic organ. The organ can play the musical scale put in with a keyboard or switch to auto play the melody stored in it. The design is programmed with VHDL and realized in the chip of XC2005PQ-208 Xilinx series. It can basically reach the technique index after simulating, hardware debugging. The experiment result is consonant with the simulating result.Keywords:PLD, VHDL, numerical control frequency divider, electrical organ第一章系统设计1.1 设计要求1.1.1 基本部分设计一八音电子琴,由键盘输入来控制其对应的音响。
1.1.2 发挥部分设计一乐曲自动演奏器,由用户自己编制乐曲存入电子琴,电子琴可以完成自动演奏的功能。
1.2 总体设计方案1.2.1 设计思路通过可编程逻辑器件(PLD)和VHDL硬件描述引言来实现电子琴的基本部分和发挥部分的设计。
对于基本部分,设计的主体是数控分频器,对输入的频率进行分频,得到各个音阶对应的频率最为输出。
对于发挥部分,则在原设计的基础上,增加一个乐曲存储模块,代替了键盘输入,产生节拍控制(index数据存留时间)和音阶选择信号,即在此模块中可存放一个乐曲曲谱真值表,由一个计数器来控制此真值表的输出,而由此计数器的计数时钟信号作为乐曲节拍控制信号,从而可以设计出一个纯硬件的乐曲自动演奏电路。
1.2.2方案比较方案一:由单片机来完成设计。
可用单片机控制键盘的输入,以及产生相应的频率信号作为输出。
目前,单片机的功能已比较强大,集成度日益增高且其设计和控制比较容易。
但是由于在传统的单片机设计系统中必须使用许多分立元件组成单片机的外围电路,如锁存器,译码器等都需要单独的电路,因此整个系统显得十分复杂,抗干扰性差,在运行过程中容易死机或进入死循环,可靠性降低,而功耗费用增高。
方案二:利用PLC来完成设计。
目前利用PLC的技术已经比较成熟。
PLC有其优点,其性能优异,体积小,可靠性和精度都比较好,在电子琴的设计中可采用PLC来完成硬件的控制,但是用PLC实现编程相对比较复杂,对于电子琴这种小型设计来说成本过高,。
方案三:利用可编程逻辑器件PLD来完成该设计。
利用PLD可以很好的解决上述的问题。
它的成品体积小,适合电子琴这种小型设计。
其性能稳定,控制精度高(Xilinx公司的高密度,高速可预测延时,高性能系列芯片),易于管理和屏蔽,抗干扰能力强,可靠性高。
综上,在本设计中选择第三种方案最优。
1.2.3系统组成及工作原理图1-2-3-1为系统的工作原理框图。
由于实验设备所限,提供的基准脉冲为32MHz,所以在本设计中需要将其进行分频,以得到所需要的脉冲(实际在设计中将分频部分包括了在了音乐存储和音调发生两个模块中,没有单独列出)。
键盘编码器的作用是对键盘按键输入的信号进行检测,并且产生相应的分频系数。
自动演奏/按键输入切换的目的是针对设计要求基本部分和发挥部分的切换而提出的。
它也不是一个单独的模块,它的作用相当于一个开关,在音调发生器中选择是接收来自音乐存储器中的信号,还是来自在键盘编码器中的信号。
如果该信号为1,则选择的是手动输入,而为0的时候是演奏音乐存储器里面的乐曲。
音调发生器的主要部分是一个数控分频器,它由一个初值可预置的加法计数器构成,详细工作原理将在后文做介绍,当它接收到一个分频信号时,便对端口的16MHz的输入频率进行分频,之后由扬声器输出对应的声调。
图1-2-3-1 工作原理框图第二章单元电路设计2.1 顶层模块的设计VHDL采用的是自顶向下的设计方式,顶层模块由乐曲自动演奏(automusic),音调发生器(tone)和数控分频器(speaker)三个模块组成。
图2-1-1即是顶层设计原理图。
其中乐曲演奏部分又包括了键盘编码。
设置一个自动演奏/键盘输入切换auto,即当auto=¹0¹时,选择自动演奏音乐存储器里面的乐曲,auto=¹1¹时,选择由键盘输入的信号,再对其进行编码,输出的都是八位二进制数,对应音调发生器的输入。
图2-1-1 顶层设计原理图2.2 自动演奏模块(automusic)的设计为了实现扩展部分的设计,便需要多加上一个音乐存储模块,该模块的作用是产生8位发声控制输入index,auto为0或1时可以选择自动演奏或者键盘输入,如果auto为0,则而由存储在此模块中的8位二进制数来作为发声控制输入,由此便可自动演奏乐曲。
此模块的VHDL语言中包括两个进程,首先是对基准脉冲进行分频得到4Hz的脉冲,作为第二个进程的时钟信号,它的目的是控制每个音阶之间的停顿时间,此处便是1/4=0.25s,第二个进程是音乐的存储,可根据需要编写不同的乐曲。
2.3 音调发生器(tone)模块的设计音调发生器的作用是产生获得音阶的分频预置值。
当8位发声控制输入index中的某一位为高电平时,则对应某一音阶的数值将以端口tone输出,作为获得该音阶的分频预置值,该值作为数控分频器的输入,来对4MHz的脉冲进行分频,由此得到每个音阶相应的频率,例如输入index="00000010",即对应的按键是2,产生的分频系数便是6809;由code 输出对应该音阶简谱的显示数码;由high输出指示音阶高8度的显示,低电平有效。
2.4 数控分频模块(speaker)的设计数控分频模块的目的是对基准脉冲分频,得到1,2,3,4,5,6,7七个音符对应频率。
该模块的VHDL描述中包含了三个进程。
首先对32MHz的基准脉冲进行分频得到8MHz的脉冲,然后按照tone1输入的分频系数对4MHz的脉冲再次分频,得到的便是所需要的频率。
而第三个进程的作用是在音调输出时再进行二分频,将脉冲展宽,以使扬声器有足够功率发音。
第三章软件设计3.1 VHDL硬件描述语言简介PLD的软件已发展得相当完善,利用VHDL硬件描述语言来实现程序的编制,这样硬件的功能描述可以完全在软件上实现。
VHDL是用于逻辑设计的硬件描述语言,成为IEEE标准。
它作为描述硬件电路的语言,有以下特点:(1)VHDL的宽范围描述能力使它成为高层次设计的核心,将设计人员的工作重心提高到了系统功能的实现与调试,而花较少的精力于物理实现。
(2)VHDL可以用简洁明确的代码描述来进行复杂控制逻辑的设计,灵活且方便,而且也便于设计结果的交流、保存和重用。
(3)VHDL的设计不依赖于特定的器件,同一个HDL原码可以综合成FPGA或ASIC,方便了工艺的转换。
(4)VHDL是一个标准语言,为众多的EDA厂商支持,而且设计出来的电路大多数并行运行,因此移植性好且速度快。
采用VHDL语言设计复杂数字电路的方法具有很多优点,其语言的设计技术齐全、方法灵活、支持广泛。
它可以支持自顶向下(Top Down)和基于库(Library_Based)的设计方法,而且还支持同步电路、异步电路、FPGA以及其他随机电路的设计,其范围很广,语言的语法比较严格,给阅读和使用都带来了极大的好处。
3.2 软件设计本设计采用Xilinx公司的EDA软件系统Foundation Series ISE 4.2i来完成。
采用自顶向下的设计方法。
图3.2.1为其软件流程图。
软件设计采用结构化程序设计方法,功能模块各自独立,实际上在设计中将键盘输入和乐曲存储放在了一个自动演奏模块中,软件设计的核心部分是数控分频器,键盘输入和乐曲储存都是提供给它相应的分频比。
对输入的基准时钟进行多次分频,最终输出的就是想得到的音阶的频率。
VHDL描述语言和仿真图详见附录。
第四章系统测试4.1测试使用的仪器Xilinx公司的SpartanⅡ系列的XC2S2005PQ-208芯片清华同方TPG-FPGA教学实验箱4.2测试方法首先用Xilinx公司的仿真工具Modelsim Xilinx Edition进行对系统的仿真。