引言
随着计算机技术和网络技术的发展,利用嵌入式计算机系统和网络技术,组成网络嵌入式虚拟仪表" title="虚拟仪表">虚拟仪表,将处于不同地域的多个仪表组成一个统一的整体,实现数据共享和统一管理,可大大提高仪表系统的功能。远程虚拟仪表提出了一种全新的网络仪表技术和方法,把Internet网络技术、嵌入式技术、以及虚拟仪表技术结合起来,项目的研究以电网电量测量和分析的实际应用为目标。
从实现网络虚拟仪表功能模块化角度考虑,把网络虚拟仪表分为虚拟仪表主机和嵌入式网络虚拟仪表终端两部分,本文主要讨论应用AT89C52单片机,结合网络控制芯片RTL8019AS和测量、信号转换、键盘/显示等部件,实现远程控制和测量的嵌入式网络虚拟仪表终端的硬件设计,总体结构框图如图1所示,该系统由单片机、通信协议控制模块、液晶显示模块、键盘控制模块、存储扩展模块、串行A/D、D/A转换模块、以及接口扩展模块构成。
系统硬件设计
通信协议控制电路
图1 系统总体框图
通信协议控制电路由网络控制器RTL8019AS、串行EEPROM 93LC66、带滤波的RJ45接口组成(见图2)。
图2 通信协议控制电路
RTL8019AS主要实现通信协议控制,内部有远程DMA接口、本地DMA接口、MAC(介质访问控制)逻辑、数据编解码逻辑和其他端口。远程DMA接口是指单片机对RTL8019AS内部RAM进行读写的总线,单片机收发数据只需对远程DMA操作。本地DMA接口是RTL8019AS与网线的连接通道,完成控制器与网线的数据交换。
MAC逻辑完成以下功能:当单片机向网上发送数据时,先将一帧数据通过远程DMA通道送到RTL8019AS中的发送缓存区,然后发出传送命令,当RTL8019AS完成了上一帧的发送后,再开始此帧的发送;RTL819接收到的数据通过MAC比较、CRC校验后,由FIFO存到接收缓冲区;收满一帧后,以中断或寄存器标志的方式通知主处理器。FIFO逻辑对收发数据作16字节的缓冲,以减少对本地DMA请求的频率。
RTL8019AS内部有两块RAM区。一块16K字节,地址为0x4000~0x7fff;一块32字节,地址为0x0000~0x001f。RAM按页存储,每256字节为一页。一般将RAM的前12页(即0x4000~0x4bff)存储区作为发送缓冲区;后52页(即0x4c00~0x7fff)存储区作为接收缓冲区。要接收和发送数据包就必须通过DMA读写RTL8019AS内部的16KB RAM。它实际上是双端口的RAM,是指有两套总线连接到该RAM,一套总线RTL8019AS读或写该RAM,即本地DMA;另一套总线是单片机读或写该RAM,即远程DMA。
89C52通过P2.7、/WR、/RD来划分RTL8019AS和62256的地址空间。P2.7接62256的/CE引脚,低电平时选择62256;高电平时选择RTL8019AS的地址空间。
RTL8019AS初始化配置采用Serial EEPROM器件 93LC66A实现,用来设置RTL8019AS的端口I/O基地址和以太网" title="以太网">以太网物理地址。RTL8019AS通过引脚EECS、EESK、EEDI控制93LC66A的CS、SK、DI引脚,通过EEDO接收93LC66A的DO引脚的状态。RTL8019AS复位后读取93LC66A的内容并设置内部寄存器的值,如果93LC66A中内容不正确,RTL8019AS就无法正常工作。
RTL8019AS和网络连接电路,采用10BASE-T布线标准通过双绞线进行以太网通讯,而RTL8019AS内置了10BASE-T收发器,所以网络接口的电路比较简单。和Internet的连接采用了集成了滤波器的RJ45接口(RJ_10102),TPIN±为接收线,TPOUT±为发送线,经隔离后分别与RJ-45接口的RX±、TX±端相连,通过RJ45接入以太网。
89C52的数据存储器扩展电路
89C52内部有256字节RAM存储器。但是,当单片机用于实时数据采集或处理大批量数据时,仅靠片内提供的RAM是远远不够的。因此,为单片机扩展了一片SRAM芯片62256使数据存储容量达到32K字节。
按图2的连线,片选端直接与P2.7相连,当P2.7为“0”时选中62256,当P2.7为“1”时则选中RTL8019AS内部的地址空间,单片机的寻址8000H-801FH对应RTL8019AS的300H-31FH空间。
键盘、显示控制电路
键盘电路为矩阵式键盘扫描,键盘矩阵分为4行3列。在4×3的12个键盘的使用中,有10个键定义了双键或三键功能,从而可以实现28种操作功能,使现场仪表的操作能力大大加强。
液晶采用北京青云创新科技公司生产的LCM103显示模块,这是10位8段液晶显示模块,显示控制电路如图3所示,单片机通过控制液晶显示模块的/CS、/WR、DATA信号就可达到好的显示效果。
图3 液晶显示电路
A/D、D/A转换电路
作为测量仪器仪表的基本功能,扩展了对外的A/D和 D/A电路,A/D采用MAXIM公司的单5V电源供电、低功耗、12位模数转换器MAX187、D/A采用MAXIM公司的单5V电源供电、低功耗、12位数模转换器MAX539,A/D、D/A的接口电路如图4所示。
图4 A/D、D/A与单片机的接口电路
由于D/A和A/D电路体积小、功耗低,分辨率也能满足一定的要求,特别适合网络嵌入式网络终端。A/D转换用于对经分压后的外部交直流电压信号进行幅度和频率测量。D/A转换用来产生模拟信号的输出,以适应一些应用的需要。
结语
基于Internet的网络虚拟仪表系统把Internet技术、电量测量技术、虚拟仪表技术、数据库管理技术等相结合,利用Internet直接实现远程虚拟仪表的测量及控制,将从嵌入式终端采集来的电量数据,通过虚拟仪表主机的控制软件对采集来的数据进行计算、分析、处理、图形或数字显示、数据管理,并将分析后的结果回传给终端。不同于传统的RS-232串行通信的上、下位机方式和局域网的现场总线方式,利用现有的Internet能实现千里之外的信号测量及控制,具有完全仪表化操作界面,实践证明,Internet的远程虚拟仪表是完全可行的。