dsp硬件课程实验报告.doc

上传人:椰子壳 文档编号:5014394 上传时间:2020-01-28 格式:DOC 页数:21 大小:4.81MB
返回 下载 相关 举报
dsp硬件课程实验报告.doc_第1页
第1页 / 共21页
dsp硬件课程实验报告.doc_第2页
第2页 / 共21页
dsp硬件课程实验报告.doc_第3页
第3页 / 共21页
dsp硬件课程实验报告.doc_第4页
第4页 / 共21页
dsp硬件课程实验报告.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《dsp硬件课程实验报告.doc》由会员分享,可在线阅读,更多相关《dsp硬件课程实验报告.doc(21页珍藏版)》请在三一文库上搜索。

1、DSP 硬件课程实验报告 学院: 电子工程学院 班级: 2009211204 姓名: 学号: 班内序号: 14 实验一:常用指令实验一:实验要求 1、4、5、7 指令实验-要求看懂2、3、6 指令实验-边做边进行源程序指令的详细注释 二:实验步骤及内容2、直接寻址方式下的数据存取:源程序地址存的16进制数反汇编程序主寄存器注释CPL=0 A=#1234h DP=#04hB=20 22=A A=A+#9Ah DP=#09h 25=AA=#1234hDP=#8 38h=A 3AH=#365hCPL=1 SP=#1C00h 5Fh=#0ACDCh F6BEF0201234EA0411148016F0

2、009AEA098019F0201234EA088038763A365F7BE77181C00765FABCDstartST1,14=0 A=#1234h 0 DP=#4 B=OX14 OX16=AA=A+#0X9A DP=#9OX19=AA=#1234h 214H;在内存窗口内OX214地址显示语句B=20的结果。 累加器A内16进制数1234送DP页中的OX16的地址;CPL=0,dma=22=16H;DP:dma=04H:16H=000000100 0010110=216H;在内存窗口内OX216地址显示语句22=A结果,即A的内容放到OX216地址里。 将寄存器A的值加上立即数DP=9

3、的9位2进制数是000001001。dma=25=19H;DP:dma=09H:19H =000001001 0011001=499H;在内存窗口内OX499地址显示结果。将寄存器A的值赋给地址为25的存储器单元寄存器A载入立即数1234HDP=8的9位2进制数是000001000。dma=38H;DP:dma=08H:38H =000001000 0111000=438H;在内存窗口内OX438地址显示结果(1234)。DP=8的9位2进制数是000001000。dma=3AH;DP:dma=08H:3AH =000001000 0111010=43AH;在内存窗口内OX43A地址显示结果(

4、365)。ST1状态寄存器的14位置1,CPL=1将ST1状态寄存器的14位置0,有效地址为SP + dma 寄存器SP载入立即数SP= 1C00H= 1110000000000,dam= 5F= 1011111;SP+dam = 1C5FH =1110001011111,在内存窗口内有效地址OX1C5F显示ACDC。空操作,等待循环3、间接寻址方式下的数据存取:源程序地址存的16进制数反汇编程序主寄存器注释AR3=#2000h*AR3 = #0AC01hT=#8B=*AR3-TSAR2=#023Ah*AR2+ = #999Ah*+AR2 = A 7AR0=#8 AR3=#1200h*AR3+

5、0=#1111h*AR3+0=#2222h*AR3+0=#3333h*AR3(#16)=#5555hAR4=#266Ah*AR4=#8848hA=*AR4+0B 12*AR4= #9911hB=#025Ah*AR2+0% = B4771320007683AC01770E8158B771223A7692999A6F9AC87771087713120076B3111176B3222276B3333376E310555557714266A768488486FBCC4C76849911F12025A99C4F495F495 mmr0X13=#0X2000 *AR3=#0XAC01 mmr0XE=#0X

6、8 B=*AR3-TSmmr0X12=#0X23A *AR2+=#0X999A *+AR2=A7mmr0X10=#0X8 mmr0X13=#0X1200*AR3+0=#0X1111*AR3+0=#0X2222*AR3+0=#0X3333 *AR316=#0X5555 mmr0X14=#0X266A *AR4=#0X8848 A=*AR4+0B12 *AR4=#0X9911hB=#25Ah0*AR2+0%=B4wait nop nop AR3=2000T=8B=FFFFAC0100,AR3=1FFFAR2=23AAR2=23BAR2=23CAR0=8AR3=1200AR3=1208AR3=121

