MSComm控件的使用方法(1)
MSComm 控件为应用程序提供了串口通信功能,该应用程序允许通过串口发送和接收数据。
语法
MSComm
说明
MSComm控件提供了两种处理通信的方法:
*事件驱动通信,是一种功能很强的处理串口活动的方法。在大多数情况下,用户需要获知事件发生的时间,例如,在CD(Carrier Detect)线或RTS(Request To Send)线上有字符到达或发生了改变等。在这种情况下,使用MSComm 控件的OnComm 事件捕获和处理这些通信事件。OnComm也可以捕获和处理通信中的错误。要获取所有事件和通信错误的完整清单,请参阅CommEvent属性。
*用户也可以在每个重要的程序功能之后检查CommEvent 属性的值来检测事件和通信错误。这对小的自含程序可能比较常用。例如,如果编写一个简单的电话拨号程序,那么在接收了每个字符后都产生一个事件并没有意义,因为你只打算从调制解调器中接收OK响应信息。
使用的每个MSComm 控件都与一个串口对应。如果在应用程序中需要访问多个串口,必须使用多个MSComm 控件。可以在Windows 控制面板中修改串口地址的中断地址。
虽然MSComm控件有许多很重要的属性,但应先熟悉下面几个属性:
属性描述
CommPort 设置或返回通信端口号
Settings 以字符串的形式设置或返回波特率、奇偶校验、数据位和停止位
PortOpen 设置或返回通信端口的状态。也可以打开和关闭端口
Input 返回和删除接收缓冲区中的字符
Output 将字符串写入发送缓冲区
示例
下面的例子演示了使用调制解调器进行基本的通信。
Private Sub Form_Load ()
Buffer to hold input string
Dim Instring As String
Use COM1.
MSComm1.CommPort = 1
9600 baud, no parity, 8 data, and 1 stop bit.
MSComm1.Settings = “9600,N,8,1”
Tell the control to read entire buffer when Input
is used.
MSComm1.InputLen = 0
Open the port.
MSComm1.PortOpen = True
Send the attention command to the modem.
MSComm1.Output = “ATVtQ0”& + Chr ( 13 ) E n s u r e t h a t t h e m o d e m r e s p o n d s w i t h “ O K ” W a i t f o r d a t a t o c o m e