打造国内最大的IC交易平台
技术资料 行业资讯 PDF资料 IC价格 IC替换 缩略语 IC供应 IC采购
基于RAM7微处理器LPC2210的电子箱测试仪设计
类别:网文精粹  
 
A testing instrument for some missile electronic box based on the standard testing interface

摘 要:为了满足某型导弹电子设备的维修保障要求,介绍了应用RAM7微处理器LPC2210来设计的电子箱测试仪,给出了该系统的硬件设计、软件设计和部分程序代码。通过实装检测,该电子箱测试仪操作简单,准确率高,便于携带。

关键词:微处理器LPC2210;USB通信;串口通信

Abstract: To satisfy the testing request of some missile electronic equipments , the article introduce the design of a testing instrument for some missile electronic box based on ARM7 MPU LPC2210.The design of software and hardware interfaces of the testing instrument based on ARM7 MPU LPC2210 are described, and part of program are offered.By experiment, the result that the testing instrument for electronic box is simple operation ,it’s accurate rate is high ,and it is convenient to take.

Key words: MPU LPC2210;USB communication;String communication

一、引言

随着我国国防建设步伐的稳步前进,军队对武器装备的性能要求也越来越高。现代化武器的威力,不但体现在其杀伤力,而且严重依赖于其电气部分的高性能和高可靠性。高性能的电气主要体现在设计上,而高可靠性则是体现在其维修保障上。譬如某型导弹装备的独立电气部分有50多个,各种电子箱就达13个。对于这些电气设备的维修,故障定位要求越来越精确,需要的实验设备也越来越多,造成了野外维修难度大、维修周期长和维修人员素质要求高等问题。而目前现有的检测装置只能进行组合级检测,使得故障定位模糊,不能满足部队维修的需要。

为了解决这些问题,我们提出了“基于标准测试接口的某型导弹电子箱测试仪”的概念。

二、电子箱测试仪系统方案

基于该型导弹电子箱的大多数电路板均采用九十六芯插槽,根据模块化、智能化的要求,同时考虑可测性设计,我们设计如图1所示的整体硬件系统组成方案。

500)this.style.width=500;" border=0>

图1 整体硬件系统组成方案

该电子箱测试仪硬件系统除了内嵌ARM微处理器的数据采集卡外,还有辅助上位机平台、调理电路、电源以及外部面板等设备。内嵌ARM微处理器的数据采集卡完成数据采集的功能,同时还控制着LCD液晶屏等外部面板上的设备。调理电路主要用于信号的隔离、匹配等功能。辅助上位机平台完成被检测电路板的上位机测试以及测试数据存档。电源模块产生被测电路和信号调理电路所需要的电源,并且电压在一定范围内可调,满足被测电路的需要。

三、系统硬件设计

整个电子箱测试仪的核心部件是嵌入式处理器。根据统计[2],全世界嵌入式处理器的种类超过1000多种,流行体系结构有30多个,处理速度从0.1MIPS到2000MIPS不等。按照该电子箱测试仪低功耗、低成本、小体积、多功能的要求,我们选择了PHILIPS公司基于ARM7TDMI(-S)微处理器核的嵌入式微处理器LPC2210

500)this.style.width=500;" border=0>

图2 内嵌ARM微处理器的数据采集卡硬件结构图

1、内嵌ARM微处理器的数据采集卡电路设计

图2是内嵌ARM微处理器的数据采集卡硬件结构图,系统以微处理器LPC2210为核心,外扩各种功能模块电路。系统采用外部10MHz晶振产生内核所需的时钟;通过LDO芯片SPX11718和SPX11733提供系统所使用的1.8 V、3.3 V电源;通过电源监控芯片SP708S提供系统的复位信号;采用FLASH(SST39VF160)存储程序与函数,使用SDRAM(IS61LVB25616AL)作为程序的运行空间、数据及堆栈。

