西安工业大学北方信息工程学院中期报告.doc_第1页
西安工业大学北方信息工程学院中期报告.doc_第2页
西安工业大学北方信息工程学院中期报告.doc_第3页
西安工业大学北方信息工程学院中期报告.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西安工业大学北方信息工程学院毕业设计(论文)中期报告题目:简单电子琴电路设计 系 别 电子信息系 专 业 通信工程 班 级 B100308 姓 名 董又银 学 号 B10030802 导 师 张学智 杨丽娟 2014年3月22日1、 设计(论文)进展状况 系统设计分三个模块:乐曲自动演奏模块(AUTO)、音调发生模块(TONE)和数控分频模块(FENPIN),系统的整体组装设计原理图如下: CODE6.0INDEX7.0 HIGH TONE010.0 TONE010.0CLK CLK2AUTO INDEX07.0INDEX27.0CLK1 SPKSTONE110.0 FENPIN INPUT OUTPUT CLK SPEAKER VCC AUTO TONEHANDAUTOoutputNOTE6.0outputHIGH1KEYBOARD7.0 由于设计分模块组成,每个单独的模块都是一个完整的源程序,分别实现不同性质的功能,但是每个模块又是紧密关联的,前一个模块的输出很可能是后一模块的输入。如AUTO模块的音符信号输出就是TONE模块的音符信号输入。另外,时钟脉冲信号在本课程设计中用的最多,用处也最大,一般情况下时钟信号处上升沿有效,判断和控制各个计数器计数多少。1.乐曲自动演奏模块乐曲自动演奏模块的作用是产生8位发生控制输入信号。当进行自动演奏时,由存储在此模块的8位二进制数作为发声控制输入,从而自动演奏乐曲。该模块的VHDL源程序主要由3个工作进程组成,分别为PULSE0,MUSIC和COM1。PULSE0的作用是根据键盘输入(自动演奏)的值(0或1)来判断计数器COUNT以及脉冲CLK2的输出值。部分源程序如下: PULSE0:PROCESS(CLK,AUTO) -工作进程开始 VARIABLE COUNT:INTEGER RANGE 0 TO 8; -定义计数器变量,值从0到8 IF AUTO=1THEN -键盘输入为1 COUNT:=0;CLK2INDEX0INDEX0=00010000; -5 该模块最主要的用途就是将输入二进制数转化为发声控制输入,是产生音符的重要步骤.2.音调发生模块音调发生模块的作用是产生音阶的分频预置值。当8位发声控制输入信号中的某一位为高电平时,则对应某一音阶的数值将输出,该数值即为该音阶的分频预置值,分频预置值控制数控分频模块进行分频,由此得到每个音阶对应的频率。该模块的唯一输入信号INDEX对应就是自动模块中最后的输出INDEX0,音符显示信号CODE,高低音显示信号HIGH和音符分频系数都是根据音符输入确定的。该模块最主要的作用就是给音符输入预设频率值,因为,电子琴最终实现乐曲演奏就是输出不同频率的正弦波,此模块就是将二进制发声信号转化为对应的频率。3.数控分频模块数控分频模块是对时基脉冲进行分频,得到与0、1、2、3、4、5、6、7八个音符相对应的频率。该模块主要由4个工作进程组成。首先,根据系统时钟信号的输入得到时基脉冲以及计数器的值,而时钟信号在AUTO模块中便已给出,两者之间的设置关系类似于AUTO模块中第一个工作进程的设置。第二个PROCESS是此模块的核心,即由时基脉冲值转化为音符的频率。部分源程序如下:VARIABLE COUNT11:INTEGER RANGE 0 TO 2047; -定义频率计数器,从0到2047Hz IF(PRECLKEVENT AND PRECLK=1)THEN -时基脉冲为1时 IF COUNT11TONE1 THEN -频率计数器小于音符分频系数 COUNT11:=COUNT11+1;FULLSPKS=1; -计数加1,扬声器音频为1 ELSE COUNT11:=0;FULLSPKS=0;最后一个PROCESS则是用来设置扬声器输出信号的,扬声器信号由0和1控制,当且仅当前一个PROCESS中的FULLSPKS输出为1时,扬声器才有输出,再根据计数器取值来确定输出是1还是0。部分源程序如下:IF(FULLSPKSEVENT AND FULLSPKS=1)THEN -扬声器音频信号为1COUNT2:=NOT COUNT2;IF COUNT2=1THENSPKS=1; -扬声器输出为1ELSE SPK=0; 2、 存在问题及解决措施 编写程序时,如何定义1-8音阶? 解决方法:给每个音阶定义好频率值,对应的频率对应相应的音阶。 如何设定自动演奏和手动演奏?三、后期工作安排在设计好程序之后,在MaxplusII软件中进行仿真,检验程序是否

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论