片内定时器与外中断编程实验

上传人:wt****50 文档编号:36927379 上传时间:2018-04-04 格式:DOC 页数:6 大小:56KB
返回 下载 相关 举报
片内定时器与外中断编程实验_第1页
第1页 / 共6页
片内定时器与外中断编程实验_第2页
第2页 / 共6页
片内定时器与外中断编程实验_第3页
第3页 / 共6页
片内定时器与外中断编程实验_第4页
第4页 / 共6页
片内定时器与外中断编程实验_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《片内定时器与外中断编程实验》由会员分享,可在线阅读,更多相关《片内定时器与外中断编程实验(6页珍藏版)》请在金锄头文库上搜索。

1、实验六、片内定时器与外中断编程实验 1、实验目的 1)了解 DSP 的定时器 2)熟悉定时器各寄存器的配置 3)掌握 DSP 中断结构和对中断的处理流程 4)学会 C 语言中断程序设计,以及运用中断程序控制程序流程 5)学会使用片内定时器与外中断方法控制程序流程 2、实验仪器准备 电脑、CCS2.0、C6416 DSP 实验板 3、实验内容 1)利用定时器 Time0 计数产生定时中断,定时器计数周期为 0xffffffff,编写定时器中断程 序,中断内容实现周期为 256 的计数,并将当前计数周期在打印窗口中显示输出 2)在程序中设置断点,观察中断前后与中断相关的寄存器内容以及时间变量值的变

2、化 3)利用外部中断 4 控制 LED 灯反复亮暗 程序: mytime.c #include #include “timer.h“ #include “intr.h“ #include “regs.h“ #include volatile int cnt=0;void TimerEventHandler() if (cnt PMEM.text PMEM.tables BMEM.data BMEM.stack BMEM.bss BMEM.sysmem BMEM.cinit BMEM.const BMEM.cio BMEM.far BMEM 4、实验步骤 步骤一、安装 C6416 软仿真型设备。

3、注:操作与实验一配置一样,唯一区别是选择 sim6416.cfg 步骤二、进入 CCS 开发环境,创建一个新项目 lab6.pjt 步骤三、编写源程序 mytime.c,采用定时器 Time0 控制中断,编写连接器命令文件 C6416.cmd(参考 DSP6416 存储器映射表) ;注:源程序中加入头文件 (c6x.h,intr.h,regs.h,timer.h) 步骤四、在项目中加载源文件,rst6400.lib,dev6x.lib,c6416.cmd,mytime.c 步骤五、编译、下载程序 步骤六、在程序中设置断点 步骤七、点击菜单 viewRegisterscore Registers

4、 和 Timer Registers 观察中断前后与中 断相关的寄存器内容以及时间变量值的变化;注:截取相应的图片,说明问题 提示:实验者可根据自己的需要改变周期寄存器的值,从而控制每次进中断的时间 步骤八、安装 C64XX XDS510 Emulator 步骤九、连接硬件,并进入 CCS 开发环境,重新创建一个新项目 步骤十、利用外部中断 4 控制 LED 灯反复亮暗,编写相应的 C 程序,并添加相应源文件 到工程中 步骤十一、编译,下载,运行程序,观察 LED 亮暗情况 5、实验结果 不对程序做任何的改动,运行结果如下:1)存储形式 a、保持原程序不变(即*(volatile int*)(

5、0x40000+i*4)=i;)b、将程序进行改动(即*(volatile char*)(0x40000+i*2)=i;)c、将程序进行改动(即*(volatile short*)(0x40000+i*1)=i;)2)寄存器配置程序设置断点后未运行时:程序运行后: 3)6、实验分析(实验总结) 1)存储形式当*(volatile int*)(0x40000+i*4)=i;时,地址段以每 4 个增加,而地址段里的内容则以 1 增加,且起始地址为 0x00040000,起始地址中的数据为 0x00000000;当*(volatile char*)(0x40000+i*2)=i;时,地址段以每 4

6、个增加,而地址段里的内容则以 20002 增加,且起始地址为 0x00040000,起始地址中的数据为 0xff01ff00;当*(volatile short*)(0x40000+i*1)=i;时,地址段以每 4 个增加,而地址段里的内容则以 40004 增加,且起始地址为 0x00040000,起始地址中的数据为 0x00030001 2)寄存器配置 每次单步运行后,0x01940008 的值都会发生变化 3)当在 else 语句中添加 INTR_DISABLE(CPU_INT14)后,程序重新编译、下载、运行后, 结果会呈现并自动停止。当 IER 值改为 00000003,即禁止使能中断,IFR 的值为 00004000。其中 IER 为中断使能寄 存器,IFR 为中断标志寄存器。最终得出定时到了,中断被启动。即定时可以作为中断的信号。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号