您现在的位置是:首页 > PLC技术 > PLC技术

Windows串行通信控件MSComm介绍

来源:艾特贸易2017-06-04

简介在 Windows 环境下,操作系统通过驱动程序控制各硬件资源,不允许用户像在 DOS 环境下那样直接对串口进行底层的操作。为此,可以使用串行通信控件 Microsoft Comm Control ,简称 MSComm 控件

    Windows环境下,操作系统通过驱动程序控制各硬件资源,不允许用户像在DOS环境下那样直接对串口进行底层的操作。为此,可以使用串行通信控件Microsoft Comm Control,简称MSComm控件。程序员只需设置和监视MSComm控件的属性和事件,就可以实现串行通信。    1MSGomm控件的属性    通过设置MSComm控件的属性对串口进行操作,其主要属性如下。    ·CommPort:设置并返回通信端口号。    ·Settings:以字符串的形式设置并返回波特率、奇偶校验位、数据位和停止位。其中以字符noe分别代表无校验、奇校验和偶校验。    ·PortOpen:设置并返回通信端口的状态。设置为Ture时,打开端口;设置为False时,关闭端口。    ·Input:从接收缓冲区中读取数据,类型为Variant    ·Output:向发送缓冲区写入数据,类型为字符串或字节数组。    ·InputMode:设置从缓冲区读取数据的格式,设为0时为字符串格式(Text),设为1时为二进制格式( Binarv)    ·InBufferCount:设置和返回接收缓冲区的字节数,设为0时清空接收缓冲区。    ·OutBufferCount:设置和返回发送缓冲区的字节数,设为0时清空发送缓冲区。    ·InputLen:设置和返回Input每次读出的字节数,设为0时读出接收缓冲区中的内容。    ·RThreshold:表示在串口事件(OnComm)发生之前,接收缓冲区接收的最少字节数。若设为0,可以禁止发生OnComm事件。一般设为1,即当接收缓冲区中的字节数大于等于1时,就会产生接收事件。    · CommEvent:返回相应的OnComm事件常数。如comEvReceive表示接收事件,comEventBreak表示接收到Break事件。    2MSGomm控件处理接收信息的方式    MSComm控件提供了两种处理方式。    ·事件驱动方式:RThreshold属性非0时,收到字符或传输线发生变化时就会产生串口事件OnComm。通过查询CommEvent属性可以捕获并处理这些通信事件。    ·查询方式:通过查询InputBufferCount(接收缓冲区的字节数)属性值,处理接收到的信息。