当前位置:文档之家› 实验九 硬件乐曲自动演奏电路设计

实验九 硬件乐曲自动演奏电路设计

实验九 硬件乐曲自动演奏电路设计
实验九 硬件乐曲自动演奏电路设计

验十硬件乐曲自动演奏电路设计

1、实验目的:学习利用数控分频器设计硬件电子琴实验。

2、实验仪器:PC机,操作系统为Windows2000/xp,Quartus II 5.1 设计平台,GW48

系列SOPE/EDA实验开发系统。

3、实验原理:

本设计乐曲选取《梁祝》中化蝶部分,其简谱如图1所示。

图1 《梁祝》中化蝶部分简谱

组成乐曲的每个音符的发音频率值及其持续的时间是乐曲能连续演奏所需的2个基本要素,首先让我们来了解音符与频率的关系。乐曲的12平均率规定:每2个八度音(如简谱中的中音1与高音1)之间的频率相差1倍。在2个八度音之间,又可分为12个半音,每2个半音的频率比为。另外,音符A(简谱中的低音6)的频率为440Hz,音符B到C之间、E到F之间为半音,其余为全音。由此可以计算出简谱中从低音1至高音1之间每个音符的频率,如表1所示。

表1 简谱中音符与频率的关系

4、主系统由4个模块组成;例1-1是顶层设计文件,其内部有三个功能模块(如图2

所示):Tone.VHD(例1-2)和Speaker.VHD(例1-3)及Notetabs.VHD(例1-4).

模块TONE是音阶发生器,当4位发声控制输入INDEX中某一位为高电平时,则对应某一音阶的数值将从端口TONE输出,作为获得该音阶的分频预置值;同时由CODE输出对应该音阶简谱的显示数码,如‘5’,并由HIGH输出指示音阶高8度显示。由例6-28可见,其语句结构只是类似与真值表的纯组合电路描述,其中的音阶分频预置值,如Tone <= 1290是根据产生该音阶频率所对应的分频比获得的。

图2 硬件电子琴电路结构

模块SPEAKER中的主要电路是一个数控分频器,它由一个初值可预置的加法计数器构成,当模块SPEAKER由端口TONE获得一个2进制数后,将以此值为计数器的预置数,对端口CLK12MHZ输入的频率进行分频,之后由SPKOUT向扬声器输出发声。

模块NOTETABS,用于产生节拍控制(INDEX数据存留时间)和音阶选择信号,即在NOTETABS模块放置一个乐曲曲谱真值表,由一个计数器的计数值来控制此真值表的输出,而由此计数器的计数时钟信号作为乐曲节拍控制信号,从而可以设计出一个纯硬件的乐曲自动演奏电路。

试完成此项设计,并在EDA实验系统上的FPGA目标器件中实现之。

5、实验内容:编译适配以上4个示例文件,给出仿真波形,最后进行下载和硬件测试实验。建议使用实验电路模式“3”(附图2-5),用短路帽选择“CLOCK9”的输入频率选择12MHz,此信号作为系统输入信号CLK12MHZ;CLK8HZ与clock2相接,接受4Hz频率;键8至键1 作为INDEX输入信号控制各音阶;选择数码管1显示琴音简谱码,发光管D1显示高8度。

6、思考题1:例1-3中的进程DelaySpkS对扬声器发声有什么影响?

7、思考题2:电路上应该满足哪些条件,才能用数字器件直接输出的方波驱动扬声器发声?

8、实验报告:用仿真波形和电路原理图,详细叙述硬件电子琴的工作原理及其4个VHDL 文件中相关语句的功能,叙述硬件实验情况.。

附录;

【例10-1】

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY TOP IS -- 顶层设计

PORT ( CLK12MHZ : IN STD_LOGIC;

CLK8HZ : IN STD_LOGIC;

CODE1 : OUT INTEGER RANGE 0 TO 15;

HIGH1,SPKOUT : OUT STD_LOGIC);

END;

ARCHITECTURE one OF TOP IS

COMPONENT Tone

