没有合适的资源?快使用搜索试试~ 我知道了~
首页DSP中断设置详细教程
DSP中断设置详细教程
5星 · 超过95%的资源 需积分: 50 67 下载量 21 浏览量
更新于2023-03-03
评论 4
收藏 92KB DOC 举报
介绍TMS320C6000系列中断设置的简明方法。通过示例定时器中断,MCBSP串口接收中断及外部中断这三种中断实现过程,介绍如何实现中断各个寄存器的配置,中断向量表书写以及中断服务函数。
资源详情
资源评论
资源推荐
A brief tutorial on setting DSP interrupts
DSP 中断设置简明教程
作者:wuzhenzhi
一、 简述
本文介绍 TMS320C6000 系列中断设置的简明方法。通过示例定时器中断,MCBSP 串
口接收中断及外部中断这三种中断实现过程,介绍如何实现中断各个寄存器的配置,中断
向量表书写以及中断服务函数。最后提供一个简要的示例程序可供大家下载使用。此示例
在 DSK6416 的 TI 官方实验板上通过测试。由于定时器和串口工作模式较繁,因此对中断
无关部分不做介绍。
二、 实现 DSP 中断需要做哪些通用工作
设置允许哪些非屏蔽中断
设置各个允许的非屏蔽中断的中断来源
设置开启总中断
设计中断向量表
将中断向量表通过 cmd 文件挂载到指令内存
提供中断处理函数
如果中断向量表首地址挂载的不是 0 地址,那么需要设置中断向量表地址寄存器
对于不同的中断源,需要做各个自己的工作,比如如果是外部中断,那么需要设置管
脚极性,即由高->低产生中断抑或反之。
为了照顾知识较少的读者,下面将从一个新工程出发,引导大家建立一个中断示例程
序。
如果您对建立工程很熟悉,可以跳过此步。
三、 建立新工程
1. 点 击 Project->New, 设 置 Project Name 为 intexample , Project Type 为
Executable,Target 选择您需要的器件,在此由于本人使用的是 DSK6416 评估板。因此选
择 TMS320C64XX。
2.添加标准库 rts6400.lib,以便自动产生 c_int00 等函数。右击当前工程,选择“Add
Files to Project,选择库所在路径,一般为 CCS 安装自带,可参考本 CCS3.1 版本的路径地
- 1 -
A brief tutorial on setting DSP interrupts
址:\CCStudio_v3.1\C6000\cgtools\lib\rts6400.lib
如果您使用的是其他器件类型,请在 lib 文件夹内选择其他器件库。
添加源文件,选择 File->New->Source File,保存为 main.c 到工程路径下。
在此文件内书写主函数。
最后通过如 2 步骤添加此文件到工程。
3.添加寄存器别名定义头文件。在本示例中,对需要用到的寄存器定义别名后,构成
global.h 文件,内容在后文逐步介绍。在此可以建立一个空文件,并在 main.c 中包括它。
#include "global.h"
到此,一个 DSP 的新工程框架制作完毕。
4.添加 cmd 链接文件
为了实现链接时内存配置,我们需要提供一个 cmd 文件,为了方便,可以从官方的示
例程序中拷贝一份,再加以修改。
在 安 装 目 录 下 D:\CCStudio_v3.1\tutorial\ 器 件 类 型 \hello1 示 例 下 , 会 找 到 一 个
hello1.cmd,
将其拷贝到本工程目录下,并将其改名为 link.cmd,最后将其添加到工程中。
由于此文件没有声明 stack 和 heap,会产生警告,如果动态数据较多也容易溢出。因此
我们最好在此文件提供 stack 和 heap 的大小,其值可根据实际情况调整,修改后,此文件
内容类似为:
!"#$%&'('
")*!+"
,%-!"#
,-!"#
,.-!"#
,-!"#
,-!"#
,/%-!"#
,-!"#
,-!"#
,0-!"#
至此,工程建立完毕,可以编译一遍,观察是否正常。
,12.3&
- 2 -
A brief tutorial on setting DSP interrupts
4,5 62$7))"389,7):7&7.7:6 &
/%62$;;2.3&6 682<=>6 :? @62.3&,/6
6,6
4A&,,,562$7))"389,7):7&7.7:6@62.3&,/6
BA&-
<3)(
%%%(C%&(%,
四、 定时器中断设计
首先,我们先实现一个定时器中断,因为它不受外部影响,容易测试。
在 global.h 文件中,加入控制寄存器和中断寄存器别名定义,另外为了使用定时器 1,
也应对其别名进行定义:
;D定义控制寄存器D;
% %&% 3& # ;D #%
&%D;
%%&%3&)";D)%"3&%
D;
%%&%3&!E;D!%%3E&&%
D;
%%&%3&!";D!%%3"&%
D;
%%&%3&!);D!%%3)%&%
D;
% %&% 3& ! ;D !%%3 .
&%D;
%%&%3&!"*F ;D!%%3"%*.
F%D;
%%&%3&!F;D!%%33%F%
D;
% %&% 3&+F ;D +. !
3%F%D;
%%&%3&!+;D>%F3%!3
&D;
% %&% 3& =* ;D >% F3%
33&D;
;D定义中断选择寄存器 D;
GH=IJ K)
GH=IA K)?
- 3 -
剩余10页未读,继续阅读
soelcat
- 粉丝: 3
- 资源: 23
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
- MW全能培训汽轮机调节保安系统PPT教学课件.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论7