使用的电子秤以连续方式按MCS-51下的方式1输出RS-232C信号,数据为ASCII码,共有16个帧,包括1个起始字符帧(02),2个状态椟志帧,1个空格字符,6个显示数据帧和6个皮重数据帧,每一个帧由10位组成,每一位是起始位“0”,第十位是停止位“1”,中间8个数据位(从低到高)的格式如下:
起始位 D0 D1 D2 D3 D4 D5 D6 D7 停止位
目前了解该电子秤不提供dll驱动请问如何实时接收到电子秤的发馈给计算机的质量信息呢,如何将接收到的信号转换为质量(kg)谢谢!!!
起始位 D0 D1 D2 D3 D4 D5 D6 D7 停止位
目前了解该电子秤不提供dll驱动请问如何实时接收到电子秤的发馈给计算机的质量信息呢,如何将接收到的信号转换为质量(kg)谢谢!!!
应该是16个字节最成 一个帧吧
“起始位 D0 D1 D2 D3 D4 D5 D6 D7 停止位 ”
这里组成了一个字节
http://www.mndsoft.com
怎么进行数据转换呢?急,我是菜鸟,第一次做这样的程序。好多地方不懂,请帮助!
MSComm1.InputLen = 0 '设置每次从串口缓冲区取的字节为全部
MSComm1.InputMode = comInputModeBinary
MSComm1.Settings = "9600,n,8,1"
MSComm1.PortOpen = True '打开串口
End SubPrivate Sub MSComm1_OnComm() '串口中断
Dim InData as StringSelect Case MSComm1.CommEvent '选择事件Case comEvReceive '接收到字符 Dim InByte() As Byte '定义一个二进制指针放接收到的数据
InByte = MSComm1.Input '数据转移到指针 Dim j As Long
For j = 0 To UBound(InByte) '循环到指针上标 inData = inData & Hex(InByte(j)) & " " '取出一个字节换为16进制显示用
Next j
DoEvents Text1.Text = inData '将刚收到的字符串显示出来
inData = ""
Text1.SelStart = Len(Text1.Text) '光标置后Case comEventRxOver '接收缓冲区满的处理
MsgBox "接收缓冲区满了!" '发出警告
End Select
End SubPrivate Sub Form_Unload(Cancel As Integer)
MSComm1.PortOpen = 0
End Sub