PORT ( Index : IN INTEGER RANGE 0 TO 15;

CODE : OUT INTEGER RANGE 0 TO 15;

HIGH : OUT STD_LOGIC;

Tone : OUT INTEGER RANGE 0 TO 16#7FF# ); --11位2进制数 END COMPONENT;

COMPONENT Speaker

PORT ( clk : IN STD_LOGIC;

Tone1 : IN INTEGER RANGE 0 TO 16#7FF#; --11位2进制数 SpkS : OUT STD_LOGIC );

END COMPONENT;

component Notetabs

Port ( clk :in std_logic;

index0 : out INTEGER RANGE 0 TO 15);

end component;

SIGNAL Tone2 : INTEGER RANGE 0 TO 16#7FF#;

SIGNAL Indx: INTEGER RANGE 0 TO 15;

BEGIN -- 安装U1, U2, U3

u1 : Tone PORT MAP (Index=>Indx, Tone=>Tone2,CODE=>CODE1,HIGH=>HIGH1); u2 : Speaker PORT MAP (clk=>CLK12MHZ,Tone1=>Tone2, SpkS=>SPKOUT );

u3 : Notetabs PORT MAP(clk=>CLK8HZ,Index0=>Indx);

END;

【例10-2】

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY Tone IS

PORT ( Index : IN INTEGER RANGE 0 TO 15;

CODE : OUT INTEGER RANGE 0 TO 15;

HIGH : OUT STD_LOGIC;

Tone : OUT INTEGER RANGE 0 TO 16#7FF# );

END;

ARCHITECTURE one OF Tone IS

BEGIN

Search : PROCESS(Index)

BEGIN

CASE Index IS -- 译码电路,查表方式,控制音调的预置数 WHEN 0=>Tone <= 2047; CODE <= 0; HIGH <= '0';

WHEN 1=>Tone <= 773; CODE <= 1; HIGH <= '0';

WHEN 2=>Tone <= 912; CODE <= 2; HIGH <= '0';

WHEN 3=>Tone <= 1036; CODE <= 3; HIGH <= '0';

WHEN 5=>Tone <= 1197; CODE <= 5; HIGH <= '0';

WHEN 6=>Tone <= 1290; CODE <= 6; HIGH <= '0';

WHEN 7=>Tone <= 1372; CODE <= 7; HIGH <= '0';

WHEN 8=>Tone <= 1410; CODE <= 1; HIGH <= '1';

WHEN 9=>Tone <= 1480; CODE <= 2; HIGH <= '1';

WHEN 10=>Tone <= 1542; CODE <= 3; HIGH <= '1';

WHEN 12=>Tone <= 1622; CODE <= 5; HIGH <= '1';

WHEN 13=>Tone <=1668; CODE <= 6; HIGH <= '1';

WHEN 15=>Tone <= 1728; CODE <= 1; HIGH <= '1';

WHEN OTHERS =>NULL;

END CASE;

END PROCESS;

END;

【例10-3】

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY Speaker IS

PORT ( clk : IN STD_LOGIC;

Tone1 : IN INTEGER RANGE 0 TO 16#7FF#;

SpkS : OUT STD_LOGIC );

END;

ARCHITECTURE one OF Speaker IS

SIGNAL PreCLK , FullSpkS : STD_LOGIC;

BEGIN

DivideCLK : PROCESS(clk) -- 将CLK进 11分频,PreCLK为C L 11K 6分频

VARIABLE Count4 : INTEGER RANGE 0 TO 15;

BEGIN

PreCLK <= '0';

IF Count4 > 11 THEN PreCLK <= '1'; Count4 := 0;

ELSIF clk'EVENT AND clk='1' THEN Count4 := Count4 + 1;

END IF;

END PROCESS;

GenSpkS : PROCESS(PreCLK, Tone1)

VARIABLE Count11 : INTEGER RANGE 0 TO 16#7FF#;

BEGIN -- 11位可预置计数器

IF PreCLK'EVENT AND PreCLK = '1' THEN

IF Count11=16#7FF# THEN Count11 := Tone1; FullSpkS <= '1'; ELSE Count11:=Count11 + 1; FullSpkS <= '0';

END IF;

END IF;

END PROCESS;

DelaySpkS : PROCESS(FullSpkS)

VARIABLE Count2 : STD_LOGIC;

BEGIN

IF FullSpkS'EVENT AND FullSpkS = '1' THEN Count2 := NOT Count2;

IF Count2 = '1' THEN SpkS <= '1';

ELSE SpkS <= '0';

END IF;

END IF;

END PROCESS;

END;

【例10-4】

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity Notetabs is

Port ( clk: in std_logic; --系统时钟;键盘输入/自动演奏 index0 : out INTEGER RANGE 0 TO 15); --音符信号输出

end NOTETABS;

architecture Behavioral of Notetabs is

signal count0:integer range 0 to 138;--change

begin

music:process(clk) --此进程完成自动演奏部分曲的地址累加begin

if clk'event and clk='1' then

if count0=138 then count0<=0;

else count0<=count0+1;

end if;

end if;

end process;

com1:process(count0)

begin

case count0 is --此case语句:存储自动演奏部分的曲when 00 =>index0<=3;

when 01 =>index0<=3;

when 02 =>index0<=3;

when 03 =>index0<=3;

when 04 =>index0<=5;

when 05 =>index0<=5;

when 06 =>index0<=3;

when 07 =>index0<=6;

when 08 =>index0<=8;

when 09 =>index0<=8;

when 10 =>index0<=8;

when 11 =>index0<=9;

when 12 =>index0<=6;

when 13 =>index0<=8;

when 14 =>index0<=5;

when 15 =>index0<=5;

when 16 =>index0<=12;

when 17 =>index0<=12;

when 18 =>index0<=12;

when 19 =>index0<=15;

when 20 =>index0<=13;

when 21 =>index0<=12;

when 22 =>index0<=10;

when 23 =>index0<=12;

when 25 =>index0<=9; when 26 =>index0<=9; when 27 =>index0<=9; when 28 =>index0<=9; when 29 =>index0<=9; when 30 =>index0<=9; when 31 =>index0<=0; when 32 =>index0<=9; when 33 =>index0<=9; when 34 =>index0<=9; when 35 =>index0<=10; when 36 =>index0<=7; when 37 =>index0<=7; when 38 =>index0<=6; when 39 =>index0<=6; when 40 =>index0<=5; when 41 =>index0<=5; when 42 =>index0<=5; when 43 =>index0<=6; when 44 =>index0<=8; when 45 =>index0<=8; when 46 =>index0<=9; when 47 =>index0<=9; when 48 =>index0<=3; when 49 =>index0<=3; when 50 =>index0<=8; when 51 =>index0<=8; when 52 =>index0<=6; when 53 =>index0<=5; when 54 =>index0<=6; when 55 =>index0<=8; when 56 =>index0<=5; when 57 =>index0<=5; when 58 =>index0<=5; when 59 =>index0<=5; when 60 =>index0<=5; when 61 =>index0<=5; when 62 =>index0<=5; when 63 =>index0<=5; when 64 =>index0<=10; when 65 =>index0<=10; when 66 =>index0<=10; when 67 =>index0<=12;

when 69 =>index0<=7; when 70 =>index0<=9; when 71 =>index0<=9; when 72 =>index0<=6; when 73 =>index0<=8; when 74 =>index0<=5; when 75 =>index0<=5; when 76 =>index0<=5; when 77 =>index0<=5; when 78 =>index0<=5; when 79 =>index0<=5; when 80 =>index0<=3; when 81 =>index0<=5; when 82 =>index0<=3; when 83 =>index0<=3; when 84 =>index0<=5; when 85 =>index0<=6; when 86 =>index0<=7; when 87 =>index0<=9; when 88 =>index0<=6; when 89 =>index0<=6; when 90 =>index0<=6; when 91 =>index0<=6; when 92 =>index0<=6; when 93 =>index0<=6; when 94 =>index0<=5; when 95 =>index0<=6; when 96 =>index0<=8; when 97 =>index0<=8; when 98 =>index0<=8; when 99 =>index0<=9; when 100=>index0<=12; when 101=>index0<=12; when 102=>index0<=12; when 103=>index0<=10; when 104=>index0<=9; when 105=>index0<=9; when 106=>index0<=10; when 107=>index0<=9; when 108=>index0<=8; when 109=>index0<=8; when 110=>index0<=6; when 111=>index0<=5;

when 113=>index0<=3; when 114=>index0<=3; when 115=>index0<=3; when 116=>index0<=8; when 117=>index0<=8; when 118=>index0<=8; when 119=>index0<=8; when 120=>index0<=6; when 121=>index0<=8; when 122=>index0<=6; when 123=>index0<=5; when 124=>index0<=3; when 125=>index0<=5; when 126=>index0<=6; when 127=>index0<=8; when 128=>index0<=5; when 129=>index0<=5; when 130=>index0<=5; when 131=>index0<=5; when 132=>index0<=5; when 133=>index0<=5; when 134=>index0<=5; when 135=>index0<=5; when 136=>index0<=0; when 137=>index0<=0; when 138=>index0<=0; when others => null; end case;

end process;

end Behavioral;

乐曲硬件演奏电路设计

湖南人文科技学院 课程设计报告 课程名称:VHDL语言与EDA课程设计 设计题目:乐曲硬件演奏电路设计 系别:通信与控制工程系 专业:电子信息工程 班级:08电信二班 学生姓名: 王世伟朱彩虹 学号:08409249 08409231 起止日期:2011年06月13日~20年06月26日 指导教师:姚毅成继中

教研室主任:侯海良

摘要 乐曲演奏广泛用于自动答录装置、手机铃声、集团电话、及智能仪器仪表设备。实现方法有许多种,随着FPGA集成度的提高,价格下降,EDA设计工具更新换代,功能日益普及与流行,使这种方案的应用越来越多。如今的数字逻辑设计者面临日益缩短的上市时间的压力,不得不进行上万门的设计,同时设计者不允许以牺牲硅的效率达到保持结构的独特性。使用现今的EDA软件工具来应付这些问题,并不是一件简单的事情。FPGA预装了很多已构造好的参数化库单元LPM 器件。通过引入支持LPM的EDA软件工具,设计者可以设计出结构独立而且硅片的使用效率非常高的产品。 本课设在EDA开发平台上利用VHDL语言设计数控分频器电路,利用数控分频的原理设计乐曲硬件演奏电路,并定制LPM-ROM存储音乐数据,以“两只老虎”乐曲为例,将音乐数据存储到LPM-ROM,就达到了以纯硬件的手段来实现乐曲的演奏效果。只要修改LPM-ROM所存储的音乐数据,将其换成其他乐曲的音乐数据,再重新定制LPM-ROM,连接到程序中就可以实现其它乐曲的演奏。 关键词:FPGA;EDA;VHDL;音乐

目录 设计要求 (1) 1、方案论证与对比 (1) 1.1方案一 (1) 1.2方案二 (1) 1.3综合对比 (1) 2 乐曲演奏电路原理 (2) 2.1 音乐演奏电路原理 (2) 2.2 音符频率的获得 (2) 2.3 乐曲节奏的控制 (3) 2.4 乐谱发生器 (3) 2.5 乐曲演奏电路原理框图 (3) 3音乐硬件演奏电路的设计实现 (4) 3.1 地址发生器模块 (4) 3.1.1 地址发生器的VHDL设计 (4) 3.2 分频预置数模块 (6) 3.2.1 分频预置数模块的VHDL设计 (6) 3.3 数控分频模块 (8) 3.3.1 数控分频模块的VHDL设计 (8) 3.4 music模块 (10) 3.4.1 音符数据文件 (10) 3.5.2 LPM-ROM定制 (12) 3.6 顶层文件 (14) 4 时序仿真及下载调试过程 (16) 4.1 时序仿真图 (16) 4.2 引脚锁定以及下载 (17) 4.3调试过程及结果 (17) 5扩大乐曲硬件演奏电路的通用性 (18) 5.1 完善分频预置数模块的功能 (18) 设计总结与心得体会 (21) 参考文献 (22)

硬件电路设计过程经验分享 (1)

献给那些刚开始或即将开始设计硬件电路的人。时光飞逝,离俺最初画第一块电路已有3年。刚刚开始接触电路板的时候,与你一样,俺充满了疑惑同时又带着些兴奋。在网上许多关于硬件电路的经验、知识让人目不暇接。像信号完整性,EMI,PS设计准会把你搞晕。别急,一切要慢慢来。 1)总体思路。 设计硬件电路,大的框架和架构要搞清楚,但要做到这一点还真不容易。有些大框架也许自己的老板、老师已经想好,自己只是把思路具体实现;但也有些要自己设计框架的,那就要搞清楚要实现什么功能,然后找找有否能实现同样或相似功能的参考电路板(要懂得尽量利用他人的成果,越是有经验的工程师越会懂得借鉴他人的成果)。 2)理解电路。 如果你找到了的参考设计,那么恭喜你,你可以节约很多时间了(包括前期设计和后期调试)。马上就copy?NO,还是先看懂理解了再说,一方面能提高我们的电路理解能力,而且能避免设计中的错误。 3)没有找到参考设计? 没关系。先确定大IC芯片,找datasheet,看其关键参数是否符合自己的要求,哪些才是自己需要的关键参数,以及能否看懂这些关键参数,都是硬件工程师的能力的体现,这也需要长期地慢慢地积累。这期间,要善于提问,因为自己不懂的东西,别人往往一句话就能点醒你,尤其是硬件设计。 4)硬件电路设计主要是三个部分,原理图,pcb,物料清单(BOM)表。 原理图设计就是将前面的思路转化为电路原理图。它很像我们教科书上的电路图。

