您现在所在的是:

欧姆龙OMRON

回帖:4个,阅读:1461 [上一页] [1] [下一页]
1003
hurong4597
文章数:18
年度积分:50
历史总积分:1003
注册时间:2005/10/23
发站内信
发表于:2006/6/15 9:25:00
#0楼
在文本框1里写数据,按发送按钮,然后再下面的文本框2里显示,一直搞不定。请高手指点。
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "9600,E,7,1"
MSComm1.PortOpen = True
End Sub
Private Sub Command1_Click()

Dim OutputStr As String
Dim send  As String
send=Text1.Text
MSComm1.OutBufferCount = 0
OutputStr=send+FCS(send)+“*”这句话老是显示红色。不知道问什么
MSComm.Output = OutputStr + Chr$(13)


End Sub

Private Sub MSComm1_OnComm()
Dim InputStr As String
Select Case MSComm1.CommEvent
Case comEvReceive
InputStr = MSComm.Input
Text2.Text = InputStr
MSComm1.InBufferCount = 0
End Select
End Sub
961
x-man31
文章数:2
年度积分:50
历史总积分:961
注册时间:2005/12/6
发站内信
发表于:2006/6/15 10:57:00
#1楼
你要设置MSComm.RTHreshold=1作为接收字节数引发Comm事件的标志
9062
吴辉
文章数:2351
年度积分:50
历史总积分:9062
注册时间:2002/1/15
发站内信
发表于:2006/6/15 13:15:00
#2楼
OutputStr=send+FCS(send)+“*”这句话老是显示红色。不知道问什么

FCS函数写了没?
1003
hurong4597
文章数:18
年度积分:50
历史总积分:1003
注册时间:2005/10/23
发站内信
发表于:2006/6/15 15:41:00
#3楼
新写出来的是这样的,帮我改改吧。我搞不通
Private Sub Command1_Click()

Dim OutputStr As String
Dim send  As String
send = "@00RR0000001"
MSComm1.OutBufferCount = 0
OutputStr = send + FCS(send) + "*"

MSComm1.Output = OutputStr + Chr$(13)

End Sub


Private Sub MSComm1_OnComm()
Dim InputStr As String
Select Case MSComm1.CommEvent
Case comEvReceive

InputStr = MSComm1.Input
Text1.Text = InputStr

End Select
End Sub
Function FCS(ByVal InputStr As String) As String
Dim Slen, i, Xorresult As Integer
Dim Tempfes As String
Slen = Len(InputStr)
Xorresult = 0
For i = 1 To Slen
Xorresult = Xorresult Xor Asc(Mid$(InputStr, i, 1))
Next i
Tempfes = Hex$(Xorresult)
If Len(Tempfes) = 1 Then Tempfes = "0" + Tempfes
FCS = Tempfes
End Function






Private Sub List1_Click()

End Sub

Private Sub Option1_Click()

If MSComml.PortOpen = False Then
MSComm1.Settings = "9600,n,8,2"
MSComml.CommPort = 1
End If
MSComm1.OutBufferCount = 0
MSComm1.InBufferCount = 0


End Sub

Private Sub Option2_Click()

If MSComml.PortOpen = False Then
MSComm1.Settings = "9600,n,8,2"
MSComml.CommPort = 2
End If
MSComm1.OutBufferCount = 0
MSComm1.InBufferCount = 0
End Sub

Private Sub tt_Click()
Unload Form1
End

End Sub

979
wlc_omron1
文章数:27
年度积分:50
历史总积分:979
注册时间:2006/6/29
发站内信
发表于:2006/6/29 9:37:00
#4楼
我有例子.TEL:13636962573
小吴

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

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

62.4004