图片:
图片:
好吧在完全不懂的情况下我自己摸索出来了 哈哈今天总算是把数据读出来了 我在网上下了个样例程序就是楼上的结果plc没有返回 我又不懂调试vb这样的程序 后来我想到一个解密用的串口工具 把读取d123 开始的4位数据寄存器数据 指令格式是02h30h31h30h46h36h30h34h03h37h34h 结果发出去得到\STX64000000\ETX8D 中间那个64000000就是d123 d124 d125 d126的内容了 我实现在plc里往d123写入了k100其他就没动。后来我发现vb程序里是不是写入失败了就换了一种方式 不照抄 网上的样例程序了,修改一下
Private Sub Command1_Click()
Dim OutString(10) As Byte
Dim InString() As Byte
MSComm1.OutBufferCount = 0
MSComm1.InBufferCount = 0
OutString(0) = &H2
OutString(1) = &H30
OutString(2) = &H31
OutString(3) = &H30
OutString(4) = &H46
OutString(5) = &H36
OutString(6) = &H30
OutString(7) = &H34
OutString(8) = &H3
OutString(9) = &H37
OutString(10) = &H34
MSComm1.Output = OutString
Text1.Text = OutString
Do
DoEvents
Loop Until MSComm1.InBufferCount = 12
InString = MSComm1.Input
Text2.Text = InString
End Sub
Private Sub Form_Load()
MSComm1.CommPort = 3
MSComm1.Settings = "9600,e,7,1"
MSComm1.PortOpen = True
End Sub
写进去之后发现返回出来的数据跟我用串口工具调试的一样 那么说成功了
本来很简单的东西 不过我发现vb里数制什么的好多东西我都忘记了 搞不清楚现在 不过今天是老牛啃草 居然试出来了难道我跟美女聊一下天就有灵感了
另外求师傅一名 帮帮我