摘 要:增强型并行口EPP与标准并行口SPP兼容,但可通过数据线双向传送数据,并且达到接近于PC机ISA总线的数据传输率。本文详细讨论了EPP接口特性,并使用CPLD设计虚拟仪器的EPP接口电路,给出了用LabWindows/CVI编写的EPP接口功能函数。 关键词:虚拟仪器;EPP接口;CPLD;LabW indows/CVI
1 引 言 虚拟仪器是计算机软件和硬件(处理器、存储器、显示器)及测试功能硬件(数/模变换器、模/数变换器、定时和计数、数字输入输出等)构成的测试平台,他融合了测试理论、仪器原理、电子技术、计算机接口、总线技术以及软件编程技术于一身,实现了测量仪器的系列化、模块化、智能化和网络化,具有多功能、低成本、应用灵活、操作方便等优点,成为仪器发展的一个重要方向。 虚拟仪器与微型计算机的接口主要有3种形式: (1)通用仪器总线接口 最典型的是VXI总线(VMEbus Extensions for Instrumentation,VME总线在仪器领域的扩展),该总线数据传输速度可达40 Mb/s,其电气标准规范,系统重组和电磁兼容性均较好,可靠性高,并具有同步触发功能;但系统结构复杂、成本高,一般适合于组建大型精密的自动测试系统,如航空测试系统,军用测试系统。 (2)计算机内部插卡式接口 主要有微机内部的ISA接口和PCI接口,数据传输速度分别可达16 Mb/s 和133 Mb/s;价格适中,适用于中小型测试系统。但由于插卡式结构的虚拟仪器直接插在微机内部的主板上,极易受到PC机的电源纹波和机箱内电磁辐射的干扰,从而限制了他的应用范围。 (3)计算机外部通用总线接口 主要有增强并行接口EPP(Enhanced ParallelPort,IEEE1284)、扩展能力接口ECP(Enhanced Capability,PortIEEE1284)、通用串行总线USB(Universal SerialBus)和火线Fire wire(即IEEE1394总线),数据传输速度分别可达2 Mb/s,4 Mb/s,12 Mb/s和400 Mb/s。EPP和ECP是在原打印机接口基础上发展起来的并行接口;USB,Fire wire是新型高速串行总线,并具有热插拔能力。由于采用外部通用接口的虚拟仪器硬件在微机外部与计算机相联,因此电磁兼容特性良好。特别是增强并行接口EPP,技术的复杂性和成本都不会太高,是构建通用自动测试系统的一种良好选择。由于插拔不用开机箱,使用方便,尤其是适用于笔记本电脑。 本文仅讨论使用EPP并口的虚拟仪器。 2 EPP增强型并行接口 数据传输的协议。该协议定义的并行口更像一个开放的总线,给用户提供了强大的功能和灵活的设计手段。 2.1 EPP信号特性 当计算机并口工作于EPP模式时,实际上只用了8条数据线Data0~7和5条信号线nWrite,nWait,nDataStrobe,nAddrStrobe,nReset(“n”表示低有效)。EPP信号引脚的定义与标准并口的定义有所不同,如表1所示。

2.2 EPP端口寄存器 EPP端口与标准并口SPP兼容,并增强定义了新的端口地址,如表2所示(Base为并口基地址:如LPT1为378H)。
当对基地址端口进行I/O操作时,就如同使用标准并口一样,必须由软件程序检测当前状态以产生必要的控制信号。要同EPP外设通信,则从EPP地址端口Base+3读写地址,从EPP数据端口Base+4读写数据。由于计算机并口只有8 b数据线,16 b或32 b数据必须分成若干字节分别传送。如果设备端口有16 b或32 b数据线,可以利用Base+5,Base+6和Base+7三个端口直接完成16 b或32 b数据传输。 2.3 EPP时序 与标准并口通过软件检测外设状态并产生握手信号不同,EPP只需对相应端口进行一次I/O操作,读/写周期即开始,计算机自身产生一系列异步、互锁信号,自动完成握手操作,避免了程序的复杂性,使得EPP数据传输率接近标准PC内部ISA总线的传输率,典型的EPP传输速率为500 kb/s~2 Mb/s。 EPP协议定义的并行口提供了4种传送周期:数据写周期、数据读周期、地址写周期和地址读周期。数据周期一般用于计算机向外设发送命令和控制信号,以及向外设传送数据。地址周期一般用于传送地址、通道等信息。实际上,数据周期和地址周期并没有那么严格的界限,可以把地址周期看作另一种数据周期。图1~图4是4种周期的时序图。



