多路D/A转换信号发生装置设计

2018-11-21 11:46杜雪宋耀东王端李明
科技创新与应用 2018年28期
关键词:上位机

杜雪 宋耀东 王端 李明

摘 要:在系统调试、工业测试中,常常需要产生多路复杂的、具有特殊要求的信号,故设计和实现了一种多路信号发生装置。该装置以TI公司的高性能DSP芯片TMS320F2812为核心,以BB公司的DAC7724作为数模转换芯片,并利用MAX3485芯片实现上位机与信号发生装置之间的485通信,用户可通过上位机界面控制信号发生裝置输出多路不同波形。详细阐述了硬件各模块接口电路、软件流程及上位机软件设计,并通过试验表明,该信号发生装置能够按照用户需求输出多路任意形状波形。

关键词:TMS320F2812;DAC7724;数模转换;MAX3485;信号发生;上位机

中图分类号:TM930 文献标示码:A 文章编号:2095-2945(2018)28-0026-04

Abstract: In system debugging and industrial testing, it is often necessary to generate multi-channel complex signals with special requirements, so a multi-channel signal generator is designed and implemented. The device takes the high performance DSP chip TMS320F2812 of TI as the core, the DAC7724 of BB company as the digital to analog conversion chip, and the MAX3485 chip to realize the 485 communication between the upper computer and the signal generator. The user can output multiple different waveforms through the upper computer interface control signal generating device. The hardware interface circuit of each module, the software flow chart and the software design of the upper computer are described in detail. The experiments show that the signal generator can output multiple arbitrary shape waveforms according to the needs of users.

Keywords: TMS320F2812; DAC7724; digital to analog conversion; MAX3485; signal generation; upper computer

引言

信号发生装置是一种能提供各种频率、波形和输出电平信号的设备,在测量各种电信系统或元器件的特性及其他电参数时,用作测试的信号源或激励源[1]。在系统调试、工业测试中,常常需要产生多路复杂的、具有特殊要求的信号,比如多路任意形状的波形,普通的信号发生装置难以满足需求,而市场上任意信号发生装置价格普遍偏高,因此研制一种高性能、低成本的多路信号发生装置具有重要意义[2]。

本文设计的多路信号发生装置使用TI公司的DSP芯片TMS320F2812作为主控芯片,BB公司的DAC7724作为数模转换芯片,并利用MAX3485芯片实现上位机与信号发生装置之间的485通信,用户可通过上位机界面控制信号发生装置输出多路不同波形[3]。

1 硬件电路设计

综合考虑信号发生装置的高性能、低成本以及实用性等因素,该信号发生装置以面向高端控制领域的TMS320F2812数字信号处理芯片为核心,集成了电源电平转换模块、D/A转换模块、RS-485通信模块等基本功能模块。信号发生装置硬件结构框图如图1所示。

1.1 主控芯片选型

本文选用美国德州仪器公司(TI)的TMS320F2812作为主控芯片,它是新一代32位定点数字信号处理器(DSP)芯片,拥有工作频率高达150MHz的32位DSP内核处理器,采用改进的哈佛结构,8级流水线操作。TMS320F2812片内有128K*16 FLASH,4K*16 BOOT ROM,多块SRAM,程序/数据寻址空间4M,集成度高,功耗小,运算速度快,性价比高,可以高效可靠地实现诸如自适应控制和状态控制等先进控制技术[4]-[6]。

1.2 D/A转换模块

D/A转换模块完成数字信号向模拟信号的转换,本文选用2片4通道DAC7724芯片完成8路模拟量输出。DAC7724是12位串行数模转换器,4路独立模拟输出,输出信号范围-10V~+10V,建立时间10μs,转换时间110ns。DAC7724具有片选、输出使能等控制引脚,它内部有两级锁存,第一级是锁存到缓冲器中,第二级是将数据锁存到输出寄存器,这样就能够实现多通道的同时输出[7]。数字量输入N与输出模拟量VOUT之间的数学关系表达式如下:

式中:N为数字量输入;VOUT为输出模拟量;VREFL为低参考电压;VREFH为高参考电压。本文2片DAC7724与主控芯片TMS320F2812的接口原理如图2所示。

图中的两片AD587分别输出DAC7724的参考电压VREFH(+10V)和VREFL(-10V),其中VREFL与跳针P2连接,如果要输出双极性波形,则VREFL连接-10V插针;如果要输出单极性波形,则VREFL连接GND插针,本文输出的都是双极性波形,故连接-10V插针。

1.3 RS-485通信模块

