首页 简易电子琴的设计

简易电子琴的设计

举报
开通vip

简易电子琴的设计简易电子琴的设计 孙小翠 《简易电子琴的设计与实现》 摘 要: 随着EDA技术的发展和在应用领域的扩大与深入,EDA技术在电子信息、通信、自动控制用计算机等领域的重要性日益突出。本系统是采用VHDL语言为硬件描述语言,MAX + PLUS II作为程序运行平台而设计的一个简易电子琴。该系统基于计算机 中时钟分频器的原理,采用自顶向下的设计方法来实现,它可以通过按键输入来控制音 响。系统由乐曲自动演奏模块、音调发生模块和数控分频模块三个部分组成,功能比较 齐全,有一定的使用价值。 关键词: 电子琴; EDA;...

简易电子琴的设计
简易电子琴的设计 孙小翠 《简易电子琴的设计与实现》 摘 要: 随着EDA技术的发展和在应用领域的扩大与深入,EDA技术在电子信息、通信、自动控制用计算机等领域的重要性日益突出。本系统是采用VHDL语言为硬件描述语言,MAX + PLUS II作为程序运行平台而设计的一个简易电子琴。该系统基于计算机 中时钟分频器的原理,采用自顶向下的设计方法来实现,它可以通过按键输入来控制音 响。系统由乐曲自动演奏模块、音调发生模块和数控分频模块三个部分组成,功能比较 齐全,有一定的使用价值。 关键词: 电子琴; EDA;VHDL;时钟分频器 孙小翠 《简易电子琴的设计与实现》 Electronic organ simple design and implementation Student name: SUN Xiao-cui AdvisorXIA Zhuo-qun Abstract With the development of EDA technologies and applications at the expansion and depth, EDA technology in electronic information, communications, automatic control with the importance of computer in areas such as have become increasingly prominent. The system are using VHDL language for hardware description language, MAX + PLUS II program runs as a platform designed for a simple flower. The system is based on computer clock divider principle, the use of top-down design approach to the implementation, it can enter through the keys to control audio. The system automatically play music modules, tone modules and CNC happen frequency module is composed of three parts, functions relatively complete, must have value. Keywords Electronic organ; EDA; VHDL ;Clock prescaler 1 引言 ................................................................................................................................... 1 1.1课 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 的背景与目的 ................................................................................................... 1 1.2课题的内容............................................................................................................... 1 2 开发技术简介 ................................................................................................................... 2 2.1 EDA技术 ................................................................................................................. 2 2.2硬件描述语言—VHDL ............................................................................................ 2 3 简易电子琴的设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 .................................................................................................... 5 3.1总体设计 .................................................................................................................. 5 3.2系统设计流程图 ....................................................................................................... 7 3.3各模块的原理及实现 ............................................................................................... 7 4 波形仿真 ........................................................................................................................... 9 4.1模块仿真 .................................................................................................................. 9 4.2系统仿真 ................................................................................................................ 10 5 结束语 ............................................................................................................................. 11 致谢 ..................................................................................................................................... 12 参考文献 ............................................................................................................................. 13 附件 ..................................................................................................................................... 14 孙小翠 《简易电子琴的设计与实现》 第1页 共18页 1 1.1 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐 扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现 代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89S51单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心 主控制模块,在主控模块上设有16个按键和扬声器。 本文主要对使用单片机设计简易电子琴进行了 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 ,并介绍了基于单片机电子琴统 硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达 的音乐。并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细 阐述。 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可 以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同 的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因 此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。 本次课程设计是为了巩固和运用所学课程,理论联系实际,提高分析、解决计算机 技术实际问题的独立工作能力,通过对一个简易的八音符电子琴的设计,进一步加深对 计算机原理以及数字电路应用技术方面的了解与认识,进一步熟悉数字电路系统设计、 制作与调试的方法和步骤。巩固所学课堂知识,理论联系实际,提高分析、解决计算机 技术实际问题的独立工作能力。为了进一步了解计算机组成原理与系统结构,深入学习 EDA技术,用VHDL语言去控制将会使我们对本专业知识可以更好地掌握。 1.2 (1)设计一个简易的八音符电子琴,它可通过按键输入来控制音响。 (2)演奏时可以选择是手动演奏(由键盘输入)还是自动演奏已存入的乐曲。 (3)能够自动演奏多首乐曲,且每首乐曲可重复演奏。 孙小翠 《简易电子琴的设计与实现》 第2页 共18页 2 2.1 EDA EDA是电子设计自动化(Electronic Design Automation)缩写,是90年代初从CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。EDA技术是以计算机为工具,根据硬件描述语言 HDL( Hardware Description language)完成的设计文件,自动地完成逻辑编译、化简、 分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工 [1]作。典型的EDA工具中必须包含两个特殊的软件包,即综合器和适配器。综合器的 功能就是将设计者在EDA平台上完成的针对某个系统项目的HDL、原理图或状态图形描述,针对给定的硬件系统组件,进行编译、优化、转换和综合,最终获得我们欲实现 功能的描述文件。综合器在工作前,必须给定所要实现的硬件结构参数,它的功能就是 将软件描述与给定的硬件结构用一定的方式联系起来。也就是说,综合器是软件描述与 硬件实现的一座桥梁。综合过程就是将电路的高级语言描述转换低级的、可与目标器件 FPGA/CPLD相映射的网表文件。 适配器的功能是将由综合器产生的王表文件配置与指定的目标器件中,产生最终的 下载文件,如JED文件。适配所选定的目标器件(FPGA/CPLD芯片)必须属于在综合器中已指定的目标器件系列。 硬件描述语言HDL是相对于一般的计算机软件语言,如:C、PASCAL而言的。HDL语言使用与设计硬件电子系统的计算机语言,它能描述电子系统的逻辑功能、电 [2]路结构和连接方式。设计者可利用HDL程序来描述所希望的电路系统,规定器件结 构特征和电路的行为方式;然后利用综合器和适配器将此程序编程能控制FPGA和CPLD内部结构,并实现相应逻辑功能的的门级或更底层的结构网表文件或下载文件。 目前,就FPGA/CPLD开发来说,比较常用和流行的HDL主要有ABEL-HDL、AHDL和VHDL。 2.2VHDL 1) VHDL VHDL的英文全名是Very-High-Speed Integrated Circuit Hardware Description 孙小翠 《简易电子琴的设计与实现》 第3页 共18页 Language,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描 述语言 。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述 语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展 VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪 中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。 VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件 特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语 言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个 电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既 [3]涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其 内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分 的概念是VHDL系统设计的基本点。 2)VHDL (1) 与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他 成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构, 从逻辑行为上描述和设计大规模电子系统的重要保证。 (2) VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系 [4]统的功能可行性,随时可对设计进行仿真模拟。 (3) VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和 已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至 多个代发组共同并行工作才能实现。 (4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。 (5) VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管 [5]理最终设计实现的目标器件是什么,而进行独立的设计。 3)VHDL 孙小翠 《简易电子琴的设计与实现》 第4页 共18页 (1) 设计输入根据电路设计所提出的要求,将程序输入到VHDL编辑器中去编辑。 (2) 功能级模拟用VHDL,模拟器对编辑后的程序进行模拟,如果达不到设计要求, 则可以重新修改程序,直到通过功能模拟。 (3) 逻辑综合与优化。 将通过功能模拟的程序放到VHDL编译器中,进行逻辑综 合与优化。 (4) 门级模拟对电路用VHDL。仿真器仿真。可对门级电路的延时、定时状态、驱 动能力等进行仿真。如不符合要求,可重复步骤(3),再门级模拟,直到符合要求止。 (5) 版图生成。 用相应的软件处理后,就可以拿去制版。 孙小翠 《简易电子琴的设计与实现》 第5页 共18页 3 3.1 根据系统设计要求,系统设计采用自顶向下的设计方法,系统的整体组装设计原理 图如图3.1所示,它由乐曲自动演奏模块、音调发生模块和数控分频模块三部分组成。 图3.1 系统的整体组装设计原理图 由原理图可分析得到电子琴音乐产生原理及硬件设计如下所述。 1 由于一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们 就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生 不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。 本次设计中单片机晶振为12MHZ,那么定时器的计数周期为1MHZ,假如选择工作方式1,那T值便为T=216--5?105/相应的频率,那么根据不同的频率计算出应该赋给定 时器的计数值,列出不同音符与单片机计数T0相关的计数值如表3-1所示。 孙小翠 《简易电子琴的设计与实现》 第6页 共18页 表3-1 与单片机计数T0相关的计数值 采用查表程序进行查表时,可以为这个音符建立一个 表格 关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载 ,有助于单片机通过查表 的方式来获得相应的数据:TABLEDW64580,64684,64777,64820,64898,64968,65030。 2 电子琴硬件设计图如图3.2所示。 图3.2 电子琴硬件设计图 孙小翠 《简易电子琴的设计与实现》 第7页 共18页 3.2 系统设计流程图如图3.3所示。 图3.3系统设计流程图 3.3 (1)乐曲自动演奏模块 乐曲自动演奏模块(AUTO.VHD)的作用是产生8位发声控制输入信号/当进行自动演奏时,由存储在此模块中的8位二进制数作为发声控制输入,从而自动演奏乐曲。 VHDL源程序(AUTO.VHD)见附件。 (2)音调发生模块 音调发生模块的作用是产生音阶的分频预置值。当8位发声控制输入信号中的某一 位为高电平时,则对应某一音节的数值将输出,该数值即为该音阶的分频预置值,分频 预置值控制数控分频模块进行分频,由此可得到每个音阶对应的频率。VHDL源程序 孙小翠 《简易电子琴的设计与实现》 第8页 共18页 (TONE.VHD) 见附件。 (3)数控分频模块 数控分频模块是对时基脉冲进行分频,得到与1、2、3、4、5、6、7七个音符相对应的频率。VHDL源程序(FENPIN.VHD)见附件。 (4)顶层设计 VHDL源程序(DIANZIQIN.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DIANZIQIN IS PORT(CLK32MHZ: IN STD_LOGIC; HANDTOAUTO:IN STD_LOGIC; CODE1: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);--音符显示信号 INDEX1: IN STD_LOGIC_VECTOR(7 DOWNTO 0);--键盘输入信号 HIGH1: OUT STD_LOGIC;--高低音节信号 SPKOUT: OUT STD_LOGIC);--音频信号 END; 孙小翠 《简易电子琴的设计与实现》 第9页 共18页 4 4.1 (1)乐曲自动演奏模块的仿真如图4.1所示。 图4.1乐曲自动演奏模块的仿真图 分析乐曲自动演奏模块产生的波形,其作用是产生8位发声控制输入信号/当进行自动演奏时,由存储在此模块中的8位二进制数作为发声控制输入,从而自动演奏乐曲。 符合设计需求。 (2)音调发生模块的仿真如图4.2所示。 图4.2 音调发生模块的仿真图 分析音调发生模块产生的波形,其作用是产生音阶的分频预置值。当8位发声控制输入信号中的某一位为高电平时,则对应某一音节的数值将输出,该数值即为该音阶的 分频预置值,分频预置值控制数控分频模块进行分频,由此可得到每个音阶对应的频率。 符合设计需求。 孙小翠 《简易电子琴的设计与实现》 第10页 共18页 (3)数控分频模块的仿真如图4.3所示。 图4.3 数控分频模块仿真图 分析数控分频模块的波形,可知是对时基脉冲进行分频,得到与1、2、3、4、5、6、7七个音符相对应的频率。符合设计需求。 4.2 简易电子琴整个系统的仿真如图4.4所示。 图4.4 简易电子琴整个系统的仿真图 系统得到与1、2、3、4、5、6、7七个音符相对应的频率。可以发出相应的声音。 从而完成了电子琴的整体功能。 孙小翠 《简易电子琴的设计与实现》 第11页 共18页 5 经过两周的奋战我的课程设计终于完成了。在没有做课程设计以前觉得课程设计只 是对这两年多以来所学知识的单纯总结,但是通过这次做课程设计发现自己的看法有点 太片面。课程设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。 通过这次课程设计使我明白了自己原来知识还比较欠缺。自己要学习的东西还太多,以 前老是觉得自己什么东西都会,什么东西都懂,有点眼高手低。通过这次课程设计,我 才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提 高自己知识和综合素质。 在整个设计过程中,包括前期中期和后期,我都有着许多不同的体会: 1) 这个设计的基本是接触一门新的语言并加以应用,对于我来说,没有想到的是 入手的速度比我的预料快,在以前编程的基础上,从接触到开始动手编程的时间得到了 很大的缩短。知识的接收速度在很大的程度上决定了动手的时间。 2) VHDL的编程与C语言的编程有着本质的不同,然而以往形成的旧编程习惯在VHDL编程中依然起着很大的作用。一通百通,不是没有道理的。对于学习新的知识并予以应 用的信心,显得更足了。 3) VHDL的设计关键是电路逻辑设计,而一个程序的关键是总体设计。对于硬件设 计接触不多的我们清楚这一点也许不无好处。 4)通过这个程序设计让我学会一种新的语言,对数字系统结构也有了更进一步的了 解和认识,对我以后的学习有很大的帮助。希望其他人在看再做类似设计时有所借鉴。 孙小翠 《简易电子琴的设计与实现》 第12页 共18页 致谢 通过几天的课程设计,我对数据库软件EDA技术、VHDL等系列知识都有了一定的了解,使用EDA技术开发页面的能力也有了很大提高。 在整个设计过程中,有很多人对任务的完成给予了重要的支持和帮助。感谢夏卓群 老师给予我在本次设计中的指导。夏老师在我论文的撰写过程中,给我提供了极大的帮 助和指导。从开始选题到中期修正,再到最终定稿,夏老师给我提供了许多宝贵建议。 老师渊博的专业知识,严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德, 朴实无华、平易近人的人格魅力对我影响深远。其次感谢许多同学在我此课程设计遇到 问题时给我的帮助使我能够顺利地进行设计的工作;网络论坛中有很多认识不认识的朋 友也都为我的设计提出了很宝贵的建议,同样在这里感谢他们。 孙小翠 《简易电子琴的设计与实现》 第13页 共18页 参考文献 [1] 卢毅, 赖杰. VHDL与数字电路设计[M]. 北京:科学出版社, 2001.3 [2] 北京理工大学ASIC研究所[M]. VHDL语言100例详解. 北京:清华大学出版社,1999.6 [3] 曾繁泰等. VHDL程序设计(第二版) [M]. 北京:清华大学出版社, 2001.6 [4] 陈雪松,滕立中. VHDL入门与应用[M]. 北京:人民邮电出版社,2000.9 [5] 王小军. VHDL简明教程[M]. 北京:清华大学出版社, 2000.2 孙小翠 《简易电子琴的设计与实现》 第14页 共18页 附件 (1) 1 ********************************* 程序名称:AUTO.VHD 实现功能:产生8位发声控制输入信号 作者:孙小翠 完成时间:2009-3-6 ********************************* VHDL源程序(AUTO.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY AUTO IS PORT ( CLK : IN STD_LOGIC; AUTO : IN STD_LOGIC; CLK2 : BUFFER STD_LOGIC; INDEX2 : IN STD_LOGIC_VECTOR(7 DOWNTO 0); INDEX0 : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END AUTO; ARCHITECTURE BEHAVIORAL OF AUTO IS SIGNAL COUNT0: INTEGER RANGE 0 TO 31; BEGIN PULSE0 :PROCESS(CLK,AUTO) VARIABLE COUNT :INTEGER RANGE 0 TO 8; BEGIN IF AUTO ='1' THEN COUNT := 0;CLK2<='0'; ELSIF(CLK'EVENT AND CLK ='1')THEN COUNT :=COUNT +1; IF COUNT =4 THEN CLK2 <='1'; ELSIF COUNT =8 THEN CLK2<='0'; COUNT:=0; END IF ; END IF ; END PROCESS; MUSIC:PROCESS(CLK2) BEGIN 孙小翠 《简易电子琴的设计与实现》 第15页 共18页 IF (CLK2'EVENT AND CLK2='1')THEN IF (COUNT0=31)THEN COUNT0<=0; ELSE COUNT0<=COUNT0+1; END IF ; END IF ; END PROCESS; COM1:PROCESS(COUNT0,AUTO,INDEX2) BEGIN IF AUTO ='0' THEN CASE COUNT0 IS WHEN 0=>INDEX0<="00000100"; --3 WHEN 1=>INDEX0<="00000100"; --3 WHEN 2=>INDEX0<="00000100"; --3 WHEN 3=>INDEX0<="00000100"; --3 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 WHEN 9=>INDEX0<="10000000"; --8 WHEN 10=>INDEX0<="10000000"; --8 WHEN 11=>INDEX0<="00000100"; --3 WHEN 12=>INDEX0<="00000010"; --2 WHEN 13=>INDEX0<="00000010"; --2 WHEN 14=>INDEX0<="00000001"; --1 WHEN 15=>INDEX0<="00000001"; --1 WHEN 16=>INDEX0<="00010000"; --5 WHEN 17=>INDEX0<="00010000"; --5 WHEN 18=>INDEX0<="00001000"; --4 WHEN 19=>INDEX0<="00001000"; --4 WHEN 20=>INDEX0<="00001000"; --4 WHEN 21=>INDEX0<="00000100"; --3 WHEN 22=>INDEX0<="00000010"; --2 WHEN 23=>INDEX0<="00000010"; --2 WHEN 24=>INDEX0<="00010000"; --5 WHEN 25=>INDEX0<="00010000"; --5 WHEN 26=>INDEX0<="00001000"; --4 WHEN 27=>INDEX0<="00001000"; --4 WHEN 28=>INDEX0<="00000100"; --3 WHEN 29=>INDEX0<="00000100"; --3 WHEN 30=>INDEX0<="00000010"; --2 WHEN 31=>INDEX0<="00000010"; --2 WHEN OTHERS =>NULL; 孙小翠 《简易电子琴的设计与实现》 第16页 共18页 END CASE; ELSE INDEX0<=INDEX2; END IF; END PROCESS; END BEHAVIORAL; (2) 2 ********************************* 程序名称:TONE.VHD 实现功能:产生音阶的分频预置值 作者:孙小翠 完成时间:2009-3-6 ********************************* VHDL源程序(TONE.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY TONE IS PORT (INDEX: IN STD_LOGIC_VECTOR(7 DOWNTO 0); CODE: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); HIGH: OUT STD_LOGIC; TONE0: OUT INTEGER RANGE 0 TO 2047); END TONE; ARCHITECTURE ART OF TONE IS BEGIN SEARCH : PROCESS(INDEX) BEGIN CASE INDEX IS WHEN "00000001"=>TONE0 <=773;CODE<="1001111";HIGH<='1'; WHEN "00000010"=>TONE0 <=912;CODE<="0010010";HIGH<='1'; WHEN "00000100"=>TONE0 <=1036;CODE<="0000110";HIGH<='1'; WHEN "00001000"=>TONE0 <=1116;CODE<="1001100";HIGH<='1'; WHEN "00010000"=>TONE0 <=1197;CODE<="0100100";HIGH<='1'; WHEN "00100000"=>TONE0 <=1290;CODE<="0100000";HIGH<='0'; WHEN "01000000"=>TONE0 <=1372;CODE<="0001111";HIGH<='0'; WHEN "10000000"=>TONE0 <=1410;CODE<="0000000";HIGH<='0'; WHEN OTHERS =>TONE0<=2047;CODE<="0000001";HIGH<='0'; END CASE; END PROCESS; END ART; 孙小翠 《简易电子琴的设计与实现》 第17页 共18页 (3) 3 ******************************************************* 程序名称:FENPIN.VHD 实现功能:对时基脉冲进行分频,得到与七个音符相对应的频率 作者:孙小翠 完成时间:2009-3-6 ******************************************************* VHDL源程序(FENPIN.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY FENPIN IS PORT(CLK1: IN STD_LOGIC; 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; BEGIN PROCESS(CLK1) VARIABLE COUNT:INTEGER RANGE 0 TO 8; BEGIN IF (CLK1'EVENT AND CLK1='1')THEN COUNT:=COUNT +1; IF COUNT=2 THEN PRECLK<='1'; ELSIF COUNT =4 THEN PRECLK<='0';COUNT:=0; END IF ; END IF ; END PROCESS; PROCESS(PRECLK,TONE1) VARIABLE COUNT11:INTEGER RANGE 0 TO 2047; BEGIN IF (PRECLK'EVENT AND PRECLK='1')THEN IF COUNT11
本文档为【简易电子琴的设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_180829
暂无简介~
格式:doc
大小:162KB
软件:Word
页数:25
分类:互联网
上传时间:2017-10-21
浏览量:36