APP下载

基于TMS320F2812的信号处理系统的设计

2010-11-04高利兵

石油管材与仪器 2010年6期
关键词:波特率PC机信号处理

高利兵

(中国石油集团测井有限公司吐哈事业部 新疆鄯善)

基于TMS320F2812的信号处理系统的设计

高利兵

(中国石油集团测井有限公司吐哈事业部 新疆鄯善)

根据高分辨感应测井仪井下信息处理的需要,设计了一种基TMS320F2812的信号处理系统。采用DSP芯片TMS320F2812实现井下信息的实时采集处理,将数据通过串行异步通信接口传到PC机,由PC机的串口调试工具对接收信号进行显示和具体分析并将结果反馈给DSP进行控制。文章对硬件和软件设计及其进行了详细描述,该系统具有很高的可靠性,具有高速数据采集功能。

DSP;SCI;采集;信息处理

0 引 言

随着现代科学技术的发展和计算机技术的普及,信号处理系统已应用于越来越多的场合,如:无线通信、语音识别、机器人、遥感遥测和图像处理等领域。数字信号处理器(Digital Signal Processor,DSP)芯片在高速信号处理方面具有速度快、运算性能好等优点。本文设计了一种基于TI公司的TMS320F2812的信号处理系统。充分利用该芯片内部自带了12位,总共16路的AD,使得2812的AD精度理论上可达到12位的精度。

1 系统硬件设计

1.1 总体结构

本文介绍的信号处理系统采用TMS320F2812的模数转换模块(ADC),完成数据的采集及A/D转换,转换后的数据预先存储到片外的RAM中,再经DSP进行前端的数字信号处理,通过串口总线传给PC机,并在PC机上进行存储、显示和分析等。本系统主要由数字信号处理器TMS320F2812、模拟信号的预处理、片外存储器SRAM、RS232通信接口组成。图1为系统结构框图。

图1 系统结构框图

其中,由于该DSP的A/D采样端口的最高采样输入电压是3V,为了能使其正常工作,送入DSP的信号必须经过运放处理后,使其在A/D正常采集电压范围之内,模拟信号的预处理模块的作用就是将输入的信号电压的幅度调节到0~3 V范围内;片外RAM选用ISSI公司的IS61LV51216芯片作数据缓冲;TMS320F2812对输入的信号进行采集、处理,并将其处理结果通过RS232总线接口与PC进行数据通信,通过串口调试工具实时监测发送和接收数据;ADC模块以中断方式实现数据的收/发处理。

1.2 DSP的ADC

DSP采用TI公司的32位定点芯片TMS320F2812,外部采用低频时钟经过锁相环倍频后最高可在150 MHz主频下工作,并带有18 K×16 bit零等待周期片上SRAM和128 K×16 bit片内FLASH。本系统DSP的ADC采用级联成一个16通道的顺序采样模式对数据进行采集、处理。转换结束后采样的通道值就会被保存到相应的结果寄存器(ResultReg0—ResultReg15)中去。其ADC模块框图如图2所示[1]。本系统采用这款DSP的片上ADC模块对待处理的信号进行模数转换。该模块有16个通道,单通道转换的最小的转换时间是80 ns,因此,DSP的最大采样速率可达到12.5 MHz[2]。

根据现场实际需要,本系统采用软件来启动AD转换(SOC=startof conversion)。但是由于一些DSP内部的原因,使得2812的AD精度达不到12位的精度,而且误差比较大,不过这足以满足实际对测井数据的精度的要求,为了提高内部AD的精度,也可从硬件和软件的角度采用补偿措施对其进行校正,使得其精度达到了现场对信号处理的要求。

图2 2812的ADC模块框图

1.3 通信模块设计

DSP的输入/输出电平为TTL电平,即UART串口,这与PC机的RS-232标准串行接口的电气规范不一致,因此DSP与PC机之间的数据通信必须进行电平转换。

选用MAX3232CSE驱动芯片可以很好地解决这个问题。DSP与MAX3232CSE连接如图3所示。

图3 DSP与MAX3232CSE的硬件连接

SCI模块支持多处理器通信,有空闲多处理器模式和地址位多处理器模式两种通信协议,这两种协议允许在多处理器间进行有效的数据传送。同时,SCI还提供了通用异步接受/发送(UART)通信模式,能够与多种带有标准串口的外设进行通信。SCI的接收和发送数据都采用非归零数据格式,数据的基本单元为字符,带有格式信息的数据字符叫一帧,每个帧包括:一个启动位,1~8个数据位,一个奇/偶校验位或无奇/偶校验位,一个或两个停止位。在同一条串行连接线上,多处理器通信模式允许一个处理器向串行线上其他处理器发送数据。但是一条串行线上,每次只能实现一个数据传送[3]。空闲线模式与地址位模式的区别只是数据帧格式有无Addr/data位,具体采用哪种模式可通过SCICCR的的第三位ADDR/IDLE MODE确定,本系统需要处理大的数据块,所以将其配置为空闲线模式:

