《Windows环境下的串行数据通信程序设计.docx》由会员分享,可在线阅读,更多相关《Windows环境下的串行数据通信程序设计.docx(2页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Windows环境下的串行数据通信程序设计该文详细讨论了 MSCOMM. VBX通信控件在Windows平台 下的通信软件设计方法,借助于Visual Basic所附的通信控 件能非常方便地开发出高级和专业性通信软件来满足不同 业务的需要。在Windows操作系统平台上开发通信软件时,虽然 Windows 3. 1 SDK提供了完备的API应用程序接口函数和以 中断方式驱动的通信设备驱动程序COMM. DRV,从而可以用C 或C+来完成这类应用程序的设计,但其复杂化和专业化程 度仍然很高。所以,目前许多软件开发人员都在使用 Microsoft Visual Basic来开发Windows应用程
2、序。本文将 详细表达VB环境的通信软件开发方法,通过对通信控件 MSCOMM. VBX的分析,我们可以看到利用VB来开发Windows平 台下的通信软件非常简单。最后结合我们工作中的一个实例 来完整地描述该类软件的设计方法。一、MSCOMM. VBX 的描述VB中的串行通信控件已全面提供了使用RS-232来开展 数据通信软件开发设计的所有细那么,Microsoft Visual Basic 3. 0中的MSCOMM. VBX(需要安装在indowsyste中目录 下)是 1992 年 Crescent software Inc.公司专为 Microsoft 的VB平台设计的,它使用以下两种不同
3、的方式来处理和解决 各类通信软件的开发和设计问题。(1)事件驱动,它和我们用C/C+写Windows软件时的窗 口回调函数类似,是一种功能强大的处理问题的方法。在实 际工作中,往往要求我们处理许多通信中的相关事件。例如: 当线路数据到达本端或CD (Carrier Detect)和RTS (Request To Send)信号线状态发生变化时,这就要求我们使用相应的 事件来跟踪和处理。在该控件中,是使用OnComm来实现的, 它也包括检测和处理通信错误等方面的问题。以下是MSCOMM 详细的错误和事件列表(读者可参阅SKD或MSC/C+ 7.0等 中的Windows, h有关的通信局部常数和函
4、数原型):MSCOMM_ER_BREAKA 收到一个 Break signal.MSCOMM_ER_CDTOCD 信号超时MSCOMM_ER_CTSTOCTS 信号超时MSCOMM_ER_DSRTODSR 信号超时MSCOMM_ER_FRAME帧错误发生MSCOMM_ER_OVERRUN接收数据丧失MSCOMM_ER_RXOVER接收缓冲 器溢出MSCOMM_ER_RXPARITY 纠验错MSCOMM_ER_TXFULL发送缓冲器满MSCOMM_EV_CDCD 信号改变MSCOMM_EV_CTSCTS 信号改变MSCOMM_EV_DSRDSR 信号改变MSC0MM_EV_E0F收到一个文本文件结束字符(26)MSCOMM_EV_RING检测到一个振铃信号MSCOMM EV RECEIVE接收到设定的字符数时产生该事件MSCOMM_EV_S