pcb涉及到实际的电路板,它根据原理图转化而来的网表(网表是沟通原理图和pcb之间的桥梁),而将具体的元器件的封装放置(布局)在电路板上,然后根据飞线(也叫预拉线)连接其电信号(布线)。完成了pcb布局布线后,要用到哪些元器件应该有所归纳,所以我们将用到BOM表。 5)用什么工具? Protel,也就是altimuml容易上手,在国内也比较流行,应付一般的工作已经足够,适合初入门的设计者使用。 6)to be continued...... 其实无论用简单的protel或者复杂的cadence工具,硬件设计大环节是一样的(protel上的操作类似windwos,是post-command型的;而cadence的产品concept&allegro是pre-command型的,用惯了protel,突然转向cadence的工具,会不习惯就是这个原因)。设计大环节都要有1)原理图设计。2)pcb设计。3)制作BOM 表。现在简要谈一下设计流程(步骤): 1)原理图库建立。要将一个新元件摆放在原理图上,我们必须得建立改元件的库。库中主要定义了该新元件的管脚定义及其属性,并且以具体的图形形式来代表(我们常常看到的是一个矩形(代表其IC BODY),周围许多短线(代表IC管脚))。protel创建库及其简单,而且因为用的人多,许多元件都能找到现成的库,这一点对使用者极为方便。应搞清楚ic body,ic pins,input pin,output pin,analog pin,digital pin,power pin等区别。 2)有了充足的库之后,就可以在原理图上画图了,按照datasheet和系统设计的要

乐器演奏电路设计-vhdl

重庆交通大学计算机与信息学院设计性实验报告 班级:通信工程专业 07 级 2 班 姓名(学号): 实验项目名称:乐器演奏电路设计 实验项目性质:设计性 实验所属课程: VHDL 实验室(中心): 指导教师:徐雯娟 实验完成时间: 2009 年 12 月 13 日

一、实验目的 1,了解普通扬声器的工作原理; 2,了解QuartusII4.1中提供了宏功能元件库mega_lpm。 3,使用LPM_ROM参数化存储模块。 二、实验内容及要求 要求能够演奏出《友谊地久天长》的曲调或可另选一段较完整的曲调。 (扩展要求:能够从数码管上显示出当前曲调的简谱和频率) 三、实验原理 1,音符的频率: 可以由上图中的U3获得,这是一个数控分频器。由其clk 端输入一具有较高频率(这里是12MHz)的信号,通过U3分频后由SPKOUT输出,U3对clk 输入信号的分频比由11位预置数Tone[10..0]决定。SPKOUT的输出频率将决定每一音符的音调,这样,分频计数器的预置值Tone[10..0]与SPKOUT 的输出频率,就有了对应关系。

