dsp片上外设实验二

更新时间:2024-04-07 09:55:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

DSP原理及应用实验报告 片上外设实验 1——GPIO控制实验

姓名 学号

一、 实验目的

1.了解GPIO片上外设; 2.掌握延时程序应用;

3.用GPIO口实现LED指示灯控制。 二、 实验设备及地点

设备:SEED-DTK系列DSP实验箱

地点:

三、 实验原理

1. 实验的原理性说明

通用目的输入输出(GPIO)片内外设提供了专用的通用目的引脚,可以配置位输入或输出。当配置为一个输出时,用户可以写一个内部寄存器以控制输出引脚上驱动的状态。当配置为输入引脚时,用户可以通过内部寄存器的状态检测到输入的状态。另外,GPIO 片内外设可以用不同的中断/事件产生 CPU 中断和 EDMA 事件。

一旦在 GPIO 使能寄存器(GPEN)被使能,GPIO 引脚可以用作通用目的输入/输出。

用户可以使用 GPIO 方向寄存器(GPDIR)独立配置每条

GPIO 引脚为输入或输出。当配置为输出(GPXDIR 位=1),GPIO 值寄存器(GPVAL)的 GPXVAL 位的值就被送到相应 的 GPn 引脚。当配置为输入(GPXDIR 位=0)时,输入状态可以从相应的 GPXVAL 读取TMS320VC5502 有 1-位通用输出引脚XF和8-位通用I/O 引脚 GPIO[7:0],其中 GPIO3、GPIO5与McBSP2 复用引脚。SEED-DEC5502模板上这些引脚的使用情况如下XF 用于点亮 LED 指示灯 D1。XF = 1,点亮;XF = 0,熄灭。

GPIO[2:0]:经电平转换后连至外设扩展总线的备用引脚。

GPIO3:与McBSP2的CLKX2复用引脚,当配置为GPIO3时,用作COM1的。

GPIO4:经电平转换后连至外设扩展总线的备用引脚。 GPIO5:与McBSP的FSX2复用引脚,当配置为GPIO5时,用作COM1的。

GPIO6:经电平转换后连至外设扩展总线的备用引脚。 GPIO7:用于点亮 LED 指示灯 D5。XF = 1,点亮;XF = 0,熄灭。 程序流程图如下:

CSL初始化 GPIO7 引脚使能 GPIO 操作 四、 实验步骤及结果

1.打开CCS,进入CCS的操作环境。

2.装入DEC5502_GPIO.pjt工程文件添加 SEED_DEC5502.gel 文件。

3.装载程序 DEC5502_GPIO.out,进行调试。

4.在 5502_LED.c程序的第69行“delay();”处,第72行“delay();”处,第75行“delay();”

处,第78行“delay();”处设置断点。

5.运行程序,程序会停在第一个断点处,关闭指示灯 D1;

6.继续运行程序,程序每次都会停在第二个断点处,点亮指示灯 D1;

7.继续运行程序,程序每次都会停在第三个断点处,点亮指示灯 D5;

8.继续运行程序,程序每次都会停在第四个断点处,关闭指示灯 D5;

9.也可直接执行程序,观察指示灯 D1,D5 的闪烁情况。

五.总结

DSP原理及应用实验报告 片上外设实验 2——定时器控制实验

姓名学号

一、实验目的

1.了解 TMS320VC5502 的定时器; 2.熟悉定时器各寄存器的配置;

3.掌握TMS320VC5502的中断结构和对中断的处理流程; 4.学会C语言中断程序设计,以及运用中断程序控制程序流程。 二、实验设备及地点

设备:SEED-DTK系列DSP实验箱

地点:

三实验原理

1.实验的原理性说明

TMS320VC5502 有 3 个 64-位可编程的定时器,其中 2 个用作通用定时器(TIM0 和TIM1),第三个定时器可以配置为通用定时器或看门狗定时器,其功能取决于看门狗全局定

时控制寄存器 1(WDTGCTL1)中的 TIMMODE 位以及看门狗定时器控制寄存器 1(WDTWCTL1)中的看门狗使能位(WDEN)的设置。 在系统复位时,第 3 个定时器缺省配置为 64-位的通用定时器。’VC5502 的每一个定时器均有一个外部引脚,该引脚可配置为输入或输出。’VC5502 片上定时器的功能框图如下图所示

2.下面简单的介绍一下 TMS320VC5502 中定时器的寄存器: EMU 用来确定定时器竞争模式; CLK 确定内在时钟分割比率; 60GPINT 确定定时器的中断模式;

GPEN 确定在GPIO模式中定时器引脚的操作模式;

GPDIR确定在GPIO模式中定时器引脚的输入输出模式; GPDAT确定在GPIO模式中涉及定时器引脚的信号标准。

缩写 CTL PRD CNT 寄存器名称 定时器控制寄存器 定时器周期寄存器 定时器计数寄类别 CT0 CT1 PRD0 PRD1 CNT0 存器 CNT1 GCTL描述定时器的操作模式:其中TDDR34 位段为定时器分配比率位,TIMMOD位段为定时器模式位。

CTL 中 TIEN 位段为定时器输入使能位;ENAMODE 使能模式位;INVINP 为 TINP 反

向控制位;CLKSRC 定时器输入时钟源位;CP 时钟/脉冲模式使能位;PWID 脉冲宽度位; INVOUT 位段为 TOUT 反向控制位。

PRD 中共 32 位为将要计数的定时器输入时钟周期数。 CNT 中共 32 位为主计数器的当前值。 周期如何算:

周期=周期寄存器/f(时钟源)

具体的 Timer 操作参见 TMS320VC5501/5502 DSP Timers Reference Guide (Rev. A).pdf

四、 实验步骤及结果

1.打开CCS,进入CCS的操作环境。

2.装入DEC5502_LED.pjt工程文件,添加 SEED_DEC5502.gel 文件。

3.装载 DEC5502_LED.out 文件,进行调试。

4.在 5502-LED.c 程序的第 136 行“LEDMARK = 1;”、第 141 行“LEDMARK = 0;”和第146 行“ CHIP_FSET(ST1_55,XF,0);”处设置断点。

5.运行 5502-LED.c 程序,程序会停在第一个断点处,表明已进入定时器中断。观察指示灯 D5 灭。

6.继续运行程序,程序会停在第二个断点处。观察指示灯 D5 亮。

7.继续运行程序,程序会停在第三个断点处。观察指示灯 D1 灭。

程序流程图:

Main 程序流程图:

CSL 初始化 :

For 循环等待进入定时器中断

定时器中断初始化 定时器各寄存器配置 使能定时器中断 使能定时器 1 系统时钟设置

本文来源:https://www.bwwdw.com/article/u8ar.html

Top