nco产生dtmf信号解码实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验5 四按键双音多频信号的解码
在实验4中我们用DSPBUILDER里的NCO模块产生一个四按键的双音多频信号,用七段数码管显示相应的双音多频信号频率组合,并在双音多频信号中添加静音,然后通过EP2C70开发板的DAC将双音多频信号模拟输出在示波器上,我们在示波器上就能够观察到带有静音信号的dtmf信号。
这次实验在实验四的基础上做了一些调整,解出dtmf信号,并用另一个七段数码管显示解出的数据。
先说几个注意事项:
不要带电插拔,以免损坏器件
USB-Blaster的接法:1#管脚接板子上J9的1#管脚
一.双音多频信号产生部分:
在DSPBUILDER下的mdl原理图如下:
二.Mdl文件中各部分说明:
4个按键和拨码开关可以以组合的方式来选择两个NCO模块输入的phi_inc值起到
信号频率选择的作用,并且能够控制数码管产生相应的数字或者字母,双音多频信号信
HDLImport模块:第一个HDLImport模块的作用是导入switch_button2.v这个文件,
switch_button2.v是按键和拨码开关控制程序。
第二个HDLImport模块的作用是导入
clock_divided.v,clock_divided.v的目的是产生静音部分。
NCO模块的配置如下:
注:两个NCO模块配置是一样的。
配置完成后点击,Generate 。
其他模块设置如下:
注:这个模块有2个。
注:这个模块有3个。
注:这个模块有17个。
注:在上面这个图中选出红色所标记处的模块,
在模块库里找到HDLImport模块,然后拖到工程里,在添加选中“所需文件“中的button_switch2.v如下图:注:把button_switch2.v 复制到你的工程文件中再添加
然后点击Compile即可。
完成后模块如下:
同理配置完成下面这个模块:
以上所有模块配置好后,按图所示连接起来,然后运行。
二.实验现象:
1.用Scop仿真观察波形;
我们可以看到示波器3的图硬是:类似于下图:
示波器4显示的图应是类似于下图:
示波器1显示的图应是类似于下图:
2.编译生成硬件工程:
完成后,打开你的工程目录文件,打开(你的mdl命名的名字)_dspbuilder文件夹,然后双击后缀名为qpf的文件。
如下图:
选择File->New 选择如下:
然后File->Save as 文件名为jie,保存。
在下图深颜色出右击鼠标:
选中第一个,出现下图:
点击,选择reports里的,后缀名为vhd的文件,如:
然后打开,在点击Add,再点击OK即可
出现如下图的文件:
右击选择第四个,完成后确定,即可生产此模块。
从“所需文件“中把clock_48k.v,clock_1dian5k.v,jiemaxianshi.v, l_check.v, h_check.v五个文件拖到你的(你的mdl命名的名字)_dspbuilder文件夹中,然后按上面的方法把他们生产模块。
在jie.bdf的空白处,双击,出现如下图:
依次选中Project中的6个模块
在双击空白处,可以在Name中输入input,output ,实现如下图所示的连接和命名
Tools->MegaWizard Plug-In Manager->选择第一个,然后按下图所示进行选择及参数设置,
然后next,出现点击step1,
点击上面的Edit Coefficient,把lp48k.txt文件拷贝到(你的mdl命名的名字)_dspbuilder文件夹中,选择如下图:
点击ok。
接下来设置如下:
点击Finish,再点击step2 设置如下:
用同样的方法设置hp_fir,各步骤设置如下:
完成后,加入到你的bdf 中,然后右击
图中深颜色的jie.bdf 文件,选择第三个。
然后把各模块连接,具体连接
见“所需文件“中的,XXXX,然后点击上面的
图标
完成后,点击Assignments,选择Pins,管脚分配如下(只有这么多分配了管脚,注意观察):
完成后,点击。
然后再点击,下载到板子上运行即可。