2,音符的持续时间: 须根据乐曲的速度及每个音符的节拍数来确定,图中模块U2的功能首先是为U3提供决定所发音符的分频预置数,而此数在U3输入口停留的时间即为此音符的节拍值。模块U2是乐曲简谱码对应的分频预置数查表电路,其中设置了乐曲全部音符所对应的分频预置数(一共8个),每一音符的停留时间由音乐节拍和音调发生器模块U1的clk的输入频率决定(如为4Hz),这8个值的输出由对应于U2的3位输入值Index[2..0]确定。3,乐谱的存储: 在U1中设置了一个7位二进制计数器(计数最大值为65),作为音符数据ROM 的地址发生器。这个计数器的计数频率若选为4Hz,即每一计数值的停留时间为0.25秒,恰为当全音符设为1秒时,四四拍的4分音符持续时间。随着U1中的计数器按4Hz的时钟速率作加法计数时,即随地址值递增时,音符数据ROM 中的音符数据将从ROM中通过ToneIndex[2..0]端口输向U2模块,乐曲就开始连续自然地演奏起来了。 四、实验仪器、材料 1,2MHZ和4HZ的信号源 2,ACEX1K EP1K30TC144—1芯片 3,扬声器 五、方案设计(设计性实验需要,综合性实验无该项) 1,音符的产生: 音符的产生是利用数控分频器模块SPKEAR对输入的时钟信号CLK400KHZ进行分频,预置数为TONE[10..0],然后分频得出频率为CLK/2*(2048- TONE[10..0]),通过控制输入预置数TONE[10..0]来达到不同的输出频率,以达到控制扬声器发出不同的声音。 例如:当设置预置数TONE[10..0]为1538时,输出SPKEAR频率为396,为低音5。 2,频率的分频: 由于实验给定信号源为12MHZ,不满足数控分频器模块SPKEAR对输入时钟信号的要求,遂其进行30分频(PULSE30),产生0.4MHZ的时钟信号。 3,预置数的产生:

硬件电路设计基础知识

硬件电子电路基础

第一章半导体器件 §1-1 半导体基础知识 一、什么是半导体 半导体就是导电能力介于导体和绝缘体之间的物质。(导电能力即电导率)(如:硅Si 锗Ge等+4价元素以及化合物)

二、半导体的导电特性 本征半导体――纯净、晶体结构完整的半导体称为本征半导体。 硅和锗的共价键结构。(略) 1、半导体的导电率会在外界因素作用下发生变化 ?掺杂──管子 ?温度──热敏元件 ?光照──光敏元件等 2、半导体中的两种载流子──自由电子和空穴 ?自由电子──受束缚的电子(-) ?空穴──电子跳走以后留下的坑(+) 三、杂质半导体──N型、P型 (前讲)掺杂可以显著地改变半导体的导电特性,从而制造出杂质半导体。 ?N型半导体(自由电子多) 掺杂为+5价元素。如:磷;砷P──+5价使自由电子大大增加原理:Si──+4价P与Si形成共价键后多余了一个电子。 载流子组成: o本征激发的空穴和自由电子──数量少。 o掺杂后由P提供的自由电子──数量多。 o空穴──少子 o自由电子──多子 ?P型半导体(空穴多) 掺杂为+3价元素。如:硼;铝使空穴大大增加 原理:Si──+4价B与Si形成共价键后多余了一个空穴。 B──+3价 载流子组成:

o本征激发的空穴和自由电子──数量少。 o掺杂后由B提供的空穴──数量多。 o空穴──多子 o自由电子──少子 结论:N型半导体中的多数载流子为自由电子; P型半导体中的多数载流子为空穴。 §1-2 PN结 一、PN结的基本原理 1、什么是PN结 将一块P型半导体和一块N型半导体紧密第结合在一起时,交界面两侧的那部分区域。 2、PN结的结构 分界面上的情况: P区:空穴多 N区:自由电子多 扩散运动: 多的往少的那去,并被复合掉。留下了正、负离子。 (正、负离子不能移动) 留下了一个正、负离子区──耗尽区。 由正、负离子区形成了一个内建电场(即势垒高度)。 方向:N--> P 大小:与材料和温度有关。(很小,约零点几伏)

乐曲硬件演奏电路设计-verilog

EDA技术及创新实践(设计报告) 题目:乐曲硬件演奏电路设计 姓名:漩涡鸣人 学院:数理与信息工程学院 专业:电子科学与技术 班级:112 学号:1886****20 指导教师:汤大智 2014年6 月

一、设计目的及要求 实验目的: 1、理解音乐演奏的原理及分频器的原理与使用。 2、了解怎样控制音调的高低变化和音长,从而完成乐曲的自动循环演奏。 3、培养自主学习、正确分析和解决问题的能力。 要求:利用分频器设计硬件乐曲演奏电路;能通过数码管显示动态效果;通过一个开关实现两首乐曲的切换;在音乐播放的同时,会有led流水灯的闪烁。 二、设计原理 乐曲演奏的原理是这样的:组成乐曲的每个音符的频率值(音调)及其持续的时间(音长)是乐曲能连续演奏所需的两个基本数据,因此只要控制输出到扬声器的激励信号频率的高低和持续的时间,就可以使扬声器发出连续的乐曲声。 图1、顶层模块图 其中,乐谱产生电路用来控制音乐的音调和音长。控制音调通过设置计数器的预置数来实现,预置不同的数值可以使计数器产生不同频率的信号,从而产生

不同的音调。控制音长是通过控制计数器预置数的停留时间来实现的,预置数停留的时间越长,则该音符演奏的时间越长。每个音符的演奏时间都是0.25s的整数倍,对于节拍较长的音符,如2分音符,在记谱时将该音名连续记录两次即可。 1、音调的控制 频率的高低决定了音调的高低。音乐的十二平均率规定:每两个8度音(如简谱中的中音1与高音1)之间的频率相差一倍。在两个8度音之间,又可分为12个半音,每两个半音的频率比为12√2。另外,音名A(简谱中的低音6)的频率为440Hz,音名B到C之间、E到F之间为半音,其余为全音[4]。由此可以计算出简谱中从低音1至高音1之间每个音名对应的频率,如表2所示: 表2简谱中的音名与频率的关系 所有不同频率的信号都是从同一个基准频率分频得到的。由于音阶频率多为非整数,而分频系数又不能为小数,故必须将计算得到的分频数四舍五入取整。若基准频率过低,则由于分频比太小,四舍五入取整后的误差较大;若基准频率

乐曲硬件演奏电路设计

江西理工大学应用科学学院 SOPC/EDA综合课程设计报告 设计题目:硬件音乐演奏电路 设计者:徐达健 学号:08040108131 班级:测控081 指导老师:王忠锋 完成时间:2011年01月07日 设计报告综合测试总评 格式(10)内容 (40) 图表 (10) 答辩 (20) 平时 (20)

目录 一:设计原理 (3) 二:总体框图 (5) 三:选择器件 (7) 四:功能模块: (8) 1:NoteTabs模块(程序仿真图) (8) 2:ToneTaba模块(程序仿真图) (11) 3:Speakera模块(程序仿真图) (12) 五:总体设计电路图 (16) 1.顶层设计的电路原理图(Songer模块) (16) 2.Songer模块的程序 (16) 3.Songer顶层文件的仿真图形 (17) 4、锁定引脚 (17) 5、下载验证 (18) 六:结束语 (19)

