文档详情

 DSP实验报告.doc

发布:2016-11-23约7.55千字共15页下载文档
文本预览下载声明
实验一 数字IO应用实验 —、实验目的 1. 了解DSP开发系统的组成和结构 2. 在实验设备上完成I/O硬件连接,编写I/O实验程序并运行验证。 3. 内存观察工具的使用 二、实验设备 计算机,CCS3.1版本软件,DSP仿真器,教学实验箱 三、实验原理 本实验程序由二部分组成:1.由外部中断1产生中断信号 2.键值读取程序:该部分有两种方法进行键值的判断。 方法1:利用内存观察工具进行观察 方法2:利用LED1-LED8的亮灭对应显示键值。 外部中断1的应用参照实验五; 内存观察键值:程序中定义了三个变量“W”“row”和“col”。“W”代表是CPLD中键盘的扫描数值,“row”和“col”分别代表键盘的行和列,由行和列可以判定按键的位置。上述三个变量可以在观察窗口中观察的。 利用LED灯显示键值原理,参看实验一。具体的LED灯显示值以查表的形式读出,请参看“e300_codec.h”库文件。 本实验的CPLD地址译码说明: 基地址:0x0000,当底板片选CS0为低时,分配有效。 CPU的IO空间: 基地址+0x0200 LED灯 output 8位 外部中断用XINT1:由CPLD分配,中断信号由键盘按键产生。 中断下降沿触发。 KEY_DAT_REG(R):基地址+0x0004; 四、实验步骤和内容 1.2407CPU板JUMP1的1和2脚短接,拨码开关S1的第一位置ON,其余置OFF; 2.E300板上的开关SW4的第一位置ON,其余OFF;SW3的第四位置ON其余的SW置OFF 3.运行Code Composer Studio (CCS)(ccs3.1需要“DEBUG→Connect” ) normal \ 05_key interface \ E300_keyled.pjt; 5.编译全部文件并装载“\Debug\ keyled.out”文件 6.单击“Debug\Go Main”跳到主程序的开始; 7.指定位置设置断点; 8.View--〉Watch Window打开变量观察窗口; 9. 将变量“w”“ row”和“ col”添加到观察窗口中,改变变量观察窗口的显示方式为HEX显示。 10.点击“Debug--〉Animate”全速运行,然后点击E300板上键盘按键,观察窗口中变量变化,同时LED1-LED8灯也相应变化,指示键值。(注意程序中KEY_E和KEY_F分别代表键盘上的“*”和“#”键值。 十六进制数代表的意义为:高4位为按键的行值,低4位为按键的列值。 注意:“w”中的低八位表示 11.关闭所有窗口,本实验完毕. 五、实验程序框图 六、实验建议 本实验程序采用外部中断的方法来判断键盘是否被按下,除了这种方法外,还可以根据键盘按下标志位“KEY_FLAG”,利用查询方式来编写程序.“KEY_FLAG”是CPLD内部状态寄存器中的一个只读位.如下表:CPLD内部状态寄存器(只读): D7 D6 D5 D4 D3 D2 D1 D0 KEY_FLAG LCD_ndef LCD_OUT CPLD_ST_REG(R): 基地址+0x002 七、实验心得 通过这次实验我了解了DSP开发系统的组成和结构,并且对I/O硬件连接,I/O实验程序的编写有了更进一步的认识。 实验二 定时器应用实验 一、实验目的 1、熟悉LF2407的定时器; 2、掌握LF2407的定时器的控制方法; 3、学会使用CPU定时器中断方式控制程序流程。 二、实验设备 计算机,CCS 3.1版软件,DSP教学实验箱,F2407CPU板。 实验原理说明 本实验是采用CPU定时器来定时使LED亮灭的。LF2407的通用定时器功能强大,除了做通用定时使用外,还可以配合事件管理器模块产生PWM波形。可以被特定的状态位实现停止、重新启动、重设置或禁止,可以使用该定时器产生周期性的CPU中断。 在本系统中,时钟频率为40MHz,设置相应寄存器,使得到每1/1000秒中断一次,通过累计1000次中断,就能产生1秒钟的定时。 样例实验的程序框图如下: 实验步骤和内容 F2407CPU板的JUMP1的1和2脚短接,拨码开关S1的第一位置ON;其余置OFF。 E300底板的开关SW4的第1位置ON,其余位置OFF。其余开关设置为OFF。 运行CC
显示全部
相似文档