您的位置 首页 动态

VB 6.0完成网络长途PC与单片机之间通讯

在各种单片机应用系统的设计中,常常遇到单片机与PC的通信问题,在速度要求不高、传送距离不远的场合一般采用RS 232标准串行接口实现,在传送距

在各种单片机运用体系的规划中,常常遇到单片机与PC的通讯问题,在速度要求不高、传送间隔不远的场合一般选用RS 232规范串行接口完结,在传送间隔较远的场合,也有学者研讨经过网络完结PC间的通讯。可是,要一起满意高速度和远间隔PC与单片机通讯这是一个迫切需求处理的问题。跟着信息技术的开展,计算机和网络越来越遍及,对单片机的长途操控与丈量的要求也越来越多。本文在结合现有研讨的基础上,对相关的规划进行必定的改善和立异,规划一个长途通讯体系,他由3部分构成:远端PC、本地端PC和单片机体系。经过VB可视化编程,远端PC运用局域网向本地端PC宣布指令,本地端PC接到指令后,主动与单片机经过打印机接口以EPP1.9协议进行通讯(串行接口作为备用通讯口),并将接到的单片机数据实时传送给远端 PC,以完结高速长途状况下PC与单片机通讯的要求。

1 体系结构与规划

体系构成如图1所示,远端PC经过局域网和本地PC通讯,在通讯中运用Winsock控件和TCP/1P协议;本地端PC经过并行通讯接口或串行通讯接口与单片机通讯,在并口通讯中运用WINIO并口通讯驱动程序、EPP协议和LPT打印机接口,在串口通讯中运用MsComm控件、RS 232C协议和COM口。在此结构中,本地PC端起到中继的效果,当本地端PC接纳到从远端PC传送过来的指令,在挑选通讯办法后,与单片机通讯,使单片机向远端PC传送数据。

1.jpg

2 远端PC与本地端PC通讯规划

TCP/IP是现在在网络通讯中广泛选用的一组完好的网络协议,该协议的中心是TCP,IP和UDP协议。TCP/IP网络环境下运用程序经过网络体系编程界面套接字(Socket)完结与内核的交互。运用Socket通讯编程接口编写程序,其意图是在TCP/IP所组成网络的不同机器之间运用客户/服务器形式树立通讯衔接,开发人员只需供给一些根本的衔接信息,其他由操作体系内核完结。WinSock(Windows Socket)是Windows操作体系下的通用的TCP/IP运用程序的网络编程接口,经过调用WinSock的接口函数来调用TCP/IP的各种功用。在VB 6.0中,WinSock控件对Windows Sockets API进行封装,运用程序员能够不用了解TCP/IP或调用底层WinSock API的详细细节,只需设置好相应特点,在触发的事情进程中作好相应处理,就能编写出网络运用程序。

远端PC与本地端PC通讯经过VB 6.0调用WinSock控件完结,图2(a),(b)分别为其操控界面。需阐明以下几点:远端PC挑选好要衔接的本地端PC的IP地址和网络传送端口后,再建议联机请求;本地端PC网络传送端口有必要和远端PC传送端口共同,串行端口挑选是COM1/COM2,并行端口输入并口地址(378H);远端 PC在指令输入区输入指令后,发送指令按钮才有用;回传数据区寄存单片机传送回来的实时数据并可保存成文本文件,信息区寄存网络作业状况、远端PC的指令,及单片机数据传送状况。其作业进程如图2(c)所示。

2.jpg

3 本地端PC与单片机通讯规划

3.1 本地端PC与单片机并口通讯规划

3.1.1 并行通讯接口及协议

在速率要求较高的场合,能够运用PC机上的打印机接口(CENTRON%&&&&&%S规范,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.jpg

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引用到工程中,就能够完结对端口的操控和拜访。

3.1.3 并口通讯规划

如图3所示,打印机口经过单片机的P1口传送数据,nWait和nDstorbe经过P2.0和P2.1与单片机衔接。并行接口与单片机相连一般有两种办法:一种是直接衔接,另一种是运用双向驱动器或锁存器的总线办法。本体系选用第一种办法,能最大极限发挥EPP速度快的优势,但单片机易遭到不稳定信号的搅扰。EPP形式为双向传输协议,为了简化规划,只进行选用单片机向PC传送数据的单向读传送,并口选用EPP1.9形式,支撑超时和 nwait判别。

本地端PC经过并口与单片机通讯的VB源程序如下:

运用VB 6.0完结网络长途PC与单片机通讯

3.2 本地端PC与单片机串口通讯规划

MsComm控件是Microsoft公司供给的简化Windows下串行通讯编程的ActiveX控件,他为运用程序供给经过串行接口收发数据的简洁办法。该控件具有完善的串口数据的发送和接纳功用。经过此控件,PC机能够运用串行口与其他设备完结轻松衔接,简略高效地完结设备之间的通讯。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/dongtai/326131.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部