打印本文 打印本文 关闭窗口 关闭窗口
用VB调试串口通讯
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2025  更新时间:2009/4/23 18:59:34  文章录入:mintao  责任编辑:mintao

现有电子秤一台,使用串口与计算机进行通讯。编写VB程序来访问串口,达到读取电子秤上显示的数据。该电子秤为BE01型仪表,输出为RS-232C标准接口,波特率为300-9600、偶校验、7个数据位、2个停止位。所有字符均发送11ASCII码,一个起始位。在VB中与串口通讯需要引入控件MSComm串口通讯控件(在Microsoft Comm Control 6.0中)。具体程序如下:控件简称:MSC

Dim Out(12) As Byte   ''''接收var中的值

Dim var As Variant   ''''接收MSC.input中的数值

Dim nRece As Integer   ''''计算MSC.inputbuffer的个数

Dim i As Integer, j As Integer  ''''随即变量,计算循环

****************************************************************************

Private Sub Form_Load()

    ClearText

    With MSC

        .CommPort = 1  ''''设置Com1为通信端口

        .Settings = "9600,E,7,2"  ''''设置通信端口参数 9600赫兹、偶校验、7个数据位、1个停止位.(这里需要进一步说明的是:.Setting=”BBBB,P,D,S”

含义是:BBaud Rate(波特率);PParity(奇偶);DData BitSStop Bit

        .InBufferSize = 40  ''''设置缓冲区接收数据为40字节

        .InputLen = 1  ''''设置Input一次从接收缓冲读取字节数为1

        .RThreshold = 1  ''''设置接收一个字节就产生OnComm事件

    End With

End Sub

****************************************************************************

Private Sub ClearText()

    Text3.Text = ""

    Text2.Text = "5"

    Text1.Text = ""

End Sub

 

Private Sub Command1_Click()

    ClearText

''''    nRece = 0  ''''计数器清零

    With MSC

        .InputMode = comInputModeBinary ''''设置数据接收模式为二进制形式

        .InBufferCount = 0  ''''清除接收缓冲区

        If Not .PortOpen Then

            .PortOpen = True   ''''打开通信端口

        End If

    End With

End Sub

Private Sub MSC_OnComm()

    DelayTime   ‘用来延续时间

    ClearText

    With MSC

        Select Case .CommEvent  ''''判断通信事件

[1] [2] [3]  下一页

打印本文 打印本文 关闭窗口 关闭窗口