七:心得体会 (20) 八:参考文献 (21) 一、设计原理 1.音乐演奏电路原理 这种频率的振荡可以用不同音符的代码所控制,从而分出不同频率的振荡,它采用编程方式将各种音符的代码预先存的计算机的内存中,利用软件和一定硬件电路配合将存放的乐曲代码有节地进行演奏,产生电子音乐。乐曲中每个音符的发生频率及其持续时间是乐曲能够连续演奏的两个关键因素。 图1.1 音乐演奏电路原理图

2.音符频率的获得 多本文中选取750KHz的基准频率。由于现有的高频时钟脉冲信号的频率为12MHz,故需先对其进行16分频,才能获得750KHz的基准频率。对基准频率分频后的输出信号是一些脉宽极窄的尖脉冲信号(占空比=1/分频系数)。为提高输出信号的驱动能力,以使扬声器有足够的功率发音,需要再通过一个分频器将原来的分频器的输出脉冲均衡为对称方波(占空比=1/2),但这时的频率将是原来的1/2。表1中各音符的分频系数就是从750KHz 的基准频率二分频得到的375KHz频率基础上计算得到的。 由于最大分频系数是1274,故分频器采用11位二进制计数器能满足要求,乐曲中的休止符,只要将分频系数设为0,即初始值=2048-1=2047,此时扬声器不会发声。3.乐曲节奏的控制 本文中的梁祝乐曲,最小的节拍为1/4拍,若将1拍的时间定为1秒,则只需要提供一个4Hz的时钟频率即可产生1/4拍的时长(0.25秒),对于其它占用时间较长的节拍(必为1/4拍的整数倍)则只需要将该音符连续输出相应的次数即可。 计数时钟信号作为输出音符快慢的控制信号,时钟快时输出节拍速度就快,演奏的速度也就快,时钟慢时输出节拍的速度就慢,演奏的速度自然降低。 4.乐谱发生器 本文将乐谱中的音符数据存储在NoteTABS中,如“梁祝”乐曲中的第一个音符为“3”,此音在逻辑中停留了4个时钟节拍,即1秒的时间,相应地,音符“3”就要在NoteTABS 中连续的四个地址上都存储。当一个4Hz的时钟来时,相应地存入NoteTABS中一个音符数据。

硬件电路设计流程系列--方案设计

平台的选择很多时候和系统选择的算法是相关的,所以如果要提高架构,平台的设计能力,得不断提高自身的算法设计,复杂度评估能力,带宽分析能力。 常用的主处理器芯片有:单片机,ASIC,RISC(DEC Alpha、ARC、ARM、MIPS、PowerPC、SPARC和SuperH ),DSP和FPGA等,这些处理器的比较在网上有很多的文章,在这里不老生常谈了,这里只提1个典型的主处理器选型案例。 比如市场上现在有很多高清网络摄像机(HD-IPNC)的设计需求,而IPNC的解决方案也层出不穷,TI的解决方案有DM355、DM365、DM368等,海思提供的方案则有Hi3512、Hi3515、Hi3520等,NXP提供的方案有PNX1700、PNX1005等。 对于HD-IPNC的主处理芯片,有几个主要的技术指标:视频分辨率,视频编码器算法,最高支持的图像抓拍分辨率,CMOS的图像预处理能力,以及网络协议栈的开发平台。 Hi3512单芯片实现720P30 编解码能力,满足高清IP Camera应用, Hi3515可实现1080P30的编解码能力,持续提升高清IP Camera的性能。 DM355单芯片实现720P30 MPEG4编解码能力,DM365单芯片实现720P30 编解码能力, DM368单芯片实现1080P30 编解码能力。 DM355是2007 Q3推出的,DM365是2009 Q1推出的,DM368是2010 Q2推出的。海思的同档次解决方案也基本上与之同时出现。 海思和TI的解决方案都是基于linux,对于网络协议栈的开发而言,开源社区的资源是没有区别的,区别的只在于芯片供应商提供的SDK开发包,两家公司的SDK离产品都有一定的距离,但是linux的网络开发并不是一个技术难点,所以并不影响产品的推广。 作为IPNC的解决方案,在720P时代,海思的解决方案相对于TI的解决方案,其优势是支持了编解码算法,而TI只支持了MPEG4的编解码算法。虽然在2008年初,MPEG4的劣势在市场上已经开始体现出来,但在当时这似乎并不影响DM355的推广。 对于最高支持的图像抓拍分辨率,海思的解决方案可以支持支持JPEG抓拍3M Pixels@5fps,DM355最高可以支持5M Pixels,虽然当时没有成功的开发成5M Pixel的抓拍(内存分配得有点儿问题,后来就不折腾了),但是至少4M Pixel 的抓拍是实现了的,而且有几个朋友已经实现了2560x1920这个接近5M Pixel 的抓拍,所以在这一点上DM355稍微胜出。 因为在高清分辨率下,CCD传感器非常昂贵,而CMOS传感器像原尺寸又做不大,导致本身在低照度下就性能欠佳的CMOS传感器的成像质量在高分辨率时变差,

乐曲演奏电路

成绩 指导教师: 日期: 《EDA技术与VHDL语言设计》 课程设计 题目: EDA技术及其应用 ——乐曲演奏电路 姓名:陈 院系:电子信息工程学系 专业:电子信息工程 班级:电信092 学号: 910706220 指导教师:余尤好 2011年12 月

EDA 技术及其应用 ——乐曲演奏电路 陈 (电子信息工程学系 指导教师:余尤好) 摘要:利用EDA 技术对乐曲演奏电路进行仿真,设计者在EDA 软件平台上,用硬件描述语言HDL 完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作.EDA 是电子设计自动化(Electronic Design Automation )的缩写,在20世纪90年代初从计算机辅助设计(CAD )、计算机辅助制造(CAM )、计算机辅助测试(CAT )和计算机辅助工程(CAE )的概念发展而来的。 关键词:EDA 技术 仿真 乐曲演奏 一、概述 1.1设计目的及要求 本实验课程的目的,旨在通过上机实验,使学生加深理解EDA 技术的基本方法,帮助和培养学生建立利用原理图和硬件描述语言进行电路设计的基本方法和利用EDA 工具软件(MAX+plus Ⅱ或Quartus7.2)设计简单数字电子系统的能力,为以后从事有关数字电子系统方面的设计和研究开发工作打下基础。 为使演奏能循环进行,需另外设置一个时长计数器,当乐曲演奏完成时,保证能自动从头开始演奏。 1.2实验前预习 每次实验前,学生须仔细阅读本实验指导书的相关内容,明确实验目的和实验内容;明确实验原理与步骤;复习与实验内容有关的理论知识;预习仪器设备的使用方法、操作规程及注意事项。 1.3设计环境 计算机 MAX+plusII10.2 二、设计过程及原理 2.1乐曲演奏的原理 组成乐曲的每个音符的频率值(音调)及其持续的时间(音长)是乐曲能连续演奏所需的两个基本数据,因此只要控制输出到扬声器的激励信号的频率高低和持续时间,就可以使扬声器发出连续的乐曲声。首先来看怎样控制音调的高低变化。如下图1是乐曲演奏电路的原理框图,其中,乐谱产生的电路用来控制音乐的音调和音长。控制音调通过设置计数器的预置数来实现,预置不同的数值就可以使计数器产生不同频率的信号,从而产生不同的音调。控制音长是通过控制计数器预置数的停留时间来实现的,预置数停留的时间越长,则该音符演奏的时间越长。每个音符的演奏时间都是0.25s 的整数倍,对于节拍长的音符,如2分音符,在记谱时将该音名连续记录两次即可。 6MHz 扬声器 4Hz 数码管 图1 乐曲演奏电路原理框图 反馈预置计数器 2分频器 曲谱产生 音符显示

