VB中的MSCOMM控件使用详解

需积分: 3 3 下载量 145 浏览量 更新于2024-07-23 收藏 139KB DOC 举报
VB的MSCOMM控件详解 VB的MSCOMM控件是VB中的一种通信控件,提供了功能完善的串口数据的发送和接收功能。该控件具有两种处理方式:事件驱动方式和查询方式。事件驱动方式是由Mscomm控件的OnComm事件捕获并处理通信错误及事件,而查询方式是通过检查CommEvent属性的值来判断事件和错误。 Mscomm控件的通信功能实现实际上是调用了API函数,而API函数是由Comm.drv解释并传给设备驱动程序执行的,对于VB程序开发者只需知道Mscomm控件的属性和事件的用法即可以实现串口的操作。 Mscomm控件的主要属性和方法有: 1. CommPort:设置或返回串行端口号,其取值范围为1~99,缺省为1。 2. Setting:设置或返回串行端口的波特率、奇偶校验位、数据位数、停止位。如:Mscomm.Setting=“9600,N,8,1”。 3. PortOpen:打开或关闭串行端口,格式为:Mscomm.PortOpen={TRUE|FALSE}。 4. InBufferSize:设置或返回接收缓冲区的大小,缺省为1024字节。 5. InBufferCount:返回接收缓冲区内的等待读取的字节个数,可通过设置该属性为0来清除接收缓冲区。 6. RThreshold:该属性为一阀值,它确定当接收缓冲区内字节个数达到或超过该值后就产生代码为MSCOMM_EV_RECEIVE的OnComm事件。 7. InputLen:设置或返回接收缓冲区内用Input读入的个数。若取0,则INPUT读取整个缓冲区的内容。 8. Input:该属性表示从接收缓冲区移走一串字符。 9. OutBufferSize:设置或返回发送缓冲区,缺省为512字节。 10. OutBufferCounter:返回发送缓冲区内等待发送的字符数,可用来清空缓冲区。 11. Output:向发送缓冲区传送一字符串。 12. EOFEnable:若置TRUE,则当输入中出现EOF,就停止输入并产生OnComm事件。 在通信过程中,如果发生错误或事件,就会引发OnComm事件,并且改变属性值,由CommEvent属性代码反映错误类型。在通信程序的设计中可根据该属性值来执行不同的操作。CommEvent属性代码包括: 1. ComEvSend:其值为1,发送缓冲区的内容少于SThreshold指定的值。 2. ComEvReceive:其值为2,接收缓冲区的内容超过或等于RThreshold指定的值。 3. ComEvRxChar:其值为3,接收到一个字符。 4. ComEvRxFlag:其值为4,接收到一个标志。 5. ComEvTxEmpty:其值为5,发送缓冲区为空。 6. ComEvCTS:其值为6,CTS(Clear to Send)信号变为活动状态。 7. ComEvDSR:其值为7,DSR(Data Set Ready)信号变为活动状态。 8. ComEvRing:其值为8,检测到环信号。 9. ComEvBreak:其值为9,检测到Break信号。 VB的MSCOMM控件提供了功能完善的串口数据的发送和接收功能,对于VB程序开发者来说非常实用。