《DSP原理与应用》实验指导书1-20111102
时间:2025-05-14
时间:2025-05-14
DSP实验详细指导
2011秋季学期“DSP原理与应用”实验教学资料
实验一 CCS集成环境的熟悉 ---2学时 实验二 算术运算与数据操作的汇编语言程序设计---2学时 实验三 信号发生器设计 ---2学时 实验四 IIR滤波器的DSP实现 ---2学时 实验五 FIR滤波器的DSP实现 ---2学时 实验六 FFT的DSP实现 ---2学时
实验一 CCS集成开发环境的熟悉
一、实验内容及步骤
通过编写程序计算y=x1+x2+x3+x4+x5练习CCS 2 ( C5000)的使用。
1.在D盘或E盘建立一个自己的文件夹, 如e:\05136101,该文件夹用英文或数字命名。后面所有与实验内容有关的工程与程序都在此文件夹下保存或操作。
2.运行CCS 2(‘C5000)进入CCS集成开发环境。以下操作如无特殊声明一般都在此环境下操作。 3.新建工程。点击主菜单Project-New,会出现图1-1所示的Project Creation对话框。
图1-1
参照图1-1按如下顺序进行设置或操作: Location:e:\05136101 Project:example2 点击完成按钮即可。
4.新建并保存主程序文件、链接命令文件和中断向量表文件。本次实验三个文件的参考名称为:主程序文件example2.asm、链接命令文件example2.cmd、中断向量表文件vectors.asm。点击菜单File-New-Source File打开文本编辑窗口Untitled1,如图1-2。用菜单File-Save功能将其保存到e:\05136101\example2中,其中文件名称为example2,保存类型为*.asm,如图1-3
。用同样的方法
DSP实验详细指导
新建并保存文件example2.cmd和vectors.asm。
图
1-2
图
1-3
5.为新建工程添加主程序文件、中断向量表文件和链接命令文件。
在工程管理器中(图1-2中的红色方框处)右键单击example2.pjt,选择Add Files to Project,在出现的如图1-4所示的Add Files to Project对话框中查找并选中刚才建立的三个文件example2.asm,example2.cmd,vectors.asm,点击打开按钮将它们一起添加到该工程中去。
图1-4
6.编写主程序文件。单击工程管理器中的工程example2.pjt左边的+号展开example2.pjt工程,再单击文件夹Source左边的+号,如图1-5。找到并双击example2.asm ,在界面右边出现的example2.asm文本编辑窗口中输入或复制主程序(注释部分可不输入)。文件内容如下:
图
1-5
DSP实验详细指导
*******计算y=x1+x2+x3+x4+x5的程序**********************************************
.title "example2.asm" ;伪指令。用于格式化输出清单文件,声明在每页的顶部打印文件标题 .mmregs ;伪指令。声明CPU寄存器名称
STACK .usect "STACK",10H ;伪指令。自定义未初始化段STACK及大小(10H个字),最左边的STACK是标号
.bss x,5 ;伪指令。声明数组x,5个字 .bss y,1 ;伪指令。声明变量y,1个字 .def start ;伪指令。声明本文件中的标号start能被别的文件(程序)引用 .data ;伪指令,指示下面的代码为数据段,通常包含初始化的数据(常数)。 table: .word 10,20,3,4,5 ;伪指令。声明5个16位整数类型的常数。table是标号。
.text ;伪指令,指示下面的代码为文本段,通常包含可执行的代码。 start: STM #0,SWWSR ; SWWSR=0,插入0个等待状态。start是标号。
STM #STACK+10H,sp ;sp=#STACK+10H,设置堆栈指针指向堆栈段的底部 STM #x,AR1 ;AR1=#x或AR1指向数组x RPT #4 ;下一条指令重复执行4+1=5次 MVPD table,*AR1+ ;数据传送。程序存储器中的table数据表→AR1+指向的数据存储器 LD #0,A ;累加器A清零 CALL SUM ;调用求和子程序SUM
end: B end ;无条件转移到标号end所在地方执行程序 SUM: ;标号,指示求和子程序SUM从这里开始
STM #x,AR3 ;AR3指向数组x STM #4,AR2 ;AR2=4 loop: ADD *AR3+,A ;*AR3+A→A,然后AR3= AR3+1。 loop是标号。
BANZ loop,*AR2- ;如果AR2的值不为0, AR2= AR2-1,跳转到loop处执行;否则执行下一条指令 STL A,*(y) ; y=AL RET ;子程序返回 .end ;伪指令。指示汇编结束
7)编写链接命令文件。
在工程管理器中双击example2.pjt工程中的example2.cmd ,将出现example2.cmd文本编辑窗口。在该文本编辑窗口中输入或复制文件内容。文件内容如下:
vectors.obj /*声明要链接的文件---中断向量表文件的目标文件*/ example2.obj /*声明要链接的文件---主程序文件的目标文件*/ -o example2.out /*声明链接产生的可执行文件名称,默认为a.out */ -m example2.map /*声明链接产生的存储器映射文件*/ -estart /*声明主程序入口*/
MEMORY /*关键字加一对{},存储器配置*/ {
PAGE 0: /*程序存储区*/ EPROM:org=0090H len=0F70H /*定义EPROM区,起始地址0090H,长度0F70H*/ VECS: org=0080H len=0010H /*定义VECS区,起始地址0080H,长度0010H*/ PAGE 1: /*数据存储区*/ SPRAM:org=1000H len=1000H /*定义SPRAM区,起始地址1000H,长度1000H*/ DARAM:org=2000H len=2000H /*定义DARAM区,起始地址2000H,长度2000H*/ }
SECTIONS /*关键字加一对{},定位段*/ { .text :>EPROM PAGE 0 /*将.text段映射或定位到PAGE0的EPROM区*/ .data :>EPROM PAGE 0 /*将.text段映射或定位到 …… 此处隐藏:16179字,全部文档内容请下载后查看。喜欢就下载吧 ……
上一篇:2014 七年级英语上册短语
下一篇:大专毕业论文-开题报告-V4.0