SciRegs.SCICCR.all=0x0007;//设置为一个停止位,禁止字测试模式

大多数的SCI硬件模块不支持自动波特率检测,而在TMS320F2812处理器上,增强功能的SCI模块硬件支持自动波特率检测逻辑和发送/接受FIFO操作。自动波特率检测逻辑主要解决中断过程中波特率的确定问题[4]。16字的FIFO可极大减少通信中断次数以提高通信速率。通过设置SCIHBAUD,SCILBAUD的值可到64K种不同的波特率,波特率的计算公式为:

本系统的外部晶振20MHz经过PLL5倍频后达100 MHz,该系统中的PC与DSP的通信速率设置为19 200 bps,通过对SCI的进行初始化即可。

计算机端利用串口调试助手实现接收显示,将其设置成与DSP相同的波特率、有无校验位、数据位长度、停止位长度以及数据位数即可正常显示收/发数据。

2 系统软件设计

系统的软件设计包括DSP程序的初始化,采集处理部分。系统上电后,程序要对DSP所有要用到的的外设及时钟根据系统的需要置于初始状态,然后开启定时器CPUTIMER1,在定时器CPUTIMER1中断中进行信号采集和处理,最后将处理的结果经串口送入PC机中,交由PC机程序对数据进行具体的分析处理[5~6]。软件设计的流程图如图4所示。

图4 软件设计的流程图

主程序代码如下:

void main(void)

{

InitSysCtrl();//初始化系统

DINT;//关中断

IER=0x0000;

IFR=0x0000;

InitPieCtrl();//初始化PIE控制寄存器

InitPieVectTable();//初始化PIE向量表

EALLOW;

PieVectTable.ADCINT=&ad;

EDIS;

InitAdc();//初始化ADC

IER|=M_INT13;//使能CPU定时器1

EINT;//使能全局中断INTM

ERTM;//使能实时调试中断DBGM

while(AdcRegs.ADC_ST_FLAG.bit.SEQ1-BSY==0)

{

AdcRegs.ADCTRL2.bit.SOC_SEQ1=1;//软件启动

ADC

}//从空闲模式启动SEQ1

AdcRegs.ADC-ST_FLAG.bit.INT_SEQ1_CLR=1;//清除SEQ1的中断标志位INT-SEQ1

ADResult[i]=3*adcregs.adcreulti/65520;//设置AD的精度为

12位

}

3 结 论

基于DSP的信号处理系统采用TMS320F2812片内自带的12位的AD模块,大大地节省了系统成本,同时也简化了硬件的设计。该系统具有较高的信号采集与处理精度和通用性,可满足现场的需求。

[1] 苏奎峰,吕 强.TMS320F2812原理与开发[M].北京:电子工业出版社,2006

[2] Texas Instruments Inc.TMS320F2812 Fixed-point digital processor[DB/OL].http://www.ic-on-line.cn/IOL/datasheet/tms320f2812.pdf.2009-05

[3] 季小林,高晓蓉.基于TMS320F2812的数据采集系统[J].微计算机信息.2007,23(8)

[4] 孙元敏,尹立新,杨书涛.基于TMS320F2812的高速数据采集处理系统[J].计算机工程.2009,35(2)

[5] 苏奎峰,蔡昭权.TMS320X281X DSP应用系统设计[M].北京:北京航空航天大学出版社,2008

[6] 苏 涛,蔡建隆.DSP接口电路设计与编程[M].西安:西安电子科技大学出版社,2003

P631.8+3

B

1004-9134(2010)06-0069-02

高利兵,男,1982年生,工程师,2004年毕业于西安石油大学机械设计制造及其自动化专业,现在中国石油集团测井有限公司吐哈事业部人力资源部。邮编:838202

2010-02-27编辑:高红霞)

猜你喜欢

波特率PC机信号处理
CAN 总线波特率自适应程序设计
《信号处理》征稿简则
《信号处理》第九届编委会
《信号处理》征稿简则
《信号处理》第九届编委会
基于PC机与单片机的多机通信技术及抗干扰方法
基于三菱FXPLC的感应淬火机床与PC机的串行通信实现
VC.NET下实现dsPIC单片机与PC机的通信
排除OLT设备登录故障
C*Core芯片SCI串口波特率容限优化