计算机与电子秤串口通信问题
本人是一个VB初学者,有一台电子秤,想将电子秤的数据采集后通过二进制显示出来,但是每次显示的都是3个字节的乱码。
电子秤的数据格式如下:
每次发送6帧,每帧定义如下:
每10Bit为一数据帧,Bit1:起始位,Bit2-Bit9:数据位,Bit10:停止位
第一帧:D0-D7——OFFH(起始位)
第二帧:D0-D2——为小数点位
D3-D4——当前工作模式:00-记重模式,01-记数模式,10-百分比模式
D5 ——1表示重量为负,0表示重量为正
D6 ——1表示重量稳定,0表示重量不稳定
D7 ——1表示重量溢出,0表示重量未溢出
第三帧:D0-D7——BCD码1(显示数值的最低字节)
第四帧:D0-D7——BCD码2(显示数值的中间字节)
第五帧:D0-D7——BCD码3(显示数值的最高字节)
第六帧:D0-D7——记重模式下的单位:1表示单位是磅,0表示单位是公斤
下面是我的代码,希望各位高手指点一下小弟。
Dim indata As Variant
Private Sub Form_Load()
MSComm1.CommPort = 1 '...使用Com1口
MSComm1.Settings = "9600,n,8,1" '...设置通讯参数
MSComm1.InBufferSize = 40
MSComm1.InputMode = comInputModeBinary
MSComm1.InputLen = 24
MSComm1.RThreshold = 1
MSComm1.SThreshold = 1
MSComm1.PortOpen = True '...打开串口
End Sub
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case comEvReceive '...有接收事件发生
indata = MSComm1.Input
Text1.Text = indata '…text1实时显示数显表的数据
MSComm1.InBufferCount = 0 '...清空输入寄存器
End Select
End Sub
电子秤的数据格式如下:
每次发送6帧,每帧定义如下:
每10Bit为一数据帧,Bit1:起始位,Bit2-Bit9:数据位,Bit10:停止位
第一帧:D0-D7——OFFH(起始位)
第二帧:D0-D2——为小数点位
D3-D4——当前工作模式:00-记重模式,01-记数模式,10-百分比模式
D5 ——1表示重量为负,0表示重量为正
D6 ——1表示重量稳定,0表示重量不稳定
D7 ——1表示重量溢出,0表示重量未溢出
第三帧:D0-D7——BCD码1(显示数值的最低字节)
第四帧:D0-D7——BCD码2(显示数值的中间字节)
第五帧:D0-D7——BCD码3(显示数值的最高字节)
第六帧:D0-D7——记重模式下的单位:1表示单位是磅,0表示单位是公斤
下面是我的代码,希望各位高手指点一下小弟。
Dim indata As Variant
Private Sub Form_Load()
MSComm1.CommPort = 1 '...使用Com1口
MSComm1.Settings = "9600,n,8,1" '...设置通讯参数
MSComm1.InBufferSize = 40
MSComm1.InputMode = comInputModeBinary
MSComm1.InputLen = 24
MSComm1.RThreshold = 1
MSComm1.SThreshold = 1
MSComm1.PortOpen = True '...打开串口
End Sub
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case comEvReceive '...有接收事件发生
indata = MSComm1.Input
Text1.Text = indata '…text1实时显示数显表的数据
MSComm1.InBufferCount = 0 '...清空输入寄存器
End Select
End Sub
...全文
相关推荐
Android下的串口通信实战之电子秤交互
串口通信(Serial Communication)是计算机和其他设备之间进行数据交换的一种方式,它允许Android设备与外部设备如电子秤、传感器等进行实时数据传输。
IE中托利多电子秤与计算机通信的研究.pdf
使用 OCX 控件实现托利多 8142 电子秤与计算机数据通信的技术。2. 介绍了托利多 8142 电子秤的串口数据格式。3. 使用 MSComm ActiveX 控件实现与电子秤的串口通信。4.
java-rxtx串口通信读取电子秤数据全源码包win7x64
Java-RXTX串口通信库是Java平台上的一个开源项目,专门用于实现Java应用程序与物理串行端口之间的通信。
C#读取电子秤重量
错误处理与异常安全: 在进行串口通信时,可能会遇到各种问题,如连接中断、数据格式错误等。因此,编写健壮的错误处理代码至关重要,例如使用try-catch语句捕获异常,并提供合适的错误反馈。5.
电子秤串口调试工具
标题中的“电子秤串口调试工具”是指一种专门用于调试和诊断电子秤与计算机之间通过串行接口进行数据交换的应用程序。


COM/DCOM/COM+