7、0AR3=1218AR4=266AAR4=2666,A=FFF8848000B=00000025AAR2=244AR3辅助寄存器,数据空间地址数2000h放入AR3。数据空间的地址2000h被存储在AR3当中,*AR3表示AR3中地址所指向的存储器单元2000h存放数据AC01h。TS是T暂存器中存放的移位值*AR3-访问后地址值减1。T=#8和 B=*AR3-TS将2000h中的数据左移8位(二进制数)后载入累加器B中(16进制左移2位),所以而且AR3中的地址值减1,成为1FFFh。AR2辅助寄存器,23Ah数据空间地址数放入AR2。*AR2+访问后AR2中地址加一。AR2=#023Ah和

8、*AR2+=#999Ah 完成了向地址为023Ah+1=23Bh的数据单元存放数据999Ah。*+AR2访问前AR2中地址加一。AR2中地址为23Bh+1=23Ch,累加器A内的数左移7位。23C地址放0。8h放入AR0。1200h放入AR3。AR3里地址数1200h内放立即数1111h 。*AR3+0访问后AR3中地址1200h加上AR0中的值8, AR3内新的地址数为1208h。AR3里地址数1208h内放立即数2222h 。*AR3+0访问后AR3中地址1208h加上AR0中的值8,AR3内的地址数为1210h。AR3里地址数1210h内放立即数3333h 。*AR3+0访问后AR3中地

9、址1210h加上AR0中的值8,AR3内的地址数为1218h。*AR3(16)为AR3中地址1218h加上立即数16 (十进制数),(1218h+10h=1228h)。地址1228h放立即数5555h。访问后AR3不变,AR3内的地址数1218h。数据空间地址数266Ah放入AR4。地址266Ah被存储在AR4中,*AR4表示AR4中地址所指向的存储器单元266Ah存放数据8848h,AR4中地址不变。*AR4+0B:访问后AR4中地址加上AR0中的值,并反向进位。AR4=2666,8848的二进制数左移12位(高位1)则A=FFF8848000。266A+8换算成二进制再计算(注:266A

10、的二进制数10 0110 0110 1010,8的二进制数1000,后4位相加=1 0010,反向进位=0 0110,10011001100110=2666)*AR4表示AR4中地址所指向的存储器单元2666h存放数据9911h。立即数25Ah载入B累加器。*AR2+0% 访问后AR2中地址加上AR0中的值,并循环寻址;先在23C地址内放25A0(二进制数左移4位,16进制数左移1位) 访问后AR2地址(AR2中地址23Ch+AR0中的值8h)=244h。6ALU的旋转及移位:源程序地址存的16进制数反汇编程序主寄存器注 释start:SXM=0A=#684FhA=A+#0EDC9hB=#12

11、04hB=B+#05D9AhC=1 A=ACARRY C=0 A=ACARRYROLTC(A) SXM=1 B=B + #1234h B=B/CARRY B=#0C000h16 SXM=0 B=B+#0EFCDh B=B/CARRYA = B C (-5)B = B C (5)B= B+#2347hA=A+#697AhSHIFTC(A)A= A+ #0AACDhSHIFTC(A)A = B -12B = A 12A = B 12F6B8F020684FF000EDC9F1201204F3005D9AF5BBF491F4BBF491F492F7B8F3001234F590F162C000F6B8

12、F300EFCDF590F67BF765F3002347F000697AF495F000AACDF494F2F4F1ECF2ECST1,8=0A=#684Fh0A=A+#OXEDC9B=#1204h0B=B+ #OX05D9AST0,11=1 A= ACARRY ST0,11=0 A=ACARRYroltc(A) ST1,8=0 B=B + #OX1234 B=B/CARRY B=#0C000h16 ST1,8=0 B=B+#0XEFCDB=B/CARRYA = B C -5B = B C5B= B+#OX2347A=A+#OX697AshiftcAA= A+ #0AACDshiftcAA =

13、 B -12B = A 12A = B =2fm时就可保证采样信号无失真地保持原模拟信号的全部信息,可完全重现原模拟信号;如果采样率低于2fm,称为欠采样,就会发生频域混叠,重现原模拟信号时产生失真;如采样率高于2fm,称为过采样,这时样值增多,能得到更好复原信号,但影响信号处理速度。在实际的情况中,大多数模拟信号不是频带有限的。所以,在一般的情况下首先要使模拟信号通过一个截止频率不高于0.5fs的低通滤波器,使其成为一个限带信号。然后,对其采样就可以保证信号无混叠失真。所以,该低通滤波器又叫抗混叠滤波器。再有,在采样处理中量化位数也影响信号处理的质量,位数少量化噪声大,因此要求选择A/D要有

