当前位置:文档之家› DSP实验报告

DSP实验报告

学校代码学号分类号密级DSP实验报告院系名称专业名称年级学生姓名指导老师年月日实验一数据存储实验一、实验目的1. 掌握 TMS320C54X 程序空间的分配;2. 掌握 TMS320C54X 数据空间的分配;3. 能够熟练运用TMS320C54X 数据空间的指令。

二、实验设备计算机,CCS 3.1版软件,DSP仿真器,E300实验箱,DSP-54XP CPU板。

三、实验系统相关资源介绍1. 本实验指导书是以TMS320VC5416为例,介绍其相关的内部和外部存储器资源。

对于其他类型的CPU请参考查阅相关的数据手册。

)下面给出TMS320VC5416的存储器分配表:对于数据存储空间而言,映射表相对固定。

值得注意的是内部寄存器都映射到数据存储器空间内。

因此在编程时这些特定的空间不能作其他用途。

对于程序空间而言,其映射表和CPU 的工作模式有关。

当MP/MC 引脚为高电平时,CPU 工作在微处理器模式;当MP/MC引脚为低电平时,CPU工作在微计算机模式。

具体的MP和MC模式下的程序和数据映射关系如上图所示。

2. 样例程序实验操作简单说明:本实验程序将对0x1000 开始的8 个地址空间,填写入0xAAAA 的数据,然后读出,并存储到以0x1008开始的8个地址空间,在CCS中可以观察DATA存储器空间地址0x1000~0x100F 值的变化。

四、实验步骤与内容1. 在进行 DSP实验之前,需先连接好仿真器、实验箱及计算机,连接方法如下所示:2. E300 底板的开关SW4 的第1位置ON,其余位置OFF,SW5全部置ON,其余开关不做设置要求。

3. 上电复位在硬件安装完成后,确认安装正确、各实验部件及电源连接无误后,启动计算机,接通仿真器电源,此时,仿真器上的“红色指示灯”应点亮,否则DSP开发系统与计算机连接存在问题。

4. 运行CCS程序1) 待计算机启动成功后,实验箱220V电源置“ON”,实验箱上电;2) 启动CCS3.1,进入CCS界面后,点击“Debug—Connect”;3) 此时仿真器上的“绿色指示灯”应点亮,CCS正常启动,表明系统连接正常;否则仿真器的连接、JTAG 接口或CCS 相关设置存在问题,这时需掉电检查仿真器的连接、JTAG 接口连接是否正确,或检查CCS相关设置是否存在问题。

注:如出现上述问题,原因有二:其一,可能是系统连接错误或没有正常复位,应重新检查系统硬件并复位;其二,可能是软件安装或设置存在问题,应尝试调整软件系统设置,具体仿真器和仿真软件CCS的应5.成功运行CCS 程序后,首先应熟悉CCS的用户界面;6.学会在CCS环境下创建工程文件、添加程序文件、编写程序、编译、装载、调试,学习如何使用观察窗口等。

7.用“Project\open”打开“\normal\ 01_mem\ mem.pjt”.编译并装载“\01_mem\Debug\mem.out”。

8.用“Edit”下拉菜单中的“Memory/Fill”编辑内存单元,参数设置如下图:单击“OK”此时以0x1000 为起始地址的16个内存单元被修改成:0x00099.用“View”下拉菜单“Memory”观察内存单元变化,输入要查看的内存单元地址,本实验要查看0x1000H~0x100FH 单元的数值变化,输入地址0x1000H;单击“OK”如下图所示:10.点击“Debug\Go main”进入主程序,在程序中“加软件断点1”和“加软件断点2”处施加软件断点。

11. 单击“Debug\Run”运行程序,也可以“单步”运行程序;当程序运行到“软件断点1”处时,查看0x1000H~0x1007H单元的值变化;12. 再单击“Debug\Run”,当程序运行到“软件断点2”处时,查看0x1008~0x100F 单元的变化。

13. 闭各窗口,本实验完毕。

本实验说明:1.首先利用手动的方法,将以0x1000地址的16 个内存单元被修改成:0x00092.然后利用实验程序对以0x1000地址的16 个内存单元进行修改:首先将0x1000H 开始的8 个地址空间,填写入0xAAAA 的数值,然后读出,并存储到以0x1008H 开始的8 个地址空间。

在CCS中可以观察DATA 存储器空间地址0x1000H~0x100FH 值的变化。

五、程序框图六、实验结果设置好CCS的环境,打开本工程,编译、下载、运行。

在CCS中可以观察到DATA 存储器空间地址0x1000H~0x100fH值的变化:首先,当程序运行到第一个断点时,0xAAAA将被写入从数据空间的地址0x1000开始的8个单元,即0x1000H~0x1008H 中;其次,当程序运行到第二个断点时,0XAAAA将被写入从数据空间的地址0x1008开始的8个单元,即0x1008H~0x100fH中。

最终,0xAAAA被写入从数据空间的地址0x1000H~0x100fH。

试验二拨码开关实验—、实验目的1.了解DSP开发系统的组成和结构2.了解IO 的基本编程方法二、实验设备计算机,CCS3.1版本软件,DSP 仿真器,E300 实验箱,DSP-54XP CPU板三、实验原理8位的数字量输入(由拨码开关产生),当拨码打到靠近LED时为低。

相反为高。

通过74LS244(可读)缓冲连接到DSP 的数据总线的低8 位。