微处理器LPC2210与其他功能模块的接口电路均采用Easy ARM2200教学试验平台的相关电路[1]。对于微处理器LPC2210的32个功能复用的可编程通用I/O口(P0.0~P0.31),在测试系统的设计中,UART0占用了P0.0和P0.1;数据采集单元模块(AD1674AD7501AD7237)占用了P0.4~P0.7;P82C55的复位信号占用了P0.8;USB驱动部件(PDIUSBD12)的复位、挂起、连接和中断信号分别占用了P0.10、P0.13、P0.15和P0.16。在剩余的引脚中,将P0.18~P0.25这8个连续的I/O口用来作为测试按键控制。

2、电源模块设计

500)this.style.width=500;" border=0>

图3 电源模块电路

该电子箱测试仪用于测试多块电路板,需要提供的电源比较多,若都采用开关电源,体积大成本也高。在本系统中采用运算放大器和三端稳压器组成的可控型电源模块。如图3所示,AO0为D/A转换(AD7237)的输出(输出电压在-5V到+5V之间),DO7为LPC2210给出的控制信号。利用三端稳压器(LM7818CT)的特性,通过LPC2210控制AD7237的输出电压,或者调节电阻R23、R35改变放大器的增益,即可控制电源电压在一定的范围内。对于系统的上电控制,采用NPN型三极管Q1驱动电磁继电器K1实现。

3、调理板电路设计

通过对该导弹所有电子箱分析,这些电路板按照信号特征划分如下:数字量电路板(无CPU);模拟量电路板(无CPU);数模混合型电路板(无CPU);CPU电路板;电源等其他周边电路的电路板。由此可见,内嵌RAM微处理器的数据采集卡电路和待测电路板之间传输的信号包括数字量、模拟量和串口数据。

TTL电平的生成和检测:在处理器和调理板之间设计一片总线收发器74LVC4245, 实现3.3V和5V系统之间的逻辑电平转换。74LVC4245是一种双电源的总线收发器,同时工作在两种电源下:A端用5V电源作为VCCA,I/O口接5V器件的数字逻辑电路;B端用3.3V电源作为VCCA,I/O口接3.3V器件的数字逻辑电路;DIR引脚控制总线的传输方向。

模拟量的生成和检测:微处理器通过D/A输出,再经放大电路产生;通过D/O口输出,经达林顿管驱动产生;由NE555组成的信号产生电路输出。对模拟量的检测,经运算放大器、光电耦合器件相关电路实现分压、隔离后送入A/D。对频谱信号的检测,首先通过施密特触发器触发,转换成方波信号。一路经分频、隔离后送入计数器,测出其周期;一路通过A/D转换测出其幅值。

串口数据处理:在多数功能电子箱中,CPU板上的微处理器芯片或ROM芯片都装有管脚插座。因此我们采用更换微处理器芯片或ROM芯片(内置自编测试程序),并通过MAX232与主控模块建立串口通信的方式进行检测。

本测试系统中采用帧传输,串口传输波特率根据不同的电路板设定,数据位为8,停止位为1,并通过软件设置使用串口0进行通信。为了保证传输数据的正确性,我们定义了如表1所示的帧结构:

起始

500)this.style.width=500;" border=0>

表1 串口通信的帧结构

起始字节:合法帧的帧头。本系统规定为0xAA(即二机制的10101010)。 控制字节:控制信息。表示帧的作用、数据信息所代表的意义。 数据字节:帧的数据信息。由于ARM处理器为32位处理器,寄存器也大都是32位,所以规定最小的数据单位为32位。传送时按照先低字节后高字节的方式传递。

未定义字节:帧中未定义的字节。用于分辨出不同的帧,利用函数生成的校验码填入在未定义字节里发送。

结束字节:合法帧的帧尾。本系统规定为0x55(即二机制的01010101)。