EPP时序规定nDataStrobe(nAddrStrobe)信号在PC检测到nWait有效后才能置低,nDataStrobe(nAddrStrobe)有效又导致nWait信号变高,即通知26PC结束该读写周期,nDataStrobe(nAddrStrobe)随后恢复到空闲时的高电平状态。上述信号之间的互锁关系可用下式实现。

2.4 EPP初始化 在EPP处于空闲状态时,nDataStrobe,nAddrStrobe,nWrite和nReset信号必须无效即处于高电平状态。有的PC机需要程序在读写EPP之前对并口控制寄存器(BASE+2)相应位(Bit 0,Bit1,Bit3)初始化,即向控制寄存器写入xxxx0100的控制字。而有的并口当其被置于反向传输模式时,将无法正常实现EPP写周期,需要在使用EPP之前将并口置于正向传输模式,即清除控制寄存器的第5位Bit5。所以在发生上述情况时,程序在访问EPP数据、地址寄存器之前需先向控制寄存器写入xx0x0100的控制字。 3 虚拟仪器EPP并行接口电路设计 虚拟仪器通过EPP并行接口连接PC计算机,硬件电路板包括多路数字量输入/输出、定时器/计数器、A/D转换器及D/A转换器、存储器等,软件包括硬件I/O驱动程序、仪器驱动程序、数据采集和处理模块、面板显示程序等,通过软件编程可构成交直流电压表、频率计、多波形程控信号源、数字存储式示波器等虚拟仪器。 电路板内采用了总线结构,各功能部件均连接在模板的内部总线上。EPP有8条数据/地址共用线,因此只能采用分时复用的方法提供所需要的数据和地址总线。此外,还需要为各输入输出电路提供读写信号和片选信号。 为简化设计,使用CPLD芯片EPM7128 SLC84完成电路板到EPP并口的接口电路。CPLD的设计输入采用Altera公司的硬件描述语言HDL(HardwareDescribable Language),开发工具为MAX-PLUS II, 设计输入、编译、仿真、修改及下载和电路验证都非常方便。EPP接口电路设计文件如下: SUBDESIGN EPP




 4 对EPP接口的I/O操作编程 使用LabWinds/CVI虚拟仪器开发平台,设计了3个EPP接口功能函数。使用时首先初始化EPP接口,然后再调用EPP的输入或输出函数即可。 (1)初始化EPP接口函数
 (2)EPP接口输出数据函数:先向地址寄存器写入I/O 8 b地址,再向数据寄存器输出数据。
 (3)通过EPP接口输入数据函数:先向地址寄存器写入I/O8 b地址,再从数据寄存器输入数据。
 *data=inp(0x37c); } 5 结 语 在虚拟仪器中使用增强并行接口EPP,具有数据传输速度高(2 Mb/s),电磁兼容特性良好。由于插拔不用开机箱,使用方便,具有热插拔能力,尤其是适用于笔记本电脑。技术的复杂性和成本都不会太高,是构建通用自动测试系统的一种良好选择。EPP的接口电路采用CPLD,设计快速,硬件实现容易,简化了软件开发。
参考文献
[1] 潘仲英.基于EPP增强并行接口的虚拟仪器[J].电子学报,2001,(3). [2] 李立学,董浩斌.用CPLD设计EPP数据采集控制器[J].电子技术,2002,(1). [3] 李君华.虚拟仪器编程语言LabWindows/CVI教程[M].北京:电子工业出版社,2001.
现代电子技术
(上接第60页) 一种新型技术,其主干网采用光纤,子网采用同轴电缆。 最大的特点是可利用原有的已经非常普及的有线电视网络电缆,这是其最具有竞争力的地方。另外,网络本身性能如带宽、可靠性也较好。此技术目前还处于开发阶段。 4.3.2 家庭智能化系统设计 根据设计等级确定所要集成的智能化功能,然后选择厂家产品。这一点与传统的建筑电气专业设计有所不同。接下来,布置信息控制点,选择合适的走线路径和管线方式。 4.3.3 小区公共设施控制和周边环境监控设计 根据小区设计等级,适当选择小区公共设施控制和周边环境监控系统。设计时,也是最好先选择厂家 产品,再根据设计手册与相关规范设计。最后画出相应的系统图和管线图。 5 结 语 随着住宅小区应用步伐的推进,将来的智能化小区将会给人们一个安全、便捷、舒适和经济的居住空间。
参考文献
[1] 中华人民共和国国家标准GB/T50314-2000—《智能建筑设计标准》[S]. [2] 中国工程建设标准化协会标准CEC119:2000—《城市住宅建筑综合布线工程设计规范》[S].
|