CPU 通过读指令读取到拨码开关产生的8 位输出的数字量,然后CPU通过写指令把读出的8 位数字量写入(0x0200)单元内,使连接到DSP的数据总线的低8 位的74LS273的输出端产生高低信号,此时LED 灯产生亮灭。

当对应LED 灯点亮时说明输出为低,熄灭时为高。

(器件74LS244和74LS273详细的介绍请参看数据手册)。

数字量输入输出单元的资源分配如下:基地址:0000h(当CS0为0时分配有效)数字量分配空间为数据空间地址:基地址+0x200(低8位,只读)拨码开关扩展工作原理说明:74LS244 片选号、74LS273 片选信号和74LS273 复位信号由E300 上CPLD 译码产生。

本实验使用DSP 数据总线的低8位。

本实验的程序流程框图如下:四、实验步骤1. E300 板上的开关SW4 的第一位置ON,其余OFF;SW5开关全部置ON;其余开关全部置OFF。

2. 运行Code Composer Studio (CCS)(ccs3.1需要“DEBUG→Connect”)3. 用“Project\Open”打开系统项目文件 \ normal\02_io\ io.pjt;4. 编译全部文件并装载\02_io\ Debug\io.out;5. 单击“Debug \Go Main”跳到主程序的开始;6. 单击“Debug \RUN”运行程序。

7.任意拨动E300 底板上的拨动开关,观察LED和拨动开关的对应情况。

(LED1-LED7分别对应DSP 数据总线的D0-D7);8.单击“Debug \Halt”暂停持续运行,开关将对灯失去控制.9.关闭所有窗口,本实验完。

五、实验结果设置好CCS的环境,打开本工程,编译、下载、运行。

调整数字输入输出单元的开关K1~K8,观察LED1~LED8灯亮灭的变化为:拨动LED1~LED8灯相应的开关K1~K8,则对应的灯亮灭。

实验三定时器实验一、实验目的1、熟悉TMS320C54X 的定时器;2、掌握TMS320C54X 的定时器的控制方法;3、学会使用CPU定时器中断方式控制程序流程。

二、实验设备计算机,CCS 3.1版软件,DSP硬件仿真器,E300 实验箱,DSP-54XP CPU板。

三、实验原理说明样例实验是采用CPU定时器来定时使LED 亮灭的。

C54x 的定时器是一个20 位的减法计数器,可以被特定的状态位实现停止、重新启动、重设置或禁止,可以使用该定时器产生周期性的CPU中断,控制定时器中断频率的两个寄存器是定时周期寄存器PRD和定时减法寄存器TDDR,定时器的中断周期为:CLKOUT * (TDDR+1)* (PRD+1。

)在本系统中,如果设置时钟频率为10MHZ,令PRD = 0x30D3,TDDR=15,这样得到每0.02 秒中断一次,通过累计50 次,就能实现1 秒钟定时。

0.1us * (15+1) *( 12499+1) * 50 =1S样例实验的程序框图如下:四、实验步骤和内容1、E300 底板的开关SW4 的第1位置ON,其余位置OFF。

其余开关设置为OFF;2、运行CCS软件,调入样例程序,装载并运行;(进入CCS界面后需要点“Debug--Connect”);3、用“Project//Open”系统项目文件 \ normal\ 03_timer \timer.pjt;4、编译全部文件并装载“..\ debug\timer.out”;单击“Debug\Go main”进入到主程序中;5、单击“Debug \ RUN”运行,可观察到灯LED1~LED8 的闪烁变化;6、单击“Debug \ Halt”,暂停程序运行,LED灯停止闪烁;单击“RUN”,LED灯又开始闪烁变化;7、结束实验程序。

五、实验结果设置好CCS的环境,打开本工程,编译、下载、运行。

观察LED1~LED8灯亮灭的变化为:灯从两边往中间亮,然后再循环往复。

试验四外部中断实验—、实验目的1.掌握中断技术,学会外部中断的处理方法2.掌握中断对程序的流程控制,理解DSP对中断的响应时序.二、实验设备计算机,CCS3.1版本软件,DSP 仿真器,E300 实验箱,DSP-54XP CPU板三、实验原理1.54XP 外部中断简介:(具体有关TMS320C5416中断信息,请参看TI的C54X数据手册)外部中断来源于DSP 片外,它属于硬件中断。

外部中断信号通过DSP 器件封装上的专用管脚输入DSP,属于可屏蔽中断。

TMS3205416DSP有四个外中断:,如果CPU允许,这四个信号线上的低脉冲信号会触发CPU 产生中断。

TMS320VC54xxDSP内部有两个重要的寄存器:中断标志寄存器(IFR)和中断屏蔽寄存器(IMR)结构如下图:当一个中断发生时间,IFR 中相应的位置1,直到中断得到处理完为止。

IMR 主要用来屏蔽外部和内部的可屏蔽中断。

如果CPU状态寄存器ST1的INTM位置0,并且IMR寄存器中的某一位为1,则开放相应的中断。

1.中断处理过程:TMS320XXDSP处理中断分三个阶段:1) 接受中断请求:当中断发生时,CPU 的IFR 中相应位置1;2) 响应中断:满足下列条件时才能响应中断;①优先级别最高(当同时出现一个以上中断时);②状态寄存器ST1 中的INTM 位为0;③中断寄存器IMR 中相应位为1;CPU 响应中断时,使PC 转到适当地址取出中断向量,并发出中断响应信号IACK,清除相应的中断标志位。

相关主题