实验四 硬件电子琴电路设计.docx

上传人:b****8 文档编号:9313952 上传时间:2023-02-04 格式:DOCX 页数:14 大小:669.99KB
下载 相关 举报
实验四 硬件电子琴电路设计.docx_第1页
第1页 / 共14页
实验四 硬件电子琴电路设计.docx_第2页
第2页 / 共14页
实验四 硬件电子琴电路设计.docx_第3页
第3页 / 共14页
实验四 硬件电子琴电路设计.docx_第4页
第4页 / 共14页
实验四 硬件电子琴电路设计.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

实验四 硬件电子琴电路设计.docx

《实验四 硬件电子琴电路设计.docx》由会员分享,可在线阅读,更多相关《实验四 硬件电子琴电路设计.docx(14页珍藏版)》请在冰豆网上搜索。

实验四 硬件电子琴电路设计.docx

实验四硬件电子琴电路设计

《FPGA》课程报告设计题目:

学生班级:

学生学号:

学生姓名:

指导教师:

时间:

成绩:

硬件电子琴电路设计

一、实验目的:

学习利用数控分频器设计硬件电子琴实验。

二、实验原理:

主系统由3个模块组成,例1是顶层设计文件,其内部有三个功能模块(如图1所示):

Speakera.v(例4)和ToneTaba.v(例3),NoteTabs.v(例2)。

模块ToneTaba是音阶发生器,当8位发声控制输入Index中某一位为高电平时,则对应某一音阶的数值将从端口Tone输出,作为获得该音阶的分频预置值;同时由Code输出对应该音阶简谱的显示数码,如‘5’,并由High输出指示音阶高8度显示。

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

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

三、实验过程:

1.分别输入ToneTaba.v和Speakera.v的VerilogHDL文本:

其中ToneTaba.v的代码是:

Speakera.v的代码是:

然后写testbench方针文件,进行方针:

ToneTaba.v的testbench文件代码是:

仿真图形是:

Speakera.v的testbench文件代码是:

仿真图形如下:

2.首先打开电脑上的记事本,按照COE文件的格式要求输入《梁祝》音乐,并存盘。

新建一个IPcore:

选择ReadOnly

存储器位宽:

Width为4,深度:

Depth为256按Next继续设定

钩选LoadInitFile

点击LoadFile…按键,装载初始文件Music.coe

点击Generate按键生成ROM的

IPCORE

输入NoteTabs.v文件,实现按照4HZ频率循环读取ROM的音乐节拍、频率信号。

NoteTabs.v的testbench文件代码是:

仿真图形如下:

3.输入div_50_12M.v、div_50_4HZ.v的VerilogHDL文本:

其中div_50_12M.v的代码是:

div_50_4HZ.v的代码如下:

div_50_12M.v的testbench文件代码是:

仿真图像如下:

写顶层文件将上面的模块例化在一起:

最后执行综合。

4.执行完上述步骤后,进行索引脚操作

:

锁引脚完成后,编辑、修改约束文件:

5.生成下载配置文件,下载到开发板进行经行验证。

四、思考题:

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

答:

电路上应当满足输出的频率在扬声器的工作范围之内,且驱动电流能够驱动扬声器。

2、如果演奏其他乐曲,程序应做哪些方面的改动?

答:

Music模块要改掉,改成相应乐曲的谱调。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 演讲主持

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1