首 页电子文章电子资料客户留言最新文章最新下载繁體中文
设为首页
加入收藏
联系我们
您当前的位置:中国电子前沿 -> DSP技术 -> TI2000应用 -> 电子文章内容 退出登录 用户管理
栏目导航
· TI DSP综合 · TI2000应用
· TIDSP Boot · TI5000应用
· TI OMAP应用 · TI6000应用
· ADIdsp
广告专栏
热门电子文章
· [51系列] 单片机c语言学..
· [linux移植] YAFFS文件系..
· [linux移植] Linux 嵌入式..
· [ucos相关] uC/OS-II 初级..
· [无线开发] 收发一体超声..
· [TI DSP综合] DSP环境下C..
· [USB技术] USB接口研究与..
· [linux移植] cs8900a驱动..
· [ARM入门] ARM体系结构和..
· [VHDL学习] 数字电压表的..
· [ucos相关] uC/OS-II在AR..
· [linux移植] 触摸屏驱动移..
相关电子文章
· [组图] TPS60101用于..
· [图文] 编写适用于模..
用于测频测相的TMS320F206接口电路的软硬件实现
作者:佚名  来源:本站整理  发布时间:2006-12-14 20:03:12  发布人:zangyl
减小字体 增大字体
用于测频测相的TMS320F206接口电路的软硬件实现 

华中科技大学生命科学与技术学院 袁世英 杨玉星 摘 要:本文介绍TMS320F206 DSP与定时/计数芯片8253接口的硬件和软件的设计方案。该设计方案用于实时高速数据采集系统中实现工频信号频率与相位的测定。 关键词: DSP;接口;测频测相 TMS320F206是TI公司2XX系列中的一款16位定点运算DSP。F206由于速度快,在高速实时数据采集方面具有优越的性能,已进入了传统单片机所占据的领域。但由于该芯片推出时间不长,各种应用资源十分有限,所以在使用时增加了开发的难度和周期。本文集中阐述该芯片与定时/计数器芯片8253之间的软硬件的实现。F206只有一个片内定时器,当需要用到多个定时器时,就得进行扩展。而8253可编程定时/计数器具有三个功能相同的16位减计数器,每个计数器的工作方式及计数常数分别由软件编程选择,可进行二进制或二—十进制计数或定时操作,最高计数时钟频率达2.6MHz。本文的设计方案在三相实时高速数据采集系统中实现了工频信号频率相位的测量。 

F206与8253硬件接口设计 用F206实现测频测相系统的原理框图如图1所示,此系统框图由两大部分组成。 第一部分为频率和相位的测量电路(图1中的左半部分所示),信号输入到比较器,通过整形电路后,输出方波信号。方波信号再进入到时序逻辑电路,此时就由F206的通用输入输出口IO2(IO2配置为输出口)进行控制,当IO2=0时,时序逻辑电路的输出恒为0;当IO2=1时,时序逻辑电路仅输出一个周波长的高电平脉冲(相位脉冲宽度为电压和电流相位差的宽度)。该部分的具体电路图如图2所示。 第二部分为F206与8253的接口电路(图1中的右半部分所示)。8253的时钟频率采用1.8432MHz,映射到F206的IO空间地址为1H,其计数器工作在方式0状态。F206的晶体振荡频率为20MHz,通过寄存器设置,将F206的口线IO0、IO1、IO2配置为通用输出口。IO0、IO1分别控制8253的地址选择线A0、A1,IO2用于控制频率和相位脉冲的形成。 系统的具体实现过程是这样的:用F206的一根口线IO2选通,使输入的工频电压和工频电流通过前级的比较电路、整形电路和时序逻辑电路后,分别得到频率脉冲和相位脉冲。当IO2=0时,频率脉冲和相位脉冲恒为0,致使8253计数器0和计数器1不计数(8253计数器0和计数器1的初值置为0);当IO2=1时,频率脉冲仅为一个周波的高电平,相位脉冲也仅为电压和电流相位差在一个周波内的高电平,此时,8253开始计数。8253计数器0和计数器1的计数时间分别由脉冲高电平时间确定。计完数后,由F206读入(此时间应比电压周期长,当此程序为主系统程序的一部分时,则在此期间主程序可干其它事情;就本程序而言,则可原地等待0.04S)。由于8253是16位减1计数器,故F206读的值为补码。由于F206的速度很快,CMOS型8253的速度跟不上,故应选用TTL型8253。 

