- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
用VB 6.0实现网络远程PC与单片机通信
在速率要求较高的场合,可以利用PC机上的打印机接口(CENTRONICS标准,DB-25芯针座,TTL电平)实现。并口通信有SPP、EPP和ECP三种工作模式。本文采用EPP协议。
(1)EPP协议
增强型并行接口协议EPP(Enhanced Parallel Port),为PC和外设之间定义了并行双向通信的标准,该协议通过硬件自动握手,能达到500 kB/S~2 MB/s的通信速率,适合大量数据传输的外设进行告诉通信。EPP分为EPP1.7和EPP1.9,二者之间的区别是:EPP1.9需要判断超时(避免出现"死循环")以及nwait信号是否有效,而EPP1.7不需要判断,传输速度更快。EPP协议支持4种操作,包括数据写出、地址写出、数据读取和地址读取。
(2) EPP协议的寄存器地址及一些主要的引脚定义,如表1,表2所示。
3.1.2 WINIO并口通信驱动程序
在VB中无法直接使用输入/输出指令来完成对端口的访问,尤其是Windows 2000/XP系统对端口的保护更加严格。要对端口进行访问,一般有2种方法:第一种是通过C/C++等编程软件开发一些动态链接库(DLL)或ActiveX控件用于在VB中调用来完成对底层硬件的控制;第二种更为简便的方法是到互联网上去寻找一些免费的DLL或ActiveX控件,本系统使用的是网络上免费的动态链接库文件WINIO.DLL(适用于Windows 2000/XP),主要实现了对底层并行端口使用的方法。WINIO是一个绿色环保软件,他不需要向注册表中添加任何信息,只要把WINIO.VXD,WINIO.SYS,WINIO.DLL放在应用程序所在的文件夹下就可以。在使用的时候,直接将WINIO.BAS引用到工程中,就可以实现对端口的控制和访问。
作者:张光南,马胜前 来源:现代电子技术