电子琴实验报告乐曲硬件演奏电路设计本科论文

武夷学院实验报告 课程名称:逻辑设计与FPGA 项目名称: 乐曲硬件演奏电路设计 ______________ 姓名: 专业:微电子学 班级:14微电子 学号:04实验日期 、 实验预习部分: 1. 实验目的: 学习利用数控分频器设计硬件乐曲演奏电路。 2. 实验原理: 综合利用数控分频器、LPM ROMPLL 等单元电路设计硬件乐曲演奏电路。系统框图如图 1 所示由三个模块组成,分别为 NOTETABSTONETABASPEAKERA NOTETAB 模块(把教材图9-4中的CNT138T 和MUSIC 模块合在一起即为此模块)类似于弹 琴人的手指;TONETAB 模块类似于琴键;SPEAKER 类似于琴弦或音调发生器。 音符的频率由SPEAKER 模块(与教材图9-4中的SPKEF 模块对应)获得,这是一个数控分 频器。由其CLK 端输入一具有较高频率(12MHZ 的信号,通过SPEAKER 分频后由SPKOU 输出。 SPEAKER 对CLK 输入信号的分频比由11位预置数TONE[10..0]决定。SPKOU 的输出频率将决定 每一音符的音调,这样,分频计数器的预置值 TONE[10..0]与SPKOU 的输出频率就有了对应关 系。例如在TONETAB 模块(与教材图9-4中的F_COD 模块对应)中若取 TONE[10..0] = 1036, 图1硬件乐曲演奏电路结构框图 i.;E-Z

将发出音符“ 3”音的信号频率。

实验预习成绩(百分制)____________________ 实验指导教师签字:_________________________

硬件电路板设计规范

硬件电路板设计规范(总36 页) -CAL-FENGHAI.-(YICAI)-Company One1 -CAL-本页仅作为文档封面,使用请直接删除

0目录 0目录............................................... 错误!未定义书签。

1概述............................................... 错误!未定义书签。 适用范围............................................ 错误!未定义书签。 参考标准或资料 ...................................... 错误!未定义书签。 目的................................................ 错误!未定义书签。2PCB设计任务的受理和计划............................ 错误!未定义书签。 PCB设计任务的受理................................... 错误!未定义书签。 理解设计要求并制定设计计划 .......................... 错误!未定义书签。3规范内容........................................... 错误!未定义书签。 基本术语定义........................................ 错误!未定义书签。 PCB板材要求: ....................................... 错误!未定义书签。 元件库制作要求 ...................................... 错误!未定义书签。 原理图元件库管理规范:......................... 错误!未定义书签。 PCB封装库管理规范............................. 错误!未定义书签。 原理图绘制规范 ...................................... 错误!未定义书签。 PCB设计前的准备..................................... 错误!未定义书签。 创建网络表..................................... 错误!未定义书签。 创建PCB板..................................... 错误!未定义书签。 布局规范............................................ 错误!未定义书签。 布局操作的基本原则............................. 错误!未定义书签。 热设计要求..................................... 错误!未定义书签。 基本布局具体要求............................... 错误!未定义书签。 布线要求............................................ 错误!未定义书签。 布线基本要求................................... 错误!未定义书签。 安规要求....................................... 错误!未定义书签。 丝印要求............................................ 错误!未定义书签。 可测试性要求........................................ 错误!未定义书签。 PCB成板要求......................................... 错误!未定义书签。

乐器硬件演奏电路

EDA技术课程大作业 设计题目:乐器硬件演奏电路 院系:电子信息与电气工程学院 学生姓名: 学号:200902070018 专业班级: 2010 年12 月 4 日

乐曲硬件演奏电路 1. 设计背景和设计方案 1.1设计背景 目前,各领域的激烈竞争迫使人们不得不对办事效率格外重视,同时,这也是方便、高效的社会发展趋势之必要。随着科技发展及电子方面的成熟。数控分频器它成为这方面当之无愧的选择。本设计正是关于分频器在乐器硬件演奏电路系统的应用。与传统的纯硬件相比,简单有效,此设计可以适应多家可编程逻辑器件,便于组织大规模的系统设计;便于设计的复用继承和升级,具有广阔的应用前景。 1.2设计方案 该系统主要由NOTETABS,TONETABA,SPEAKERA三个模块组成,与利用微处理器CPU,MCU来实现乐曲演奏相比,以纯硬件完成乐曲演奏电路的逻辑要复杂的多,仅凭借传统的数字逻辑技术是难以实现的,因此,这里我们借助强大的EDA工具和VHDL硬件描述语言来完成。 模块SPEAKERA是数控分频器计数输出模块为一个11位的可预置数计数器。通过NOTETABS得到预置数,并对这些进行计数。由SPEAKERA的CLK端输入一具有较高的频率的信号,通过SPEAKERA分频后由SPKOUT输出,模块TONETABA的功能首先是为SPEAKERA提供决定所发音符的分频预置数,而此数在SPEAKERA输入口停留的时间即为此音符的节拍值。每一个音符的停留时间又由音乐节拍和音调发生器模块NOTETABS的CLK的输入频率决定,输出由对应于TONETABA的4位输入值INDEX[3..0]确定。输向TONETABA中INDEX[3..0]的输出值与持续的时间由模块NOTETABS决定。在NOTETABS中设置了一个8为二进制计数器作为音符数据ROM的地址发生器。这个计数器的计数频率选为4HZ,随着NOTETABS中的计数器按4HZ的时钟速率做加法计数时,即随地址值递增时,音符数据ROM中的音符数据将从ROM中通过TONEINDEX[3..0]端口输向TONETABA 模块,乐曲就开始连续自然地演奏起来了。 2. 方案实施 2.1 实现原理及算法的描述 首先,编写数控分频器计数输出模块SPEAKERA,其输入为clk, Tone ,输出为Spks,

EDA乐曲硬件演奏电路设计 课程设计

摘要 乐曲演奏广泛用于自动答录装置、手机铃声、集团电话、及智能仪器仪表设备。实现方法有许多种,随着FPGA集成度的提高,价格下降,EDA设计工具更新换代,功能日益普及与流行,使这种方案的应用越来越多。如今的数字逻辑设计者面临日益缩短的上市时间的压力,不得不进行上万门的设计,同时设计者不允许以牺牲硅的效率达到保持结构的独特性。使用现今的EDA软件工具来应付这些问题,并不是一件简单的事情。FPGA预装了很多已构造好的参数化库单元LPM 器件。通过引入支持LPM的EDA软件工具,设计者可以设计出结构独立而且硅片的使用效率非常高的产品。 本课设在EDA开发平台上利用VHDL语言设计数控分频器电路,利用数控分频的原理设计乐曲硬件演奏电路,并定制LPM-ROM存储音乐数据,以“两只老虎”乐曲为例,将音乐数据存储到LPM-ROM,就达到了以纯硬件的手段来实现乐曲的演奏效果。只要修改LPM-ROM所存储的音乐数据,将其换成其他乐曲的音乐数据,再重新定制LPM-ROM,连接到程序中就可以实现其它乐曲的演奏。 关键词:FPGA;EDA;VHDL;音乐

目录 设计要求 (1) 1、方案论证与对比 (1) 1.1方案一 (1) 1.2方案二 (1) 1.3综合对比 (1) 2 乐曲演奏电路原理 (2) 2.1 音乐演奏电路原理 (2) 2.2 音符频率的获得 (2) 2.3 乐曲节奏的控制 (3) 2.4 乐谱发生器 (3) 2.5 乐曲演奏电路原理框图 (3) 3音乐硬件演奏电路的设计实现 (4) 3.1 地址发生器模块 (4) 3.1.1 地址发生器的VHDL设计 (4) 3.2 分频预置数模块 (6) 3.2.1 分频预置数模块的VHDL设计 (6) 3.3 数控分频模块 (8) 3.3.1 数控分频模块的VHDL设计 (8) 3.4 music模块 (10) 3.4.1 音符数据文件 (10) 3.5.2 LPM-ROM定制 (12) 3.6 顶层文件 (14) 4 时序仿真及下载调试过程 (16) 4.1 时序仿真图 (16) 4.2 引脚锁定以及下载 (17) 4.3调试过程及结果 (17) 5扩大乐曲硬件演奏电路的通用性 (18) 5.1 完善分频预置数模块的功能 (18) 设计总结与心得体会 (21) 参考文献 (22)

电路硬件设计基础

1.1电路硬件设计基础 1.1.1电路设计 硬件电路设计原理 嵌入式系统的硬件设计主要分3个步骤:设计电路原理图、生成网络表、设计印制电路板,如下图所示。 图1-1硬件设计的3个步骤 进行硬件设计开发,首先要进行原理图设计,需要将一个个元器件按一定的逻辑关系连接起来。设计一个原理图的元件来源是“原理图库”,除了元件库外还可以由用户自己增加建立新的元件,用户可以用这些元件来实现所要设计产品的逻辑功能。例如利用Protel 中的画线、总线等工具,将电路中具有电气意义的导线、符号和标识根据设计要求连接起来,构成一个完整的原理图。 原理图设计完成后要进行网络表输出。网络表是电路原理设计和印制电路板设计中的一个桥梁,它是设计工具软件自动布线的灵魂,可以从原理图中生成,也可以从印制电路板图中提取。常见的原理图输入工具都具有Verilog/VHDL网络表生成功能,这些网络表包含所有的元件及元件之间的网络连接关系。 原理图设计完成后就可进行印制电路板设计。进行印制电路板设计时,可以利用Protel 提供的包括自动布线、各种设计规则的确定、叠层的设计、布线方式的设计、信号完整性设计等强大的布线功能,完成复杂的印制电路板设计,达到系统的准确性、功能性、可靠性设计。 电路设计方法(有效步骤) 电路原理图设计不仅是整个电路设计的第一步,也是电路设计的基础。由于以后的设计工作都是以此为基础,因此电路原理图的好坏直接影响到以后的设计工作。电路原理图的具体设计步骤,如图所示。

图1-2原理图设计流程图 (1)建立元件库中没有的库元件 元件库中保存的元件只有常用元件。设计者在设计时首先碰到的问题往往就是库中没有原理图中的部分元件。这时设计者只有利用设计软件提供的元件编辑功能建立新的库元件,然后才能进行原理图设计。 当采用片上系统的设计方法时,系统电路是针对封装的引脚关系图,与传统的设计方法中采用逻辑关系的库元件不同。 (2)设置图纸属性 设计者根据实际电路的复杂程度设置图纸大小和类型。图纸属性的设置过程实际上是建立设计平台的过程。设计者只有设置好这个工作平台,才能够在上面设计符合要求的电路图。 (3)放置元件 在这个阶段,设计者根据原理图的需要,将元件从元件库中取出放置到图纸上,并根据原理图的需要进行调整,修改位置,对元件的编号、封装进行设置等,为下一步的工作打下基础。 (4)原理图布线 在这个阶段,设计者根据原理图的需要,利用设计软件提供的各种工具和指令进行布线,将工作平面上的元件用具有电气意义的导线、符号连接起来,构成一个完整的原理图。 (5)检查与校对 在该阶段,设计者利用设计软件提供的各种检测功能对所绘制的原理图进行检查与校对,以保证原理图符合电气规则,同时还应力求做到布局美观。这个过程包括校对元件、导线位置调整以及更改元件的属性等。 (6)电路分析与仿真 这一步,设计者利用原理图仿真软件或设计软件提供的强大的电路仿真功能,对原理图的性能指标进行仿真,使设计者在原理图中就能对自己设计的电路性能指标进行观察、测试,从而避免前期问题后移,造成不必要的返工。

硬件电路设计规范

硬件电路板设计规范 制定此《规范》的目的和出发点是为了培养硬件开发人员严谨、务实的工作作风和严肃、认真的工作态度,增强硬件开发人员的责任感和使命感,提高工作效率和开发成功率,保证产品质量。 1、深入理解设计需求,从需求中整理出电路功能模块和性能指标要求; 2、根据功能和性能需求制定总体设计方案,对CPU等主芯片进行选型,CPU 选型有以下几点要求: 1)容易采购,性价比高; 2)容易开发:体现在硬件调试工具种类多,参考设计多,软件资源丰富,成功案例多; 3)可扩展性好; 3、针对已经选定的CPU芯片,选择一个与我们需求比较接近的成功参考设计。 一般CPU生产商或他们的合作方都会对每款CPU芯片做若干开发板进行验证,厂家最后公开给用户的参考设计图虽说不是产品级的东西,也应该是经过严格验证的,否则也会影响到他们的芯片推广应用,纵然参考设计的外围电路有可推敲的地方,CPU本身的管脚连接使用方法也绝对是值得我们信赖的,当然如果万一出现多个参考设计某些管脚连接方式不同,可以细读CPU芯片手册和勘误表,或者找厂商确认;另外在设计之前,最好我们能外借或者购买一块选定的参考板进

