老古开发网首页
导航:老古开发网首页文章索引文章分类DSP数字信号处理→[TMS320F206的中断技术及其实现]
| -文章搜索 - 最新文章 - |

TMS320F206的中断技术及其实现

发布时间:2004年12月25日 点击次数:491
来源:电子技术应用   作者:周日贵 叶水生 胡景春 何玉珠
 

  摘要:TMS320F206是德州仪器公司定点DSP芯片中具有代表性的一种,在介绍其特点和中断技术的基础上,重点阐述了该芯片在软件开发过程中中断技术是如何实现的。

    关键词:TMS320F206 DSP 中断

以信息高速公路为标志的信息化,已成为社会发展的大趋势,并在逐步成为现实。信息化是数字化为背景的,而数字信号处理技术则是数字化最重要的基本技术之一。在过去短短的十几年里,各种集成化的单片数字信号处理器(DSP)的性能得到了很大的改善,软件开发工具越来越多,也越来越好;而价格却大幅度下降,从而使得数字信号处理器件及技术更容易使用,价格也能够为广大用户接受。从市场上各种DSP产品来看,德州仪器公司产品占据半壁江山,特别是TMS320系列,本文讨论的TMS320F206就是这个系列中的定点数字信号处理芯片。

1 TMS320F206的结构特点

TI公司的TMS320F206芯片是采用静态CMOS集成电路工艺制造的。结构设计建立在TMS320C20X芯片的基础上,只需5V的低电压就可运行。它的先进的哈佛结构、片内外设、片上内存以及丰富的命令集使它的速度和可靠性大大提高。

    TMS320F206的主要特点有:

(1)32K×16字的FLASH EEPROM大大降低了开发成本;

(2)采用了100线TQFP的封装技术;

(3)64K字的程序存储空间、64K字的数据存储空间和64K字的I/O空间,通过三条并行总线(PBA、DRAB、DWAB)独立操作。所以可以同时访问程序空间和数据空间,在一个指定机器周期内,可央算术逻辑单元可执行多达三次的并行存储器操作;

(4)片上4.5K的RAM使得芯片可以实现快速的DSP计算,并使大部分运算能够在一个指令周期内完成;

(5)丰富的指令集和灵活的寻址方式;

(6)有四条流水线操作和九级可断,并且大多数可断用户可以屏蔽,可以通过软件的方式灵活控制。

2 TMS320F206的可断

在TMS320F206的程序空间可,可断向量占据了00~3fh的位置,并且中断的优先级也是固定的,所以在编程开发时先要编好一个中断向量表,对于没有用到的中断也应该编上,并让它返回到一个空位置,以免发生意外情况。TMS320F206的中断有许多特殊的地方,如HOLD和INT1共用一个中断向量,INT2与INT3也共用一个中断向量。如果在实际应用中用到的中断比较多时,那么控制中断就是一件比较难的事,此时就要对它的三个中断寄存器灵活运用。下面就来介绍这三个寄存器。

(1)16位的中断标志寄存器(IFR),地址为0006h,各位情况如图1所示。当有一个可并蔽中断到达CPU时,IFR的相应标志位就置1,这表明相应中断正在被挂起或正在等待响应。将1写入到相应的标志位,可清除相应的位并清除其中断请求。

在图1中,0表示一般情况下读的数为0,R表示读,W1C表示写1时把这位清为0。-0表示复位后这位为0。

    (2)16位的中断屏蔽寄存器(IMR),地址为0004h,各位情况如图2所示。它用来屏蔽外部和内部硬件中断(NMI和RS除外)。当要屏蔽某硬件中断时,就把相应位清0当要开放某硬件中断时,就把相应位置1,并且它的每一位不受硬件复位的影响。

在图2中,0表示一般情况下读的数为0,R表示读,W表示写,-0表示复位后这位为0。2位是定时器中断,该位为1表示开放定时器中断。

(3)16位的中断控制寄存器(ICR),地址为0FFECh,各位情况如图3所示。主要用来控制HOLD/INT1和INT2/INT3。

在图3中,0位为0时表示屏蔽中断2(INT2),0位为1时表示开放中断2;1位为0时表示屏蔽中断3(INT3),1位为1时表示开放中断3;2、3位分别为INT2、INT3的标志位,当其为1时表示对应的中断有中断请求;4位1时表示单边沿触发模式,INT1引脚下降沿到来时,向CPU发出中断请求,用于INT1中断。4位为0时表示双边沿触发模式,这种模式适用于HOLD操作。

此外,TMS320F206还有两个不能由这三种寄存器来操作和控制的中断,即:

(1)RS(Reset),RS上一旦有请求,将中止程序的流程,使程序执行重新从程序存储器地址为0000h处开始执行。

(2)NMI,当NMI引脚激活时,程序将强行转移到中断向量在24h的位置,并且其它可屏蔽中断都将禁止。所以当NMI引脚不用时,通常应把它到高电平,发免发生意外情况。

3 TMS320F206的中断实现

