开/闭端口 - Visual Basic 2005 串行通信程序-

这是分配给COM1 的USB连接的RS-232C 1端口型号 COM-1(USB)H ,是进行COM端口的开处理与关处理、例外处理的程序例子。

使用COM端口 COM1
通信速度 9600bps
奇偶校验设置 无(None)
数据位长度 8位
结束位 1位
握手信号 不使用
RTS线路 无效

创建画面与设置属性

启动Visual Basic 2005 ,创建新项目,创建左图所示的画面。将SerialPort组件粘贴在画面上。确认SerialPort组件的属性的内容(设置波特率等通信参数)。

对象 TextBox1 COM1
对象 Button1 连接
对象 Button2 断开

错误处理(例外处理)

如果不进行例外处理,在发生错误时,将强制结束应用。为了避免这种情况,进行例外处理。如果进行例外处理,将不强制结束应用。左图表示发生例外处理时显示消息框,发出警告的例子。

Error Not setting the PortName

程序记述例子

添加点击连接按钮、断开按钮时的处理。在Form1.vb记述以下代码。双击各对象(按钮等),如果双击按钮,记述按钮被按下时的处理的程序文件打开。在此记述想进行的处理。

端口开

Private Sub Button1_Click(...  → 连接按钮被按下时的处理
SerialPort1.PortName = TextBox1.Text    ' 存储要打开的端口名
SerialPort1.Open()                          ' 端口开
End Sub

端口关闭

Private Sub Button2_Click(...  → 断开按钮被按下时的处理
    If SerialPort1.IsOpen = True Then   ' 端口已打开
       SerialPort1.Close()                         ' 端口关闭
    End If
End Sub

例外处理

这是在上述代码中添加例外处理、例外错误的内容的标识时的记述例子

Private Sub Button1_Click(...  → 连接按钮被按下时的处理
    Try                     ' 例外处理开始
     If SerialPort1.IsOpen = True Then          ' 端口已打开
        MessageBox.Show("错误", MessageBoxButtons.OK, MessageBoxIcon.Error)                 
        Exit Sub
     End If
        SerialPort1.PortName = TextBox1.Text    ' 存储要打开的端口名
        SerialPort1.Open()                          ' 端口开       
    Catch ex As Exception           ' 例外处理            
        MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK,MessageBoxIcon.Error)        
    End Try 
End Sub
Private Sub Button2_Click(...  → 断开按钮被按下时的处理
    If SerialPort1.IsOpen = True Then   ' 端口已打开
       SerialPort1.Close()                         ' 端口关闭
    End If
End Sub

有关Try - Catch - End Try 语句结构,请确认Visual Basic 2005 的参考书。

To PageTop