您现在所在的是:

西门子SIEMENS

回帖:3个,阅读:586 [上一页] [1] [下一页]
* 帖子主题:

请高手指教modbus

1022
jhsky
文章数:14
年度积分:50
历史总积分:1022
注册时间:2005/10/27
发站内信
发表于:2012/11/1 11:20:02
#0楼
我用VB编程读写s7-200.现在读数据可以,但写不了.请高手帮忙看看.
Private Sub Command4_Click()
Dim send(11) As Byte
Dim bh1 As Byte
Dim bh2 As Byte
send(0) = 1
send(1) = &H10
send(2) = 0
send(3) = 0
send(4) = 0
send(5) = 1
send(6) = 2

send(7) = &H11
send(8) = &H22

Call crc(send, 9, bh1, bh2)
send(9) = bh2
send(10) = bh1
MSComm1.Output = send
End Sub
S7-200返回01 90 02 CD C1
crc校验没有问题,读数据没有问题.
19852
pqsh 版主
文章数:7496
年度积分:468
历史总积分:19852
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2012/11/1 11:35:40
#1楼
看程序貌似没有问题啊
是不是crc错误,或者校验错?
还是S7返回的没有接收全?
如果我忘了我
请帮忙记得我
pqsh@163,326199298@v&q同号
1022
jhsky
文章数:14
年度积分:50
历史总积分:1022
注册时间:2005/10/27
发站内信
发表于:2012/11/1 12:16:10
#2楼
crc没有错,我读数据和置位I0.0都没有问题啊.写的时候s7-200也返回数据了.不过是错误的数据01 90 02 CD C1
1022
jhsky
文章数:14
年度积分:50
历史总积分:1022
注册时间:2005/10/27
发站内信
发表于:2012/11/1 12:20:20
#3楼
这是我的读数据的,这个没有问题.
Private Sub Command2_Click()
Dim send(8) As Byte
Dim bh1 As Byte
Dim bh2 As Byte
send(0) = 1
send(1) = 3
send(2) = 0
send(3) = 0
send(4) = &H0
send(5) = 10
Call crc(send, 6, bh1, bh2)
send(6) = bh2
send(7) = bh1
MSComm1.Output = send
End Sub

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

46.8003