【VB开源代码栏目提醒】:网学会员为需要VB开源代码的朋友们搜集整理了通过MSComm控件实现串口的设备间数据传输 - 技术总结相关资料,希望对各位网友有所帮助!
年月第卷第期铁道通信信号通过控件实现串口的设备间数据传输高远摘要串行通信作为一种灵活、方便、可靠的通信方式广泛应用于计算机与其他设备之间的通信。
在开发串行通信程序的过程中利用微软的通信控件则相对简单该控件具有丰富的与串行通信密切相关的属性及事件提供了对串口的各种操作。
关键词控件串口通信数据是微软公司提供的简化下串行通信编程的控件可为应用程序提供串行通信功能。
该控件在串口编程时非常方便程序员不必了解复杂的函数而且在、、等语言中均可使用。
工作原理计算机都有一个或多个串行端口如、等提供了外部设备与进行数据传输和通信的通道在和外设间充当解释器的角色。
在操作系统方面用通信驱动程序调用函数发送和接收数据。
对于一名程序员只需知道通信控件提供给通信函数的接口即可通过设定和监视通信控件的属性和事件完成通信编程。
通过进行串行通信的程序设计方式通常有种一是直接调用另一种是使用通信组件间接调用。
间接调用比直接调用复杂但在程序上却简单得多。
在操作系统方面使用通信驱动程序以便于应用程序能够使用标准的函数来传递和接收数据。
串行外围设备的制造商只提供硬件驱动程序以便于其硬件与??上海大学工程硕士中国铁通上海分公司助理工程师上海收稿日期—连接。
使用控件实际上就是使用了函数函数将被解释并传送给外围设备驱动程序这样用户只需要关心如何使用所提供的属性或事件就可以驱动函数的接口完成工作。
通信处理具体来说提供了种处理通信问题的方法事件驱动法和查询法。
事件驱动法。
首先设置事件通知当所希望的事件发生时发出该事件已发生的通知这与环境下的中断方式很相似是处理串行端交互作用的一种非常有效的方法。
这种方法的优点是程序响应及时、可靠性高特别是对于扩展了多个串口的情况像中断方式只有当设定的事件发生时应用程序得到操作系统发出的消息后才进行相应处理避免了数据丢失。
同时需要注意每个控件对应着一个串行端口。
如果应用程序需要访问多个串行端口必须使用多个控件。
查询法。
即一个进程中的某一线程定时查询串口的接收缓冲区如果缓冲区中有数据就读取数据若缓冲区中没有数据该线程将继续执行。
一般情况下查询方式是一种最直接的读串口方式它实质上还是事件驱动。
在程序的每个关键功能之后可以通过检查属性的值来
查询事件和错误。
如果应用程序较小并且是自保持的这种方法效果可能更佳。
但定时查询存在一个致命弱点即查询是定时发生的在数据变化较万方数据快的情况下特别是主控计算机的串口通过扩展板扩展至多个时。
定时对所有串口轮流查询可能发生的过早或者过晚容易出现数据丢失。
虽然定时间隔越小数据的实时性越高但系统资源也被占去越多。
串行通信的格式进行串行通信时通常有种传输方式。
字符形式通常以小于码的字符码来传递常用于传送指令。
二进制形式将数据以二进制编码的方式传递可能含有码以上的字符码常用来传送数据以提高速度。
数据交互编写
程序时先在对话框中创建通信控件若工具栏中缺少该控件可先通过菜单插入即可再将该控件从工具箱中拉到对话框中。
此时只需要关心控件提供的对通信驱动程序的函数的接口也就是只需要设置和监视控件的属性和事件。
打开所需串口后需要考虑串口通信的时机。
在接收或发送数据过程中可能需要监视并响应一些事件和错误所以事件驱动是处理串行端口交互作用的一种非常有效的方法。
使用事件和属性捕捉并检查通信事件和错误的值一旦发生通信事件或错误时将触发事件属性的值将被改变应用程序将检查属性值并作出相应的反应。
完成以上
工作后正式实现数据的传输过程。
实际应用中的问题发送单片机命令。
为了使主机能够对整个检测过程进行实时控制须要在发送命令文本方式或二进制
代码以后设定等待的时间或通过条件判断下一步指令是发送还是接收。
其中当发送的命令是二进制
代码时还要特别注意发送的格式。
在事件中接收数据。
事件主要是检查和处理通信错误可以通过检查属性的值来查询事件和错误。
如表示数据丢失事件表示输入数据流中发现字符。
串口通信过程中发生错误信息的处理。
由于外界干扰或电压波动等原因机和单片机之间的通信可能会出现错误如接收缓冲区溢出、
网络端口超速等。
这些事件都可能在
代码中引起运行错误。
而在控件中就提供了一个事件该事件可以截取串口的任何消息转人事件处理程序可以捕捉和处理错误。
当有串口事件或错误发生时会立刻触发一个事件程序就会自动转入事件处理程序中。
而在事件中属性是事件的指示器存有最近事件或错误的数值
代码在程序中可以随时读取属性值来了解通信的状况。
但该属性在设计时是不能使用的而且在程序运行时只能以只读形式存在。
事件是和属性一起使用的当任何一个事件或错误发生时都会使属性值改变。
在事件处理过程中可以通过判断属性值转入不同的事件处理过程。
如何发送中文字符串。
中可以直接把中文字符等同于英文字符发送中文数据不能太长发送缓冲区和接收缓冲区的大小需设定为中文字符的倍以上而且发送与接收系统所处的操作系统版本最好要一致否则会出现接收或发送缓冲区溢出之类的错误。
因此这种方法可用于一般要求不太高的场合。
另外还可以采用间接方式发送中文字符串。
在发送端将汉字或字符转换为机器内码或区位码数据数组然后将转换后的数据发送到串口在接收端接收到数据后按照相反的顺序将得到的数据转换为相应的汉字或字符。
在转换过程中要用到位运算需要将内码的高字节和低字节分开。
总结随着计算机应用领域的不断扩展设备或
计算机之间的远程通信越来越广泛。
作为开发工具代表的同样提供了一系列标准通信命令的接口允许建立串口连接可以连接到其他通信设备如调制解调器等还可以发送命令进行数据交换以及监视和响应在通信过程中可能发生的各种错误和事件等可以满足通常情况下的串通信需求。
如果在实际应用过程中能够很好的掌握控件灵活变通的特性就可以达到安全、稳定、高效通信的目的。
责任编辑诸红一—万方数据通过MSComm控件实现串口的设备间数据传输作者高远 Gao yuan作者单位上海大学中国铁通上海分公司200060上海刊名铁道通信信号英文刊名RAILWAY SIGNALLING COMMUNICATION年卷期2009451引用次数0次 1.期刊
论文 王华.岳丽全.岳志高.WANG Hua.YUE Li-quan.YUE Zhi-gao MScomm控件在VC6.0串口
通信中的应用 -长春工程学院学报自然科学版2009101 通过对几种
常用的串口通信方法进行分析比较着重讨论了VC6.0环境下利用MSComm控件实现PC机与PC机间串口通信的方法研究了利用MSComlll控件实现串口通信的关键技术问题并通过一个实例给出了MSComm控件在VC6.0串口通信中的应用.2.期刊
论文 王金彩 MSCOMM控件在Delphi7.0串口通信中的应用 -黑龙江科技信息20089 利用Delphi开发工业控制系统软件成为越来越多的开发人员的选择而串口通信是这个过程中必须解决的
问题之一.在对几种常用串口通信方法分析比较的基础上着重讨论了
Delphi开发环境下利用Mseomm控件实现PC机与单片机之间串口通信的方法研究了Mscomm串口通信的关键技术问题并通过一个实例给出了Mscomm控件在DelDhi7.0串口通信中的应用.3.期刊
论文 唐小洁.谢驰.杨府.TANG Xian-jie.XIE Chi.YANG Fu 基于MSComm控件下的激光跟踪
系统串口通信研究 -中国测试2009353 为了实现控制台对激光跟踪系统的测量控制
设计了一种基于MSComm控件下的串口通信.控制台与激光跟踪仪之间采用了两个串口进行连接通信协议为RS422串口一发出触发信号串口二进行信号采集整个编程环境在Delphi下进行程序中通过MSComm控件采集信号和对信号进行处理给出了程序部分关键
代码.通过实验测量程序运行良好最终达到了对激光跟踪仪角度信号的提取和对被测物体角度测量的目的系统有良好的测量精度和灵敏度.4.期刊
论文 吉翔.李永全 VC下MSComm控件的串口通信方法 -电脑开发与应用20092212 为解决串口通信问题详细介绍了Microsoft 公司提供的 ActiveX控件 Microsoft Communications ControlMSComm并利用该控件为应用程序提供了一种通过串口采集数据的通用解决
方案.5.期刊
论文 余衡.王仲东.YU Heng.WANG Zhong-dong MSComm控件在开发GPS接收板串口通信程序中的应用 -水电能源科学2000184 基于GPS-OEM板的基本工作原理及其通信协议讨论了MSComm控件的属性和使用方法并详细介绍了如何利用该控件实现微机与GPS-OEM板间的串口通信方法.6.会议
论文 王海红.李万山.苟玉君 利用MSComm控件实现微机与GPS-OEM析的串口通信 2000 利用中的控件对微机串口进行通讯解决了在环境下对串口的中断管理实现了下对板卫星数据的读取具有很高的参数价值。
7.期刊
论文 武淑红 利用MSComm控件实现可寻址广播系统的串行通信 -电脑开发与应用2004177 介绍了MSComm控件的特性和使用方法讨论了在Delphi环境下利用MSComm控件实现计算机和终端控制器/主控机之间的串口通信详细讨论了可寻址广播系统中串口通信程序的实现该控件在可寻址广播系统的设计中取得了良好的效果.8.期刊
论文 陈艾春 基于VC串口通信 -黑龙江科技信息20101 基于VC计算机串口编程在通信
软件中有着十分广泛的应用.一般情况下涉及到远程通信、自动控制的行业通常也会涉及到串口通信技术.在基于VC的串行通信接口编程之前必须熟悉串口RS-232/485标准在熟悉他们的电气特性和接口标准等一些特性后利用VC编写串口通信程序实现串口通信.串口的基本概念和研究目的是介绍什么是串口它的应用他的特性及标准.串口通信设备--串口信号线RS-232的标准是介绍RS-232的由来RS-232在串口通信上的一些特性它的优点和缺点和RS-485的简单介绍.基于VC的串口编程及实现:按照MSComm控件编程的步骤进行串口编程和实现串口通信在编程过程中介绍MSComm控件在串口实现上的一些属性.串口的应用:实现射击训练系统介绍它的组成和流程以及RS-232在其中的应用.9.期刊
论文 王晓丽.Wang Xiaoli 基于串口通信的摩托车前照灯检测 -小型内燃机与摩托车2009382 针对传统的摩托车灯光检测硬件电路复杂和易受干扰的不足提出了一种新型的基于串口通信的摩托车灯光测试方法.将工控机和灯光仪利用串口线相连在VC6.0环境下利用MSComm控件编写RS232串口通信程序实现了工控机对灯光仪数据的采集、数据显示和结果判断.实际运行结果表明该方法硬件电路简单、成本低和传输数据不易受干扰.10.期刊
论文 柴学宁 利用
VB实现计算机与单片机的串口通信 -电脑编程技巧与维护200512 Microsoft提供的MSComm控件为用户实现串口通信提供了简便、快捷的方法.本文介绍了Visual Basic环境下利用MSComm控件来实现PC机与单片机的串口通信并给出了应用于自动化药物分析仪的实例及部分应用程序
代码. 本文链接http://d.g.wanfangdata.com.cn/Periodical_tdtxxh200901023.aspx下载时间2010年6月5日