《DSP原理及应用》
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
五、实验报告要求
1、写出 DSP 集成开发与调试工具的组成与各部分的功能。 2、写出 math.asm 程序中.text 段内各语句的功能。 3、对应主程序功能,分析实验中记录的 CPU 结果与 ST0 状态位意义。 4、若欲根据运算结果是否溢出而进行程序分支,请用 B 指令(B 16bitOffset,COND)在 math.asm 中添加相关代码段。
2
三、 实验内容
1、 DSP 源文件的建立; 2、 DSP 程序工程文件的建立; 3、 编译与链接的设置,生成可执行的 DSP 文件; 4、 进行 DSP 程序的调试与改错; 5、 学习使用 CCS 集成开发工具的调试工具; 6、 观察实验结果;
四、 实验步骤
1、 将 DSP 仿真器与计算机连接好;
四、 实验内容
1、 DSP 头文件的建立;
7
2、 命令文件的编写; 3、 DSP 数据存取文件的编写; 4、 进行 DSP 程序的调试与改错; 5、 在 CCS 观察窗口中验证实验结果。
பைடு நூலகம்
五、 实验步骤
1、 将 DSP 仿真器与计算机连接好; 2、 将 DSP 仿真器的 JTAG 插头与 SEED-DEC2812 单元的 J5 连接;启动 计 算 机 , 当 计 算 机 启 动 后 , 打 开 SEED-DEC2812 的 电 源 。 观 察 SEED-DTK_MBoard 单元的+5V,+3.3V,+15V,-15V 的电源指示灯以及 SEED_DEC2812 的电源指示灯 D2 是否均亮;若有不亮的,请断开电源,检查电 源。。 3、双击桌面 CCS 2 图标,或是 CCS3.3 图标,进入 CCS 的操作环境。然后 选择菜单栏的 OpenF2812 XDS510 Emulator, 进入 CCS IDE 硬件在线开发环境。 4、 新建源文件,以创建一个未知名的源文件,编写源代码并保存(保存源 程序名可为 ram.asm) ;创建命令文件(ram.cmd)并编写配置代码并保存,可重 复上述步骤。 5、建立新工程(ram.pjt) ,将 ram.asm、ram.cmd 文件加到工程文件中。 6、在 CCS 环境中,打开 ram.asm 文件,在该文件_main 标号下,第 1 行左边 灰色位置双击,设置断点; 7、对工程进行编译,生成 ram.out 文件。 8、选择载入文件 ram.out。 9、打开 CCS 反汇编程序窗口、CPU 窗口、存储器窗口。 10、单步运行程序,观察各窗口寄存器单元。针对各条数据存取指令的操作 结果,分析和修正源程序。 11、修改 cmd 文件和 asm 文件的相关语句,再次编译运行程序,观察存储器 变量定位配置的变化,以及程序运行结果的变化。
一、 实验目的
1、熟悉如何编写F2812的C程序; 2、掌握片内通用数字IO的使用方法。 3、掌握通用数字IO引脚控制LED的接线方法。
二、实验仪器设备与器件
仪器设备名称 DSP 实验箱 DSP 开发器 集成开发环境 台式电脑 规格型号 合众达 SEED-DTK2812 TI USB XDS510 TI CCS2 Windows XP 系统
三、实验原理
1、一个完整的 DSP 汇编语言文件包含 3 个部分: (1)用于定义外设控制寄存器的映射地址、用户定义的端口寄存器地址和相 关常量的头文件,如 F2812REGS.H,用.include 引用; (2)实现要 DSP 完成的汇编语言工程文件,扩展名为.asm; (3)用于文件链接的命令文件,扩展名为.cmd,该文件实现对程序存储空间 和数据存储空间的分配。 2、存储器类型常有冯诺曼结构和哈佛结构两种类型。 TMS320F281x DSP 采用增强的哈佛结构, 可以并行访问程序和数据存储器。 内部集成了大量的 SRAM、 ROM 以及 Flash 等存储器, 并且采用统一寻址方式(程 序、数据和 I/O 统一寻址),其存储器映射结构见图 2.1。
《DSP 原理及应用》 实验指导书
电气工程学院 2017.04
目
录
实验一 CCS 的使用及 DSP 基本数学运算……………….1 实验二 DSP 的数据存取…………………………………..5
实验三 通用数字 IO 控制实验……………………………..9 实验四 定时器控制与波形显示实验 ……………………..14
三、 实验原理
TMS320F2812片内有56个可独立编程的通用输入/输出(GPIO)引脚,大多数 的外设信号与GPIO信号复用。 这个复用使得用户能够在外设信号或者功能不使 用时将一个引脚用作GPIO。 复位时, 所有GPIO引脚被配置为输入。 针对GPIO 模 式或者外设信号模式,用户能够独立设定每一个引脚。对于特定的引脚,用户还 能够选择输入条件周期的数量来滤除有害的噪声毛刺脉冲。 GPIO 复用寄存器用于选择 F281x 和 C281x 器件上共用引脚操作。 这个引脚 可被独立选中运行为 “数字 I/O” 或者被连接至 “外设 I/O” 信号 (通过 GPxMUX 寄存器) 。如果被选择用于“数字 I/O”模式,提供的寄存器用来配置引脚方向 (通过 GPxMUX 寄存器) 并且限定输入信号来去除有害噪声 (通过 GPxQUAL 寄存器) 。
图 1.4
CPU 模块的内部功能结构
2、 将 DSP 仿真器的 JTAG 插头与 SEED-DEC2812 单元的 J5 相连接;启 动 计 算 机 , 当 计 算 机 启 动 后 , 打 开 SEED-DEC2812 的 电 源 。 观 察
3
SEED-DTK_MBoard 单元的+5V,+3.3V,+15V,-15V 的电源指示灯以及 SEED_DEC2812 的电源指示灯 D2 是否均亮;若有不亮的,请断开电源,检查电 源。 3、双击桌面 CCS 2 图标,或是 CCS3.3 图标,进入 CCS 的操作环境。然后 选择菜单栏的 OpenF2812 XDS510 Emulator, 进入 CCS IDE 硬件在线开发环境。 4、 打开源文件,点击 File-->Open,选取 math.asm,点击完成。在 math.asm 程序段相关位置写入数学运算程序代码,点击保存后关闭文件。 5、 建立新工程,点击 Project-->New,输入 math,点击完成,则新建一个名 为 math.pjt 的工程,路径为 D:\ti\projects。点击 Project,选择 add files to project, 在下拉菜单中分别选择.asm,选中 math.asm 再点击打开,即可添加源程序到工 程中;同样的方法可以添加文件 math.cmd 到工程中;操作完成后在下面窗口中 可以看到 math.c、math.cmd 文件已经加到工程文件中。 6、 在 CCS 环境中,打开 math.asm 文件,在该文件_main 标号下,第 1 行左 边灰色位置双击,设置断点; 7 、 点击 Project-->Build all ,对工程进行编译,如正确则编译通过,生 成 …Debug\ math.out 文件。 8、 点击 File-->load program,选择载入文件\Debug\math.out 即可装载完成。 9、 调试工具(debug) 在下拉菜单中可选择复位 CPU、进入主程序、重新开始等操作。 以下操作将会在调试过程中经常用到: F5..运行 F8..单步运行且进入子程序中 F9..设置断点 F10..单步运行。 10 、 点 击 View-->Registers-->Core , 打 开 CPU 寄 存 器 观 察 窗 口 。 点 击 View-->Registers-->Status,打开 ST0/ST1 寄存器观察窗口。 11、 单步运行程序, 观察 CPU 寄存器和 ST0 状态位。 记录观察到的 CPU 各 寄存器的值,以及运算后的相关状态位,以验证和分析数值运算的结果。
CCS2.0 开发调试软件的主界面
DSP 的中央处理单元 CPU 是内部总线上的核心模块,负责完成数据处理的 任务。即取数,逻辑运算,送回数据。TMS320LF281x 系列 CPU 模块的内部功 能结构如图 1.4。 TMS320F281x 系列 DSP 有 2 个 16 位的状态寄存器 ST0 和 ST1,含有状态 位和控制位。 ST0 和 ST1 可以被保存到数据存储器或从数据存储器中加载, 从而 可以保存和恢复子程序的机器状态(现场保护) 。
5
图 2.1 存储器映射 3、实现对存储器空间的分配,常用到 2 个伪指令: MEMORY 命令:描述系统实际的存储资源,常用的配置结构如图 2.2。 SECTIONS 命令:描述“段”如何定位,常用的配置结构如图 2.3。
图 2.2
MEMORY 命令语法
6
图 2.3
SECTIONS 命令语法
4、定义“段”的伪指令 (1)已初始化的段 .text: 所有可以执行的代码和常量 .cinit: 全局变量和静态变量的 C 初始化记录 .const: 包含字符串常量和初始化的全局变量和静态变量(由 const)的 初始化和说明 .econst: 包含字符串常量和初始化的全局变量和静态变量(由 far const) 的初始化和说明 .pinit: 全局构造器(C++)程序列表 .switch: 包含 switch 声明的列表 (2)未初始化的段 .bss: 为全局变量和局部变量保留的空间, 在程序上电时.cinit 空间中的 数据复制出来并存储到.bss 空间中 .ebss: 为使用大寄存器模式时的全局变量和静态变量预留的空间,在 程序上电时,cinit 空间中的数据复制出来并存储在.ebss 中 .stack: 为系统堆栈保留的空间,主要用于和函数传递变量或为巨变变 量分配空间 .sysmem: 为动态存储分配保留的空间,如果有宏函数,此空间被空函 数占用,如果没有的话,此空间保留为 0 .esysmen: 为动态存储分配保留的空间,如果有 far 函数,此空间被相 应的占用,如果没有的话,此空间保留为 0。
4
实验二 DSP 的数据存取
一、 实验目的
1、 了解 DSP 汇编程序的基本构成; 2、 理解头文件中系统及用户自定义的含义; 3、 掌握 DSP 数据及程序空间的配置及命令文件的编写; 4、 掌握 DSP 数据存取的基本方法。
二、实验仪器设备与器件
仪器设备名称 DSP 实验箱 DSP 开发器 集成开发环境 台式电脑 规格型号 合众达 SEED-DTK2812 TI USB XDS510 TI CCS2 Windows XP 系统
图 1.1 标准评估模块(EVM)外观及布局
1
图 1.2
DSP 开发调试环境硬件连接示意图
发布的 Code Composer Studio 开放型集成 DSP 开发环境(IDE)功能强大、 直观、易用。具有编程、编译、链接、在线调试等功能。CCS2.0 开发调试软件 的主界面如图 1.3。
图 1.3
实验一 CCS 的使用及 DSP 基本数学运算
一、 实验目的
1、 熟悉 CCS 集成开发环境,掌握工程的生成方法; 2、 熟悉 SEED-DEC2812 实验环境; 3、 掌握 CCS 集成开发环境的调试方法; 4、 了解数在 DSP 中的基本计算过程。
二、实验仪器设备与器件
仪器设备名称 DSP 实验箱 DSP 开发器 集成开发环境 台式电脑 规格型号 合众达 SEED-DTK2812 TI USB XDS510 TI CCS2 Windows XP 系统
六、实验报告
1、描述出一套完整的 DSP 汇编语言工程文件的组成部分,各文件的主要功 能如何? 2、写出本实验中 ram.cmd 文件中各类型语句的功能。 3、若为了将本实验中的原始被加数据存放在 300H-302H 单元,请问源程序 中,cmd 文件和 asm 文件应如何修改?
8
实验三 通用数字 IO 控制实验
三、实验原理
TI 公司为 TMS320 系统的集成与调试所提供的工具包括:标准评估模块 Evaluation Module(EVM) 、扩展开发系统 eXtenfed Development System(即硬 仿真器,如 XDS510) 、集成开发环境 Code Composer Stdio(CCS) 。 标准评估模块(EVM)是 TI 或 TI 的第三方为 TMS320 DSP 的使用者设计 生产的一种评价 DSP 的硬件平台,其外观和布局结构如图 1.1。扩展开发系统 (XDS)是功能强大的全速仿真器,用以系统级的集成与调试。PC 机与 XDS 及 EVM 板的连接方式如图 1.2。