摘要:PC104总线雷达信号显示卡是将基于PC104总线的虚拟仪器技术应用于通用雷达嵌入式诊断组合中信号的显示,对于改进雷达装备故障检测方式具有重大意义。通过对信号波形显示原理以及显示方法的分析,确定了具体的实际方案,完成了功能电路的设计;采用专用接口芯片结合CPLD的方法实现了PC104总线的接口协议以及逻辑控制电路,最后编写了相关的软件程序;显示卡在实际测试过程中能稳定工作,满足设计指标要求。
关键词:PC104总线:显示卡;信号采集
0 引言
信号显示卡是雷达嵌入式故障诊断系统中的重要组件,主要完成系统工作过程中采集信号的显示和诊断流程的指示,是重要的人机对话窗口的执行部件。因此,显示卡功能的好坏,直接关系到整个系统最终能否完成工作。
1 系统硬件设计与实现
如图1所示,该显示卡的硬件电路主要由输入匹配网络、模数转换单元、时钟产生电路、时序产生电路、控制信号产生模块和显示单元组成。
输入的模拟信号经缓冲放大以后进入模数变换器AD9054,其最高采样速率为200Ms/s,具有380MHz的模拟输入带宽。它有两个采集数据输出端口(Port A和Port B),可以选用单端口输出或双端口交替乒乓输出。A/D转换后输出的数据经两路锁存器锁存以满足后续存储器的高速写入。
如图1所示,系统时序产生控制电路产生系统时钟并协调系统各部分工作步骤,它根据A/D变换采样时钟以及A/D变换器输出接口时序的要求,产生锁存器的锁存时钟,并以适当的延迟量提供存储器的读写脉冲。时序产生电路还提供地址产生器和记录长度计数器的计数时钟。系统初始化后,A/D变换就开始进行,采集到的数据不断写入存储器,这时时序产生电路仅向地址产生器提供时钟源,使其作“+1”操作,这样存储器地址递增翻转。当触发逻辑被触发后,时序产生电路使能记录长度计数器工作,并提供采样时钟作为计数时钟源。记录长度计数器到用户设定的记录长度时,时序产生电路就关断时钟开关,使存储器停止翻转,同时向PC 机申请数据传输。当PC机以某种形式读取采集数据时,时序产生电路又根据PC104总线读取操作提供存储器读出地址翻转时钟,将存储器的内容按采集记录的相反顺序读出。
图1中的虚线框内包含的逻辑被集成在一片大规模高速可编程逻辑器件EP1K30内。其中触发逻辑、记录长度计数器和地址产生器密切配合使系统按设定的方式工作。触发方式由软件触发,示波器卡一经运行就自动地不断抓取波形;外输入触发需要一个外输入TTL逻辑信号,待设定的逻辑信号沿到来时产生触发;信号电平触发是根据被采集信号的幅度值到或超过设定的电平值时产生触发。信号电平触发的实现通过高速逻辑信号比较器实时监测A/D变换器的输出结果,当比较结果大于或小于设定基准值时产生触发。为了能够实现预期触发,地址产生器和记录长度计数器相互结合使用。地址产生器实质上是一个双向环形计数器,如图2所示,其顺时针方向地址递增数据写入,逆时针向地址递减数据读出。
计算机通过PC104总线设置显示卡的工作方式和读取采集到的数据。为了多通道同时使用,每个显示器卡有一通道号,软件逐个设置好各通道状态后可以同时或分别使能触发。各通道的外触发输入可用于多通道在同一触发时刻采样记录。PC机可通过I/O、DMA、中断等多种方式与示波器卡进行通讯或采样数据读取。
2 系统软件设计
显示卡的整个结构是由PC104总线接口电路和功能电路两部分构成的,而功能电路部分单片机是核心,因此单片机软件的编写也是一个很重要的部分。单片机的程序是用C语言编写的,主要结构如下:
(1)和上位机的通信程序。其中包括读取上位机的命令,把测试数据传送给上位机,报告功能电路的状态。
(2)功能函数。其中包括AD采集程序、设置量程、复位、自动调零、自检、中断服务程序等等。
因此,显示卡软件由主程序和中断程序组成,程序如框图3和图4所示。
主程序完成开辟与遥控帧格式一致的数据区域、芯片的初始化以及串行异步数据的发送和接收。串行异步数据发送接收期间,MPU会关闭中断O和1,但这并不会影响MPU对按键的相应和处理。当82C79检测到有按键按下时,要么能够在数据发送完毕后的时间空隙内申请中断并得到处理,要么多等待30ms,而后请求中断并得到处理。多出来的30ms与下一次按键的时间间隔(最少为几百毫秒)相比少得多,因此关闭中断的过程不影响按键的处理。
中断程序/INT0中,MPU将读取82C79中的键值,并判断按键类型。当按键为普通按键时,MPU并不改变82C79的工作方式,只将按键对应的指令代码填充到数据区域的相应字节位,并将R4赋值#01H。当按键为“长按”按键时,MPU将指令代码填充到数据区域的相应字节位后,会立即改变82C79 的工作方式,将其设置在传感器扫描工作方式。当“长按”按键断开时,由于传感器矩阵发生了变化,82C79能再次通过IRQ信号通知MPU。再次进入中断程序时,MPU将82C79的工作方式再改回到键盘扫描方式后,才将R4赋值#01H,至此一个完整的按键过程完成。对于配合旋钮开关的“长按”按键,按键闭合的时候,MPU还需要打开A/D转换;按键断开时,MPU则要关闭A/D转换。
中断程序TO中,每经过两次中断即80ms(MPU的工作频率决定了其最大定时到达不了80ms),MPU就将串行数据发送指针置位。
3 结论
解决PC104总线数据传输的瓶颈问题,合理分配硬件资源。PC104总线的突出优点是结构简单、易于开发,但其传输速率较慢。通过实际应用证明基于PC104总线雷达信号显示卡的设计能克服以上设计缺陷,特别是能充分满足便携式设计特点的要求,适应维修训练要求。