14、足够多得位数,而在使用中输入信号幅度要放大到接近A/D的最大值,幅度过大将产生限幅失真。 实验程序应包括系统初始化,串口初始化和MAX1246通道选择,采样和存储及D/A输出程序,本实验中采样和D/A输出是采用串口中断方式,数据存储首地址在 0X3000H。实验步骤及程序打开实验版,将源程序导入explore5410中,微调频率旋钮,观察图像变化。源程序如下: *; File: WVD.ASM - Wigner-Ville distribution program for the C5410; * .width 80 .length 55 .title WVD program .mmregs

15、.setsect .text,0x500,0 .setsect vectors,0x180,0 .setsect var,0x60,1 .nolist ; 暂停.lst文件的输出列表 .sect vectors .copy vectors.asm .sect varaddress .word 0x0000tflag1.word 0x0000 .text pmst = #01a0h ; 建立 iptr sp = #27F0h ; 堆栈指针初始化 dp = #0 address = #3000h tcr = #10h intm = 1;McBSP0 INITIALIZATION 多通道缓冲串行口初

16、始化 mmr(38h) = #0h mmr(39h) = #0100000000100000b 设置串口控制寄存器1(SPCR10) mmr(38h) = #1h mmr(39h) = #0000001000100010b 设置串口控制寄存器2(SPCR20) mmr(38h) = #6h mmr(39h) = #0000000011111010b设置取样率产生器寄存器(SRGR10) mmr(38h) = #7h mmr(39h) = #1011000000001111b设置取样率产生器寄存器(SRGR20) mmr(38h) = #2h mmr(39h) = #00000000001000

17、00b 设置接收控制寄存器(RCR10) mmr(38h) = #3h mmr(39h) = #0001h 设置接收控制寄存器(RCR20) mmr(38h) = #4h mmr(39h) = #0000000001000000b设置发送控制寄存器(XCR10) mmr(38h) = #0Eh mmr(39h) = #0000101000000010b设置引脚控制寄存器(PCR0) mmr(38h) = #8h mmr(39h) = #0001h mmr(38h) = #9h mmr(39h) = #0001h mmr(38h) = #0Ah mmr(39h) = #0001h mmr(38h

18、) = #0Ch mmr(39h) = #0001h nop ;等待两个时钟 nop mmr(38h) = #1h mmr(39h) = #0000001001100010b ;取样率产生器初始化标志位 GRST = 1 repeat(#200) nop;MAX1246 CONFIGERATION AD采样设置 xf = #0 ;向MAX1246发出片选信号 mmr(38h) = #1h mmr(39h) = #0000001001100011b ;发送部分初始化标志位XRST = 1 mmr(38h) = #0h mmr(39h) = #0100000000100001b ;接收部分初始化标

19、志位RRST = 1 mmr(22h) = #0000h mmr(23h) = #97h ;向发送数据寄存器DXR0置入控制信号 mmr(38h) = #1h mmr(39h) = #0000001011100011b ;帧同步初始化标志位FRST = 1max531芯片: ;DA设置 mmr(48h) = #0h mmr(49h) = #0000000000000000b;设置系列端口控制寄存器(SPCR11) mmr(48h) = #1h mmr(49h) = #0000000100100000 ;设置系列端口控制寄存器(SPCR21) mmr(48h) = #6h mmr(49h) =

20、#0000000011111010;设置采样速率形成寄存器 (SRGR11) mmr(48h) = #7h mmr(49h) = #0011000000001111;设置采样速率形成寄存器 (SRGR21) mmr(48h) = #4h mmr(49h) = #0000000001000000b;设置转变控制寄存器 XCR10 mmr(48h) = #0Eh mmr(49h) = #0000101000000000b;设置管脚控制寄存器 PCR1 nop nop mmr(48h) = #1h mmr(49h) = #0000000101100000b;设置系列端口控制寄存器(SPCR21) r