软件设计 软件主要考虑的是F206控制8253计数器计数,然后由F206读取8253计数器中的值。设计时需考虑以下二个方面: ① 由于测量工频电压采用一个计数器,故8253工作方式可采用方式0,并选用计数器0和计数器1分别作为相位和频率的计数器。 ② 8253是减1计数器,计数器在每次测量前都需置0,故F206读入的值为补码形式。 当进行频率和相位测量时,软件实现按照如下的过程进行:首先,F206初始化,即F206的IO0、IO1、IO2定义为输出形式,且F206的等待状态发生器控制寄存器置为1。其次,IO2=0,F206写8253的控制字,使得8253的计数器清0。然后,置F206的IO2=1,则8253计数器开始计数。最后,等待0.04S(此时间应比电压周期长,当此程序为主系统程序的一部分时,则在此期间主程序可干其它事情;就本程序而言,则可原地等待0.04S),F206就可以读8253计数器中的值。 图3示出了F206读取8253计数器中值的程序流程图。 F206读取8253计数器值的程序示例如下: 定义地址变量 OUTBM1 .SET 300H 临时变量 PHASEH .SET 301H  存放相位高位字节的 地址 PHASEL .SET 302H  存放相位低位字节的 地址 FPH .SET 303H  存放频率高位字节的地址 FPL .SET 304H  存放频率低位字节的地址 IO8253 .SET 01H 8253口地址 F206的初始化 LDP #6 程序指向第6页 SPLK #0FH,OUTBM1 OUT OUTBM1,ASPCR IO0-IO3均设置为输出状态 SPLK #0249H,OUTBM1 OUT OUTBM1,WSGR 1个等待状态  8253的计数器0和计数器1清0 LOOP: SPLK #011B,OUTBM1  D-Q清0,A1,A0=11,准备写8253控 制字 OUT OUTBM1,IOSR  D-Q清0端 I08253 A1 A0  IO2 IO1 IO0  (0:清0) (选择计数器) SPLK #00010000B,OUTBM1 OUT OUTBM1,IO8253 置计数器0为模式0,只读写低位字 节,2进制计数 SPLK #01010000B,OUTBM1 OUT OUTBM1,IO8253 置计数器1为模式0,只读写低位字 节,2进制计数 SPLK #000B,OUTBM1 OUT OUTBM1,IOSR D-Q清0,A1,A0=00,8253指向计数 器0 OUT OUTBM1,IO8253 计数器0低8位清0(高8位自动 清0) SPLK #001B,OUTBM1 OUT OUTBM1,IOSR  D-Q清0,A1,A0=01,8253指向 计数器1 SPLK #0,OUTBM1 OUT OUTBM1,IO8253 计数器1低8位清0(高8位自动 清0) IO2=1,8253开始测_率和相位 SPLK #101B,OUTBM1 OUT2=1,D-Q触发器脱离清0状态, OUT OUTBM1,IOSR 8253可以测频率,相位  等待0·04s LAR AR0,#96 LAR AR1,#7FDH MAR *,AR0 WAIT: BANZ WAIT1,AR1 B NOWAIT WAIT1: BANZ WAIT1 LAR AR1,#7FDH NOP MAR *,AR0 B WAIT 读取频率和相位的值 NOWAIT: SPLK #011B,OUTBM1 D-Q清0,A1,A0=11,准备写8253 控制字 OUT OUTBM1,IOSR SPLK #00100000B,OUTBM1 OUT OUTBM1,IO8253 置计数器0为模式0,只读写高位字 节,2进制计数 SPLK #01100000B,OUTBM1 OUT OUTBM1,IO8253 置计数器1为模式0,只读写高位 字节,2进制计数 SPLK #001,OUTBM1 OUT OUTBM1,IOSR D-Q清0,A1,A0=01,8253指向 计数器1 IN PHASEH,IO8253 读写相位的高位字节,放在 PHASEH中 SPLK #000B,OUTBM1 OUT OUTBM1,IOSR D-Q清0,A1,A0=00,8253指向 计数器0 IN FPH,IO8253 先读F的高位字节,暂存在FPH中 SPLK #011B,OUTBM1 OUT OUTBM1,IOSR D-Q清0,A1, A0=11,准备写8253 控制字 SPLK #01010000B,OUTBM1 OUT OUTBM1,IO8253 置计数器1为模式0,只读写低 字节,2进制计数 SPLK #00010000B,OUTBM1 OUT OUTBM1,IO8253 置计数器0为模式0,只读写低 字节,2进制计数 SPLK #001B,OUTBM1 OUT OUTBM1,IOSR D-Q清0,A1,A0=01,8253指向 计数器1 IN PHASEL,IO8253 读PHASEL的低位字节,放在 PHASEL中 SPLK #000B,OUTBM1 OUT OUTBM1,IOSR D-Q清0,A1,A0=00,8253指向 计数器0 IN FPL,IO8253 把F的低位字节放在FPL中 B LOOP .END 结语 本文着重讨论F206与8253之间的接口电路,实现了工频输入信号频率和相位的测量,文中还给出了具体电路及相应的源程序。这一设计已应用于三相交流实时高速数据采集系统中工频信号的频率和相位测定,对要完成同样功能的系统的设计,也可参考这一方法实现。■ 

参考文献 1 MSTMSF206 DIGITAL SIGNAL PFOCESOR (SPRS050 — NOVEMBER 1996) (Texas Instrument) 2 TMS320C2XX User's Guide (1997, Digital Signal Processing Solutions, Texas Instrument
                              
    
                                                                           来源:edw.com.cn


 


                         


[] [返回上一页] [打 印] [收 藏]
∷相关电子文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论…]
关于本站网站帮助广告合作下载声明友情连接网站地图 ┆ 在线客服: 点这里与管理员交谈
Copyright © 2006-2008 EMB-CN.com. All Rights Reserved .鲁ICP备06032441号