在应用实际中,让INT2引脚测交流电压频率和相位而交流电流相位则由INT3引脚来测量,并计算电压、电流间的相位差。在本实例中,中断信号均采用过零信号,定时器的中断向量为timer,INT2/INT3的中断向量为intp2(中断向量表略)。

主程序流程图中图4所示。

主程序如下:

start:nop

setc intm ;禁止所有中断

splk #0ffffh,ifr ;清中断标志

splk #2h,imr ;清中断标志

splk #2h,imr ;清INT2,INT3的屏蔽位

splk #1h,60h

out 60h,0ffech ;仅开INT2

splk #0h,61h

splk #0f9fh,62h ;设置定时器

out 61h,0fffah

out 62h,0fff9h

clrc intm ;开中断

wait:idle

b wait1 ;等待中断

中断INT2/3服务程序(intp2)流程图如图5所示。

中断INT2/3服务程序(intp2)如下:

Intp2: setc intm ;进入INT2,INT3中断服务程序。

…… ;根据控制字判断是进入频率测试子程序还是进入相位测试子程序

bond intp23,tc

b intp 21

intp23: in 60h,0fffech ;读控制字ICR

bit 60h,13

sst #1h,62h

bit 62h,4 ;判断是INT2还是INT3

bcnd intp22,tc 中断

    b intp31

intp22:splk #0002h,60h ;INT2服务程序

out 60h,0ffech ;开INT3中断

splk #0c29h,63h

out 63h,0fff8h ;启动定时器

splk #0002h,ifr ;清INT2/INT3的标志位

clrc intm ;开中断

ret

intp31:setc intm ;INT3服务程序

splk #0412h,64h

out 64h,0fff8h ;停止定时器

splk #0002h,ifr ;清INT2/INT3的标志位

clrc intm

ret

in 65h,0fffah ;读定时器的时间

…… ;计算相位

intp21:setc intm ;判断中断次数,第一次开

…… ;定时器,第二次关定时器

bchd stoptimerl,ntc

out 63h,0fff8h ;启动定时器

splk #0002h,ifr ;清除INT2/3标志

clrc intm ;开中断

ret

stoptimer1:splk #0412h,64h

out 64h,0fff8h ;关定时器

…… ;计算频率

b $ ;等待

定时器中断服务程序(timer)流程图如图6所示。

timer: lacl 73h ;定时器中断服务程序

…… ;据控制字判断是进入频率测试子程序还是进入相位测试子程序。

cmpr 0

bcnd timer2,tc

b timer1

timer1:lacl 69h ;频率定时器服务子程序

add #1h

sacl 69h

splk #4h,ifr ;清除定时器标志

clrc intm

ret

timer2:lacl 69h ;相位定时器服务子程序

add #1h

sacl 69h

splk #4h,ifr ;清定时器的标志位

clrc intm

ret ;中断返回


 


欢迎进入老古论坛进行讨论
[DSP数字信号处理] 相关文章:
增强并口EPP与DSP接口的设计
简介:
摘要: 提出用计算机的EPP协议与ADSP2181的IDMA口进行快速通信的设计方法。该接口的核心是可编程逻辑器件EPLD,只需要修改EPLD的逻辑就可以满足各种不同设计的要求,因此具有很强的通用性。 关键词: 增强并行口(EPP) ADSP2181 EPLD 利用计算机进行数据采集与控制一直都是研究的热点。大部分数据采集与控制系统都是做成插卡的形式;然而,对于日益普及应用的笔记本电脑而言,由于没有提供扩展插槽,不能够直接做成插卡的形式,因此就需要充分利用笔记本提供的外围接口,例如并口、串口等来实现。由于串口速度的限制,对于速......

TMS320C54x在扩频通信系统中的应用
数字接收机中基于TMS320C6416的数字下变频技术
按G.723标准设计的数字录音系统
TM1300 DSP系统以太网接口的设计
用高速DSP在频域上实现LFM信号的实时脉冲压缩
基于DSP的扩频电台基带模块的设计与实现
两类DSP芯片的引导过程分析
TMS320VC5402的并行引导装载方案的研究与设计
基于DSP的USB口数据采集分析系统
 
下一个:[单片机]时间片轮转算法在单片机程序设计中的应用
简介:
摘要: 提出一种采用时间片轮转算法改进单片机系统程序设计,实现多任务机制的软件设计方法,并给出了在MCS-51分级分布式系统中应用该算法进行程序设计的实例。 关键词: 时间片 多任务机制 单片机系统 传统的单任务编程思想对于明显的顺序控制要求编程简单、思路清晰、开发周期短;但对于任务较多、控制功能复杂的问题时,却难以满足要求。因此,有必要对传统的单任务设计思想进行改进。时间片轮转算法是实现多任务调度的一种常用算法。在这种算法中,系统将所有的任务按顺序排成一个队列,每次调度时把C......
 

上一个:[单片机]X25045在舞台灯光换色器设计中的应用

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:10分钟 执行时间:47毫秒