RS-485接口电路采用DSP内部串行总线接口SCI外加美国MAXIM公司生产的低功耗通信转换器MAX3485来实现,MAX3485是用于RS-485和RS-422通信的半双工、低功耗收发器,可以实现最高10Mbps的传输速率、工作电压为3.3V[8]-[10]。本文选用2片MAX3485芯片分别与主控芯片TMS320F2812连接,接口原理如图3所示。

TMS320F2812的SCIRXDA、SCITXDA、SCIRXDB、SCITXDB引脚分别与2片MAX3485芯片的RO、DI引脚连接,构成2路RS-485通信线路。GPIOE2、GPIOF7连接MAX3485芯片的收/发控制引脚RE、DE。本文串口工作在RS-485自动收发模式下,GPIOx引脚用于控制RS-485数据的自动收发转换,只有发送数据时GPIOx才为高电平,其他情况下,GPIOx保持低电平,可通过状态寄存器进行配置。

MAX3485的A端和B端分别为接收和发送的差分信号端,RS-485接收器的检测灵敏度为±200mV,即差分输入端VA-VB≥+200mV时输出逻辑1,VA-VB≤-200mV时输出逻辑0,而|VA-VB|<200mV时,输出不确定,所以要分别在RS-485接口电路的A、B输出端接上拉和下拉电阻,增加电路稳定性。

1.4 电源电平转换模块

由于TMS320F2812内核电压1.8V,I/O电压3.3V;AD587、DAC7724、MAX3485的工作电压分别为15V、5V和3.3V,因此,传统的线性稳压器已经不能满足要求,本文采用TI公司的TPS767D318芯片和DC/DC电源模块相结合的方法,只需要直流28V电压供电就能满足信号发生装置的供电需求。两个DC/DC电源模块分别将28V直流电转换成5V和15V直流电,TPS767D318将5V直流电转换成3.3V和1.8V直流电,这样就能够向装置提供满足所有器件所需的电压。TPS767D318是一种双路低压差电源调整器[11],主要应用在需要多种电源供电的电路设计中,具有可单独供电的双路固定输出,分别为3.3V和1.8V,每路输出电流的范围在0~1A,其接口原理如图4所示。

由于DSP输出信号为3.3V,它们必须通过3.3V转5V的电压变换才能与DCA7724的5V信号线连接。本文选取74ALVC164245芯片进行电平转换,164245是一个16位(双8进制)双向电平转换器,该芯片能够灵活进行3.3V与5V电压之间的双向电平转换[12]。74ALVC164245芯片的A端口由正3.3V电压供电,B端口由正5V电压供电,从而实现3.3V与5V电压之间的双向电平转换。OE端为该电平转换器的输出使能控制端,DIR端为电平转换方向控制端,转换方向使能操作见表1所列。

本文只需要3.3V到5V电平转换,故DIR接高电平,OE接低电平,接口原理图如图5所示。

2 软件设计

信号发生装置要有高精度、高性能等工作特性,不仅仅依赖于硬件电路的合理设计,而且与软件的可靠设计息息相关。本文软件设计采用模块化的设计思想,将软件划分为主函数模块、建立波形模块、通道选择模块及上位机界面等四大部分。各个模块主要完成以下功能:主函数模块主要完成系统的初始化,调用建立波形模块建立波形数据,调用通道选择模块选择波形输出通道;建立波形模块根据给定波形参数(如频率、周期数、幅值等)按公式计算数据并保存在主控芯片中;通道选择模块选择8个通道中某一个或多个通道输出,并在中断服务程序中调用输出函数,中断频率由输出波形的频率确定;用户在上位机界面输入要输出波形的幅值、周期及通道等参数,点击输出,信号发生装置输出引脚输出相应波形。

2.1 CCS集成开发环境

CCS是TI公司推出的集成开发环境,其专为开发TMS320系列的DSP设计。CCS自推出以来发展出了多个版本,常用的有CCS3.3、CCS5.5、CCS6等。CCS采用图形化界面,有多种编辑工具及工程管理工具,是一种工作在Windows操作系统下的类似于VC++的集成开发环境。它所集成的代码调试工具具有多種调试功能,用户可进行指令级的仿真及可视化的实时数据分析。此外,CCS还提供了丰富的库函数,极大地方便了TMS320系列DSP软件开发过程。

CCS有软件仿真器模式和在线编程模式两种开发模式。其中软件仿真器模式可以脱离主控芯片,在PC机上模拟主控芯片的指令集和工作机制,该模式主要用于前期算法的实现和调试;在线编程模式可在DSP芯片上实时运行,并与硬件电路板相结合进行在线编程和调试应用程序。本文所设计的信号发生装置采用在线编程的工作模式。