21、epeat(#200) ;等待两个串口时钟 nop mmr(48h) = #1h mmr(49h) = #0000000101100001b ;XRST = 1 mmr(48h) = #1h mmr(49h) = #0000000111100001b ;FRST = 1 imr = #0210h intm = 0wait:nopnop goto wait; - RINT -RINT: 中断部分 push(ar2) ;入栈(以保护原数据不被损坏) push(bl) push(bh) push(bg) push(st0) push(st1) b = mmr(21h) 载入立即数至b寄存器中 b =

22、 #0FFF0h & b 0FFF0与b进行与运算,只保留b中间部分做有效值。 data(ar2)=address 在辅助存储器2中存入address*ar2+ = data(bl); 储存至 rcv 缓冲区 b = b3 b = b & #1fffh b = b - #1000h mmr(43h) = data(bl) 数据转成mx531接受的格式进行DA输出b=#3400hb =b-(ar2) if(bgt) goto ne1tflag1=#0 goto ne2ne1:tflag1=#1ne2: TC = (ar2 = #3800h) 有效地址为3000h3800h if (TC) got

23、o restrt;缓冲区堆栈满后重新从3000h进栈 address=data(ar2) goto endlinerestrt: ar2 = #3000h address=data(ar2)endline: st1=pop() ;出栈保存 st0=pop() bg=pop() bh=pop() bl=pop() ar2=pop() return_enable.end各串口作用及位置附录:实验结果:频率很小时:未产生失真,时域波形图如下:频域图如下:各参数设置如图:随着调节信号的频率微调旋钮,使频率增大,波形逐渐失真:时域:频域:再增大频率,不满足乃奎斯特抽样准则,波形出现混叠:时域:频域:FS

24、2Fm 出现混叠失真,采样定理得以验证。 实验三:FIR滤波器的设计实验目的 1. 掌握直接型结构FIR滤波器的设计2. 进行FIR滤波器特性测试实验3学习数字FIR滤波器差分方程程序实现方法实验步骤 接好试验系统连线,打开微机并运行Explor5410程序,进入系统调试环境。载入实验子目录下Ex3中的FIRLP.OBJ程序并运行程序。增大信号发生器频率,看到频谱向右移动,到通带截止频率后迅速减小。高通、带通、带阻等类似。FIR滤波器的设计:用matlab首先进行仿真,参数如下图:其中Fs=15000Hz,通带截止频率Fpass=3100Hz,阻带起始频率Fstop=3700Hz。下面是低通滤

25、波器各阶参数:.word 1 .word 1 .word -1 .word -7 .word -14 .word -14 .word -3 .word 7 .word 5 .word -5 .word -8 .word 2 .word 10 .word 2 .word -11 .word -8 .word 10 .word 14 .word -6 .word -21 .word -2 .word 25 .word 14 .word -27 .word -30 .word 22 .word 53 .word -7 .word -89 .word -37 .word 187 .word 404 .

26、word 404 .word 187 .word -37 .word -89 .word -7 .word 53 .word 22 .word -30 .word -27 .word 14 .word 25 .word -2 .word -21 .word -6 .word 14 .word 10 .word -8 .word -11 .word 2 .word 10 .word 2 .word -8 .word -5 .word 5 .word 7 .word -3 .word -14 .word -14 .word -7 .word -1 .word 1 .word 1产生新表数据文件,更

27、改Firlp.asm内数据,并生成.Obj文件导入。逐步增大频率,观察频谱如下:可以发现随着频率的增大增益逐渐减小,在3100hz通带增益开始下降,3700hz以后为阻带。实验心得及总结:经过一段时间的DSP理论学习之后接触硬件实验,感觉很新鲜,把课本上复杂难懂的DSP理论公式具体化,加深了我对数字信号处理这门课程的深刻理解和认识。下面就实验内容叙述一下我的理解。 实验一是一些关于基本指令操作的例子,根据操作步骤一步一步进行就可以完成实验,其中可以通过单步运行指令查看每个语句的作用,同时也加深了对这门语言的理解。 实验二是采样及输入输出实验, 通过模拟信号与数字信号之间转换过程的实验,掌握了DSP系统的模拟信号输入输出通道控制和使用方法,也加深对采样定理的理解。 实验三是关于数字滤波器的实现,我了解了如何实现滤波器,且熟悉了滤波器的特性,掌握了滤波器的计算机仿真方法。数字信号处理的最主要应用领域是数字滤波。数字滤波器被认为是数字信号处理的另一块重要基石。数字滤波和模拟滤波相比有以下优点:可满足滤波器对幅值和相位特性的严格要求,精度高;没有电压、温度漂移等问题,基本不受环境影响,稳定性好;用DSP实现的滤波器具有高度的可靠性,灵活性好。 此次DSP硬件实验受益非线,收获到了很多,虽然实验室的设备不够稳定,经常同样的动作要做很多次,要调试很久,所以更能品尝到成功的乐趣。 21

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

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1