- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VB实现网络远程PC与单片机通信
科学时代
基于VB实坝网络远程PC与单相通信
武洪娟/天津轻工职业技术学院
[摘要]传统的RS一232标准串行接口,无线技术可以实现PC和单片机的通信.随着信息技术的发展,计算机和网络越来越普及,
对单片机的远程控制与测量的要求也越来越高.要同时满足高速度和远距离PC与单片机通信也是本设计中需要解决的问题.本文中设计
了一个远程通信系统,以实现高速远程情况下PC与单片机通信的要求.
[关键词]VB单片机通信
一
,
系统结构与设计
系统构成如图1所示,远端Pc通过局域网和本地Pc通信,
在通信中使用Winsock控件和TCP/1P协议;本地端Pc通
过并行通信接口或串行通信接口与单片机通信,在并口通信中
使用WINIO并口通信驱动程序,EPP协议和L打印机接口,
在串口通信中使用MsComm控件,RS一232协议和COM口.在
此结构中,本地PC端起到中继的作用,当本地端PC接收到
从远端PC传送过来的命令,在选择通信方式后,与单片机通信,
使单片机向远端PC传送数据.
图1系统结构图
二,远端PC与本地端PC通信设计
TCP/IP是目前在网络通信中广泛采用的一组完整的网
络协议,该协议的核心是TCP,IP和UDP协议.TCP/IP网
络环境下应用程序通过网络系统编程界面套接字(Socket)实现
与操作系统的交互.利用Socket通信编程接口编写程序,其
目的是在TCP/IP所组建网络的不同机器之间利用客户/服
务器模式建立通信连接,开发人员只要提供一些基本的连接
信息即可,其余由操作系统完成.WinSock(WindowsSocket)是
Windows操作系统下的通用的TCP/IP应用程序的网络编程
接口,通过调用WinSock的接口函数来调用TCP/IP的各种
功能.在VB中,WinSock控件对WindowsSocketsAPI进行封
装,使用程序员可以不必了解TCP/IP或调用底层WinSock
API的具体细节,只要设置好相应属性,在触发的事件过程中
作好相应处理,就能编写出网络应用程序.远端PC与本地端
PC通信通过VB调用WinSock控件实现,其控制界面如图2,
3所示.
图2远端Pc控制界面
图3本地端PC控制界面
需说明的是,远端PC选择好要连接的本地端PC的IP地
址和网络传送端口后,再发起联机申请;本地端PC网络传送
端口必须和远端PC传送端口一致,串行端口选择是COM1/
COM2,并行端口输入并口地址(378H);远端Pc在命令输入区
输入命令后,发送命令按钮才有效;同传数据区存放单片机传
送回来的实时数据并可保存成文本文件,信息区存放网络工作
状态,远端PC的命令,及单片机数据传送情况.其通信过程
如图4所示.
本地潦
设置秘终通信端固
迭撂辩窜嗣方式
嗡盛联丌L电平)实现.并口通
信有SPP,EPP和ECP三种工作模式.本文采用EPP协议.
1)EPP协议
增强型并行接口协议EPP(EnhancedParallelPort),为Pc和
外设之间定义了并行双向通信的标准,该协议通过硬件自动握
科学时代?2011年第o3期63
[====】专题研究lZHUANTIYANJlU
手,能达到500kB/S~2MB/S的通信速率,适合大量数
据传输的外设进行告诉通信.EPP分为EPP1.7和EPP1.9,二
者之间的区别是:EPPI.9需要判断超时(避免}¨现”死循环”)
以及nwait信号是否有效,而EPP1.7不需要判断,传输速度更
快.EPP协议支持4种操作,包括数据写,地址写,数据
读取和地址读取.
2)EPP协议的寄存器地址及一些主要的引脚定义,如表1,
表2所示.
表1EPP协议引脚定义
引脚号EPP信号方向功能是否
反向
2-9DATA0—7输入/输出数据否
l1Nwait输入低电平EPP是
周期
14Ndatastrohe输出低电平表示是
18—25GND地
表2EPP寄存器地址
地址端口名称读/写
BASE+0SPP数据端口写
BASE+1EPP状态端口读
BASE+2EPP控制端口写
BASE+3EPP地址端口读/写
BASE+4EPP数据端口读/写
(2)WINIO并口通信驱动程序
在VB中无法直接使用输入/输出指令来完成对端口的访
问,尤其是Windows2000/XP系统对端口的保护更加严格.
要对端口进行访问,通过c/c++等编程软件开发一些动态
链接库fDLL)或ActiveX控件用于在VB中调用来完成对底层硬
件的控制,本系统使用的是动态链接库文件WINIO.DLL(适用
于Windows2000/xP),主要实现了对底层并行端13使用的方
法.WINIO不需要向注册表中添加任何信息,只要把WINIO.
VXD,WINIO.SYS,
原创力文档


文档评论(0)