2.2 软件流程

根据上述的模块化程序设计思想,软件设计流程图如图6所示。

2.2.1 系统初始化

系统初始化主要包括以下步骤:首先是设置高速外设时钟,将仿真读取使能位EALLOW清零;然后将通用I/O口设置为默认值;再清除所有中断,将外设中断扩展模块PIE向量表设置为系统默认值;最后将中断标志寄存器IFR和中断使能寄存器IER的相应位清零。

2.2.2 建立波形数据

建立波形模块是整个软件设计的重点,为了方便理解,本文以输出标准正弦波为例详细阐述建立波形模块的算法,假设要输出的波形是标准正弦波,幅值为A,频率为f,具体步骤如下:

(1)首先确定输出信号能达到的最高频率,即定时器的中断频率为f0,则中断周期为T0。

以上是输出正弦波时建立波形模块的具体步骤,当需要输出正弦波以外的其他波形时,只需要改动最后一步即可实现。如果要输出异形波,可将各个点的数值放入数组,采用查表法进行输出。

2.3 上位机界面设计

系统采用Visual Studio 2010作为上位机编程软件,C#语法简单,代码重用性高,易于维护,且设计出了可视化图形用户界面以便于测试人员快速操作。本系统的上位机设计主要是用户在可视化界面中输入需要的波形信息,使用Serial Port类实现PC机与信号发生装置之间的通信,从而使信号发生装置相应通道输出用户需要的波形。信号发生装置上位机界面如图7所示。

3 功能测试

按照上述硬件电路设计搭建系统硬件平台,并根据软件设计流程实现DAC7724的多路信号输出。在上位机界面选择输出通道(8个通道)、输出波形(包括正弦波、余弦波、方波、三角波、跳变沿、异形波等)、频率、周期数、幅值等信息,用示波器实测输出波形如图8所示。实测结果与理論设计一致,实现了多路信号输出功能。

4 结束语

本文研究了基于DSP和DAC7724的多路信号发生装置,该装置根据上位机界面输入的波形信息输出多路任意形状的波形,波形的类型、频率、幅值以及需要输出的周期都可以根据用户需求可视化设置,极大地提高了输出波形的灵活性。系统具有精度高、速度快、高性能、低成本等诸多优点,可用于系统调试及工业测试中,作为频率和幅度可控的信号源,具有一定的现实意义和实用价值。

参考文献:

[1]李冰,许一男.汽车电子制动踏板模拟器传感器的容错控制研究[J].延边大学学报(自然科学版),2015,41(4):348-350.

[2]戴毓,彭良玉.基于BP神经网络的模拟电路故障诊断[J].现代电子技术,2013,36(16):9-14.

[3]高少洪,张鹏.基于DSP任意路PWM波的简易生成方法[J].工业控制计算机,2014,27(12):159-161.

[4]张立霞,门长峰,么居标.基于DSP的数模转换系统研究[J].天津职业技术师范大学学报,2011,21(2):33-36.

[5]TMS320F2810,TMS320F2811,TMS320F2812,TMS320C2810,TMS320C2811,TMS320C2812 Digital Signal Processors DataManual SPRS174S[Z].Texas Instruments Inc,2011:11.

[6]顾卫钢.手把手教你学DSP——基于TMS320X281X[M].北京:北京航空航天大学出版社,2011.

[7]宋玉龙,朱洪翔.基于DSP离散频率编码雷达信号的实现[J].现代电子技术,2011,34(5):17-30

[8]陈彪.基于MSP430水产养殖环境监控系统设计[D].海口:海南大学,2015.

[9]孟武胜,冯动动,张新伟.基于TMS320F2812的新型发电机控制器设计[J].微处理机,2012,4:69-72.

[10]贾继鹏,张永坚,胡延凯.基于WinCE和ARM的多串口扩展及485通信设计[J].计算机系统应用,2015,24(5):62-37.

[11]徐龙威,杨帆.等.基于TMS320F28335无刷直流电机控制系统设计[J].电子测量技术,2013,36(9):79-82.

[12]宋尚升.集成电路测试原理和向量生成方法分析[J].现代电子技术,2014,37(6):122-124.

猜你喜欢
上位机
基于单片机的无线液位监测系统
基于单片机的远程控制智能浇水系统
论网络通信技术
基于云的短波发射机机房中央空调自动控制系统的设计与实现
基于上位机、NRF多点无线温度监控系统
可编程序控制器在粮食烘干机控制系统的应用
智能远程温室监控系统设计
基于ZigBee网络的Android平台粮情移动监测系统