DSP的定时器

编程实验

72人已加入

描述

DSP 的定时器
一.实验目的
1.通过实验熟悉F2812A的定时器;
2.掌握F2812A定时器的控制方法;
3.掌握F2812A的中断结构和对中断的处理流程;
4.学会C语言中断程序设计,以及运用中断程序控制程序流程。
二.实验原理
1.通用定时器介绍及其控制方法
TMS320F2812A内部有三个32 位通用定时器(TIMER0/1/2),定时器1和2 被保留给
实时操作系统(DSPBIOS)用,只有定时器0 可以提供给用户使用。
2.中断响应过程
a.接受中断请求。必须由软件中断(从程序代码)或硬件中断(从一个引脚或一个基于
芯片的设备)提出请求去暂停当前主程序的执行。
b.响应中断。必须能够响应中断请求。如果中断是可屏蔽的,则必须满足一定的条件,
按照一定的顺序去执行。而对于非可屏蔽中断和软件中断,会立即作出响应。
c.准备执行中断服务程序并保存寄存器的值。
d.执行中断服务子程序。调用相应得中断服务程序ISR,进入预先规定的向量地址,并
且执行已写好的ISR。
3.中断类别
可屏蔽中断:这些中断可以用软件加以屏蔽或解除屏蔽。
不可屏蔽中断:这些中断不能够被屏蔽,将立即响应该类中断并转入相应的子程序去执
行。所有软件调用的中断都属于该类中断。
4.中断的优先级
如果多个中断被同时激发,将按照他们的中断优先级来提供服务。中断优先级是芯片内部
已定义好的,不可修改。
5.实验程序流程图(如下图8-1所示):
6.实验程序分析
本实验设计的程序是在上实验6 基础上修改得来,由于实验3.1 控制指示灯闪烁的延时
控制是用循环计算方法得到的,延时不精确也不均匀,采用中断方式可以实现指示灯的定
时闪烁,时间更加准确。
三.实验设备
计算机,ICETEK-F2812-EDU实验箱(或ICETEK 仿真器+ICETEK-F2812-A系统板+相关连
线及电源)。
四.实验内容与步骤
1.实验准备
连接实验设备:请参看本书第一部分、二。
关闭实验箱上扩展模块和信号源电源开关。

定时器

图8-1 实验程序流程图
2.设置Code Composer Studio 2.21在硬件仿真(Emulator)方式下运行
请参看本书第一部分、四、2。
3.启动Code Composer Studio 2.21
请参看本书第一部分、五、2。
选择菜单Debug→Reset CPU。
4.打开工程文件
打开菜单“Project”的“Open”项;选择
C:\ICETEK-F2812-A-EDUlab\DSP281x_examples\Lab0303-Timer 目录中的“Timer.pjt”。
在项目浏览器中,双击time.c,激活time.c文件,浏览该文件的内容,理解各语句作
用。
5.编译、下载程序。
6.运行程序,观察结果。
7.改变“CpuTimer0Regs.PRD.all = 0xffff;”函数里的值; 重复步骤5,6 观察实验现象。
8.退出CCS
五.预习要求
1.了解F2812A的定时器;
2.了解F2812A定时器的控制方法;

3.了解F2812A的中断结构和对中断的处理流程;
六.注意事项
本实验要关闭实验箱上扩展模块和信号源电源开关。
七.思考题
使用定时器和中断服务程序可以运用到日常生活中哪些情况?
八.实验报告要求
说明在调试程序时,有时为了需要指示程序工作的状态,则可利用什么来达到?

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分