网站首页 | 技术文章 | 解决方案 | 电子书籍 | 下载中心 | 电子商城 | 技术论坛 | 电子博客 | 商务信息  
联系站长
加入收藏
会员登陆
交易首页 最新信息 - 推荐信息 - 热门信息 - 免费发布 - 行业新闻 - 行业资讯 - 行业知识 - 积分说明 - 信息分类 - 企业展示 - 帮助
 您的位置: 中国电子设计 >> 技术文章 >> 微控制器 >> 正文 商务信息栏目开通公告  [2008-05-19 11:47:00]
   □  TMS320F206的中断技术及其实现    3星级
TMS320F206的中断技术及其实现
[作者:周日贵 叶水生 胡景春 何玉珠    转贴自:中国电源    点击数:    更新时间:2006-10-24
【字体:
摘要: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)丰富的指令集和灵活的寻址方式;
(5)有四条流水线操作和九级中断,并且大多数中断用户可以屏蔽,可以通过软件的方式灵活控制。


 
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 清INT2,INT3的屏蔽位
splk #1h,60h 
out 60h,0ffech 仅开INT2 
splk #0h,61h
splk #0f9fh,62h 设置定时器
out 61h,0fffah 
out 62h,0fff9h
clrc intm 开中断
waitl idle
b waitl 等待中断
中断INT2/3服务程序(intp2)流程图如图5所示。

中断INT2/3服务程序(intp2)如下:
Intp2 setc intm 进入INT2,INT3中断服务程序。
…… ;根据控制字判断是进入频率
测试子程序还是进入相位测试 
子程序
bond intp23,tc
b intp21
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 判断中断次数,第一次开
…… 定时器,第二次关定时器
bcnd 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 中断返回


 
参考文献
1 TMS320c1x/c2x/c2xx/c5x Assembly Language Tools User's Guide. TEXAS INSTRUMENTS,1999.7
2 TMS320c2xx User's Guide.TEXAS INSTRUMENTS,1999.7
3 彭启棕,李玉柏.DSP技术.成都:电子科技大学出版社,1997
4 张雄伟,曹铁勇.DSP芯片的原理与开发应用(第二版).北京:电子工业出版社,2000
5 王念旭.DSP基础与应用系统设计.北京北京航空航天大学出版社,2000
6 TMS320F/C240 DSP Controllers Reference Guide System And Peripherals. TEXAS INSTRUMENTS,1999.7


 

  • 上一篇文章:基于DSP混合编程关键问题的研究
  • 下一篇文章:高性能数字信号处理器TMS320LF2407A及其应用
  • Google
     
    Web www.cediy.com
    发表评论 □告诉好友 □打印此文 □关闭窗口
     最新热点文章
     基于单片机和串行总线技术的热量表...
     数字温度传感器详解
     用AD8302实现RF/IF幅度和相位测量系...
     一种简单的10MHz频率源兼分配放大器...
     维氏电桥振荡器
     检验液晶显示器的简易测试仪
     
     最新推荐文章
     基于TMS320C6713与PC机的PCI总线高...
     基于TMS320VC5409和Cygnal单片机构...
     基于ARM控制器S3C44B0x的给煤机控制...
     基于USB 2.0的高速数据采集卡在虚拟...
     大功率谐振过渡软开关技术变频器研...
     大功率谐振过渡软开关技术变频器研...
     
     相 关 文 章
      ◇  网友评论:(只显示最新5条。评论内容只代表网友观点,与本站立场无关!)
     设为首页  加入收藏  关于本站  版权申明   联系站长   宣传赚点   友情链接
    如果我在线,不用加为好友,立刻与我交谈。 业务咨询QQ:342488946
    Copyright© 2004-2010 CEDIY.COM .All Rights Reserved
    粤ICP备05119258号