- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
五邑大学实验报告
实验课程名称:
院系名称: 信息工程学院
专业名称: 电子信息工程
实验项目名称:1、TMS320VC5402定时器实验
2、 基于DSPLib的FFT程序设计
3、 基于DSPLib的滤波器程序设计
班级: 学号:
报告人:
一、TMS320VC5402定时器实验
一实验目的
了解DSP汇编程序与C语言程序的构成;
了解DSP程序各段的含义;
熟悉如何编写中断服务程疗;;
掌握片内定时器的设置方法;
掌握长时间间隔的定时器的处理
二实验内容
DSP的初始设置;
DSP中断向量表的建立;
定时器的使用;
设实验板时钟频率为20MHz,编程实现以下要求:
1、 TMS320C5402 的时钟频率为 100 MHz
2、 TMS320C5402XF端输出一个周期为500ms的方波,周期性地点亮LED
3、 采用定时中断方法实现
4、 用C语言编程,画出程序流程图并给出源代码。
5、 上机调试。
三实验背景知识
1通用TIMER简介
TMS320VC5402的定时器的说明:
VC5416中有两个可编程的片上定时器,总共包含有三个可由用户设置的寄存 器,并可以申请主机的中断。这三个寄存器分别为TIM、PRD、TCRo这些寄存器 与对应的存贮空间地址如下表所示:
Timer 0
Address
Timor 1
Address 「5402 only)
Register
Description
0021h
OO3Oh
TIM
Timer register
0025h
0031 h
PRD
Timer period register
0026h
0032h
TCR
Timer control register
时间寄存器(TIM)是一个16位的存贮器映射寄存器,它的值山周期寄存器 来进行装载,并且做减一操作。
周期寄存器(PRD)是一个16位的存贮器映射寄存器,它是用来重装时间寄 存器(TIM)寄存器的值的。
定时器控制寄存器(TCR)是一个16位的存贮器映射寄存器,包含了定时器 的控制与状态信息。
2、CMD文件简介
cmd文件用于DSP代码的定位。由3部分组成:
1、(1)输入/输出定义:
obj文件:链接器要链接的口标文件。
1让文件:链接器要链接的库文件。
map文件:链接器生成的交义索引文件。
out文件:链接器生成的可执行代码;链接器选项。
(2) MEMORY命令:描述系统实际的硬件资源。
(3. ) SECTIONS命令:描述段如何定位。
下面例子则可说明其基本格式:
-o (可缺省)
-m (可缺省)
-stack 100 (可缺省)
(可缺省)
-1 (可缺省)
MEMORY {
PAGE 0:
RESEVE: org = 00h len = 0x80
PAGE 0:
PR0G1: org = 0x0100 len = 0x1200
PAGE 0:
VECT: org = 0x0080, len = 0x80
PAGE 1:
RESEVE1: org = OOh len = 0x1300
PAGE 1:
DARAM2: org = 0x1300 len = 0x400
PAGE 1:
}
DARAM1:
org = 0x1700
len = 0x2900
SECTIONS{
? text :
PROG1
PAGE 0
? cinit :
PROG1
PAGE 0
? switch:
PROG1
PAGE 0
? vectors
:
VECT
PAGE 0
? const:
DARAM1
PAGE 1
? bss :
DARAM1
PAGE 1
? stack :
DARAM2
PAGE 1
? system:
DARAM2
PAGE 1
? data :
DARAM2
PAGE 1
}
下面介绍一下CMD文件中常用的程序段名与含义
cinit存放C程序中的已初始化的变量初值和常数表;
.const存放C程序中的字符常量和用const声明的常量;
text存放C程序的代码;
bss为C程序中的未初始化的全局和静态变量保留存储空间;
far为C程序中用far声明的全局和静态变量保留空间;
stack为C程序系统堆栈保留存储空间,用于保存返回地址、函数间的参数传
递、存储局部变量和保存中间结果;
.sysmem用于C程序中malloc calloc和realloc函数动态分配存储空间
.vectors用于自定义的.vectors”段,这里是中断向量表
.switch用于C程序中的switch语句
data已初始化的数据段
3中断向量表文件
中断服务程序的地址(中断向量)要装载到存储器的合适区域。一般用中断 向量表文件编制中断向量表,中断向量表文件多釆用汇编语言编写;在文件中一 般用汇编指
原创力文档


文档评论(0)