这样系统在接受到帧数据后,通过对帧的起始字节和结束字节进行判断,完成帧的识别,保证帧的完整性;通过校验码判断,保证帧的相关正确性;通过等待的超时限定,一定程度上保证帧的接收完整性。

4、人机交互界面电路设计

人机交互界面设计本着简单化的原则,采用点阵液晶使用模块和8个按键的组合形式。(1)液晶模块接口电路设计[4]。本系统选用MGLS160128型点阵液晶模块,其显示容量为160×128个点,内部带有10V电压产生器和EL背光逆变器,使用单5V电源供电,非常适合于便携式的产品应用。由于液晶模块的工作电压为5V,而LPC2210的I/O口电压是3.3V,在液晶模块和处理器之间也设计了一片总线收发器74LVC4245。(2)键盘输入电路设计。按键的扫描方式有两种:查询方式和中断方式。由于中断方式不但占用CPU 的外部中断资源,而且还可能干扰其它重要中断程序的正常运行。因此在本系统中采用查询方式,即在程序中对相应I/ O 口(P0.18~P0.25)的状态进行查询,确认是否有键按下而执行相应的功能。

四、系统软件设计

测试系统软件的开发主要采用C语言(约占90%)和汇编语言(约占10%)。本系统软件分为两个部分:系统软件和用户程序。系统软件采用芯片代理商提供的用于控制芯片自身运行的驱动程序。用户程序则是根据需要自行开发的,用于完成控制目标,包括各个电路板的测试程序、按键响应程序、液晶显示程序、数据采集程序、USB及串口通信程序。

系统完成初始化后进入主程序main(),下面是主程序代码。当测试时,程序先检测USB通信口是否连接。若已连接则采用辅助上位机软件测试;若未连接则采用下位机独立测试,查询按键状态并执行相应的测试功能。

main(void)

{ …………….. //系统初始化

while(1)

{switch(InPutKey)

{case 0 : if(TestOver==2)

{ DisplayStart();TestOver=0; //显示主界面

} break; //无键按下则跳出

case 1~9 : //响应相应的按键,执行测试

case 0xff : if(TestOver!=2)

{ DisplayStart(); //显示主界面

GUI_PutString(60,70,"USB MODE...");TestOver=2;

} break; //连接到USB总线

}

if(bEPPflags.bits.ep1_rxdata) //检测USB事件结构体的相关量

{ bEPPflags.bits.ep1_rxdata=0;CommandProcess(CommandStr);

D12_WriteEndpoint(5,64,CommandStr);}

if(bEPPflags.bits.epmain_rxdata)

{ bEPPflags.bits.epmain_rxdata=0;CommandProcess(CommandStr);

D12_WriteEndpoint(5,64,DataBuf);

} }

return(0);}

五、辅助上位机软件设计

辅助上位机的软件功能模块如图4所示:

500)this.style.width=500;" border=0>

图4 辅助上位机软件功能模块

辅助上位机的软件功能模块分为主模块、数据采集设置模块、USB口设置模块、按键控制模块、故障说明模块、数据库模块。主模块是程序的主要部分;数据采集设置模块和USB口设置模块分别负责数据采集和USB口一些需要设置的全局变量的修改;故障说明模块用于故障原理分析;数据库模块负责测试数据的存档及管理。

该测试仪的辅助上位机软件使用Delphi集成开发环境开发。使用Delphi的VCL组件库设计人机交互界面,通过DBE数据库引擎建立数据库表,并通过ODBC链接数据库,完成故障原理分析以及测试数据存档功能。

六、结束语

本文作者创新点:首先、成功运用嵌入式技术设计实现了某型导弹电子箱检测仪,适应了部队维修的需要。经测试该系统稳定可靠,人机界面良好,操作简单,便于携带。其次、该系统实现了USB通信和串口通信,并可通过辅助上位机软件实现测试故障原理分析和测试数据存档。第三、开放式的系统硬件设计便于扩展。