行软件验证,如果没问题那么硬件参考设计也是可以信赖的;但要注意一点,现在很多CPU都有若干种启动模式,我们要选一种最适合的启动模式,或者做成兼容设计; 4、根据需求对外设功能模块进行元器件选型,元器件选型应该遵守以下原则: 1)普遍性原则:所选的元器件要被广泛使用验证过的尽量少使用冷、偏芯片,减少风险; 2)高性价比原则:在功能、性能、使用率都相近的情况下,尽量选择价格比较好的元器件,减少成本; 3)采购方便原则:尽量选择容易买到,供货周期短的元器件; 4)持续发展原则:尽量选择在可预见的时间内不会停产的元器件; 5)可替代原则:尽量选择pin to pin兼容种类比较多的元器件; 6)向上兼容原则:尽量选择以前老产品用过的元器件; 7)资源节约原则:尽量用上元器件的全部功能和管脚; 5、对选定的CPU参考设计原理图外围电路进行修改,修改时对于每个功能模块都要找至少3个相同外围芯片的成功参考设计,如果找到的参考设计连接方法都是完全一样的,那么基本可以放心参照设计,但即使只有一个参考设计与其他的不一样,也不能简单地少数服从多数,而是要细读芯片数据手册,深入理解那些管脚含义,多方讨论,联系芯片厂技术支持,最终确定科学、正确的连接方式,如果仍有疑义,可以做兼容设计;当然,如果所采用的成功参考设计已经是

