数电EDA简易电子琴Verilog-设计说明.doc
《数电EDA简易电子琴Verilog-设计说明.doc》由会员分享,可在线阅读,更多相关《数电EDA简易电子琴Verilog-设计说明.doc(8页珍藏版)》请在课桌文档上搜索。
1、 . . 数字电子技术课程设计-简易电子琴设计专 业 : 姓 名 : 学 号 : 日 期 : 1、 设计任务用VerilogHDL语言设计简易电子琴。(1)单独从左至右按下S1-S7每个按键后能够各自对应发出 “哆来咪发唆啦西”的音乐声;(2)按下最右边按键(S8),同时再配合按下S1-S7键后,发高八度的对应音;(3)按键需要进行“消抖”处理;(4)外部输入脉冲信号频率为1mhz;(5)扩展要求:自主设计(增加低8度功能)。二、实验目的1、学习verilogHDL语言的基本运用,能够利用其进行简单编程;2、学习使用Quartus7.0的基本操作,能够利用其进行简单的设计;3、结合实践加深对理
2、论知识的理解。三、设计原理1)喇叭的振动频率不同,导致产生不同的声音;振动频率越低,声音越低沉,振动频率越高,声音越尖锐。题目中音乐基本音的 “哆”对应频率为523Hz 、“来”对应频率为587Hz 、“咪”对应频率为659Hz 、“发”对应频率为698Hz 、“唆”对应频率为784Hz 、“啦”对应频率为880Hz 、“西”对应频率为998Hz。低8度音:基本音频率/2,例如低音1的频率为523/2=261.5Hz。高8度音:基本音频率2,例如高音1的频率为5232=1046Hz.。不同的频率产生利用给定的时钟脉冲来进行分频实现。(2)消抖的原理:按键默认输入逻辑1,当有按键按下时对应的输入
3、为逻辑0(但会存在抖动),当FPGA开始检测到该引脚从1变为0后开始定时(按键抖动时间大约10ms),定时时间完毕后若该引脚仍然为0则表示确实发生按键按下,否则视为抖动而不予以理会;按键松开过程的消抖处理和按下时原理一样。(3)原理框图四、程序设计消抖模块module xiaodou(key_in,key_out,clk);input key_in;input clk;output key_out;reg key_out;reg 2:0presta;integer q;parameter s0=3b000, s1=3b001, s2=3b010, s3=3b011, s4=3b100, s5=
4、3b101, s6=3b110, s7=3b111;always(posedge clk)begincase(presta)s0:beginkey_out=0;q=0;if(key_in=1)presta=s0;elsepresta=s1;ends1:beginkey_out9999)presta=s2;elseq=q+1;ends2:beginkey_out=0;q=0;if(key_in=1)presta=s0;elsepresta=s3;ends3:beginkey_out=1;q=0;if(key_in=0)presta=s3;elsepresta=s4;ends4:beginkey_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 简易 电子琴 Verilog 设计 说明
链接地址:https://www.desk33.com/p-6078.html