下面这个简单的例子演示了用调制解调器进行基本的串行通讯:
Private Sub Form_Load () ' 保存输入子串的缓冲区 Dim Instring As String ' 使用 COM1。 MSComm1.CommPort = 1 ' 9600 波特,无奇偶校验,8 位数据,一个停止位。 MSComm1.Settings = "9600,N,8,1" ' 当输入占用时, ' 告诉控件读入整个缓冲区。 MSComm1.InputLen = 0 ' 打开端口。 MSComm1.PortOpen = True ' 将 attention 命令送到调制解调器。 MSComm1.Output = "ATV1Q0" & Chr$(13) ' 确保 ' 调制解调器以"OK"响应。 ' 等待数据返回到串行端口。 Do DoEvents Buffer$ = Buffer$ & MSComm1.Input Loop Until InStr(Buffer$, "OK" & vbCRLF) ' 从串行端口读 "OK" 响应。 ' 关闭串行端口。 MSComm1.PortOpen = FalseEnd Sub注意 MSComm 控件可以采用轮询或事件驱动的方法从端口获取数据。这个简单的例子使用了轮询方法。关于事件驱动方法的例子请参阅 OnComm 事件的帮助。
|