乐曲硬件演奏电路设计_verilog

EDA技术及创新实践(设计报告) 题目: 乐曲硬件演奏电路设计 姓名: 漩涡鸣人 学院: 数理与信息工程学院 专业: 电子科学与技术 班级: 112 学号: 1886****20 指导教师: 汤大智 2014年6 月

一、设计目的及要求 实验目的: 1、理解音乐演奏的原理及分频器的原理与使用。 2、了解怎样控制音调的高低变化和音长,从而完成乐曲的自动循环演奏。 3、培养自主学习、正确分析和解决问题的能力。 要求:利用分频器设计硬件乐曲演奏电路;能通过数码管显示动态效果;通过一个开关实现两首乐曲的切换;在音乐播放的同时,会有led流水灯的闪烁。 二、设计原理 乐曲演奏的原理是这样的:组成乐曲的每个音符的频率值(音调)及其持续的时间(音长)是乐曲能连续演奏所需的两个基本数据,因此只要控制输出到扬声器的激励信号频率的高低和持续的时间,就可以使扬声器发出连续的乐曲声。 图1、顶层模块图 其中,乐谱产生电路用来控制音乐的音调和音长。控制音调通过设置计数器的预置数来实现,预置不同的数值可以使计数器产生不同频率的信号,从而产生不同的音调。控制音长是通过控制计数器预置数的停留时间来实现的,预置数停留的时间越长,则该音符演奏的时间越长。每个音符的演奏时间都是0.25s的整数倍,对于节拍较长的音符,如2分音符,在记谱时将该音名连续记录两次即可。 1、音调的控制 频率的高低决定了音调的高低。音乐的十二平均率规定:每两个8度音(如简谱中的中音1与高音1)之间的频率相差一倍。在两个8度音之间,又可分为12个半音,每两个半音的频率比为12√2。另外,音名A(简谱中的低音6)的频率为440Hz,音名B到C之间、E到F之间为半音,其余为全音[4]。由此可以计

硬件电路设计具体详解

2系统方案设计 2.1 数字示波器的工作原理 图2.1 数字示波器显示原理 数字示波器的工作原理可以用图2.1 来描述,当输入被测信号从无源探头进入到数字示波器,首先通过的是示波器的信号调理模块,由于后续的A/D模数转换器对其测量电压有一个规定的量程范围,所以,示波器的信号调理模块就是负责对输入信号的预先处理,通过放大器放大或者通过衰减网络衰减到一定合适的幅度,然后才进入A/D转换器。在这一阶段,微控制器可设置放大和衰减的倍数来让用户选择调整信号的幅度和位置范围。 在A/D采样模块阶段,信号实时在离散点采样,采样位置的信号电压转换为数字值,而这些数字值成为采样点。该处理过程称为信号数字化。A/D采样的采样时钟决定了ADC采样的频度。该速率被称为采样速率,表示为样值每秒(S/s)。A/D模数转换器最终将输入信号转换为二进制数据,传送给捕获存储区。 因为处理器的速度跟不上高速A/D模数转换器的转换速度,所以在两者之间需要添加一个高速缓存,明显,这里捕获存储区就是充当高速缓存的角色。来自ADC的采样点存储在捕获存储区,叫做波形点。几个采样点可以组成一个波形点,波形点共同组成一条波形记录,创建一条波形记录的波形点的数量称为记录长度。捕获存储区内部还应包括一个触发系统,触发系统决定记录的起始和终止点。 被测的模拟信号在显示之前要通过微处理器的处理,微处理器处理信号,包括获取信号的电压峰峰值、有效值、周期、频率、上升时间、相位、延迟、占空比、均方值等信息,然后调整显示运行。最后,信号通过显示器的显存显示在屏幕上。 2.2 数字示波器的重要技术指标 (1)频带宽度 当示波器输入不同频率的等幅正弦信号时,屏幕上显示的信号幅度下降3dB 所对应的输入信号上、下限频率之差,称为示波器的频带宽度,单位为MHz或GHz。

硬件电路设计基础知识.docx

硬件电子电路基础关于本课程 § 4—2乙类功率放大电路 § 4—3丙类功率放大电路 § 4—4丙类谐振倍频电路 第五章正弦波振荡器 § 5—1反馈型正弦波振荡器的工作原理 § 5— 2 LC正弦波振荡电路 § 5— 3 LC振荡器的频率稳定度 § 5—4石英晶体振荡器 § 5— 5 RC正弦波振荡器

第一章半导体器件 §1半导体基础知识 §1PN 结 §-1二极管 §1晶体三极管 §1场效应管 §1半导体基础知识 、什么是半导体半导体就是导电能力介于导体和绝缘体之间的物质。(导电能力即电导率)(如:硅Si锗Ge等+ 4价元素以及化合物) 、半导体的导电特性本征半导体一一纯净、晶体结构完整的半导体称为本征半导体。 硅和锗的共价键结构。(略)

1、半导体的导电率会在外界因素作用下发生变化 ?掺杂一一管子 *温度--- 热敏元件 ?光照——光敏元件等 2、半导体中的两种载流子一一自由电子和空穴 ?自由电子——受束缚的电子(一) ?空穴——电子跳走以后留下的坑(+ ) 三、杂质半导体——N型、P型 (前讲)掺杂可以显著地改变半导体的导电特性,从而制造出杂质半导体。 *N型半导体(自由电子多) 掺杂为+ 5价元素。女口:磷;砷P—+ 5价使自由电子大大增加原理:Si—+ 4价P与Si形成共价键后多余了一个电子。 载流子组成: o本征激发的空穴和自由电子——数量少。 o掺杂后由P提供的自由电子——数量多。 o 空穴——少子 o 自由电子------ 多子 ?P型半导体(空穴多) 掺杂为+ 3价元素。女口:硼;铝使空穴大大增加 原理:Si—+ 4价B与Si形成共价键后多余了一个空穴。 B——+ 3价 载流子组成: o本征激发的空穴和自由电子数量少。 o掺杂后由B提供的空穴——数量多。 o 空穴——多子 o 自由电子——少子

相关主题
文本预览
相关文档 最新文档