欢迎来到天天文库
浏览记录
ID:49408295
大小:119.00 KB
页数:16页
时间:2020-03-01
《Modbus 通讯协议编程.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Modbus通讯协议编程本人最近为了实现电脑与DeltaVFD-M变频器通讯,特意用VB6.0编了一个Modbus协议通讯软件,不过这只是一个测试版,但Modbus的ASCii协议和RTU协议都己经实现。现在将源程序上贴,希望可以帮助到有需要的朋友,谢谢!(我发现图片贴不上去)另外,假如你觉得有更好的想法,欢迎E-mail指教。附:VB6源程序OptionExplicitPrivateTextltextAsStringPrivateRTUCRCAsString'串口选择PrivateSubCombo1_Click()MSComml.CommPo
2、rt=Combol.Listindex+1EndSub'数据位改变PrivateSubCombo2_Click()CallsettingEndSub'波特率改变PrivateSubCombo3_Click()CallsettingEndSub'奇偶校验改变PrivateSubCombo4_Click()CallsettingEndSub'停止位改变PrivateSubCombo5_Click()CallsettingEndSubPrivateSubsetting()MSComml.Settings=CStr(Combo3.Text)&&CStr
3、(Combo4.Text)&",”&CStr(Combo2.Text)_&&CStr(Combo5.Text)EndSub'打开关闭串口PrivateSubCommand1_Click()OnErrorResumeNextIfMSComml.PortOpen=FalseThenMSComml.PortOpen=TrueElseMSComml.PortOpen=FalseEndIfIfMSComml.PortOpenThen使能Commandl.Caption=”关闭串口"Combol.Enabled=FalseElseCommandl.Capt
4、ion=”打开串口”Combol.Enabled=TrueEndIfIfErrThenMsgBoxError$,48,"错误信息”ExitSubEndIfEndSub'10转16进制PrivateSubCommand2_Click(IndexAsInteger)OnErrorResumeNextText4.Text=Hex(Text3.Text)IfErrThenMsgBoxError$,48,”错误信息”ExitSubEndIfEndSubT6转10进制PrivateSubCommand3_Click()DimaAsLonga=Val(”&H
5、”&CStr(Text4.Text))Text3.Text=aEndSub'手动串口发送PrivateSubCommand4_Click()IfMSComml.PortOpen=FalseThenMsgBox”请先打开串口,”错误信息'ExitSubEndIfCallsentsubEndSub'清除接收窗PrivateSubCommand5_Click()Text2.Text=””EndSubPrivateSubCommand6_Click()UnloadMeEndSub'打开关闭按钮显示文字及combol'打开串口失败,则显示出错信息“则显示
6、出错信息PrivateSubCommand7_Click()OnErrorResumeNextDimSTPAsStringSTP=CStr(Chr(2))&**010001"&CStr(Chr(3))&n25"MSComml.Settings="9600,N,7,2”MSComml.PortOpen=TrueMSComml.Output=STPMSComml.PortOpen=FalseIfErrThen'打开串口失败,则显示出错信息MsgBoxError$,48,”错误信息"ExitSubEndIfEndSubPrivateSubComman
7、d8_Click()OnErrorResumeNextDimFWDAsStringFWD=CStr(Chr(2))&"010101"&CStr(Chr(3))&"26"MSComml.Settings=”9600,N,7,2”MSComml.PortOpen=TrueMSComml.Output=FWDMSComml.PortOpen=FalseIfErrThen'打开串口失败,则显示出错信息MsgBoxError$,48,”错误信息”ExitSubEndIfEndSubPrivateSubCommand9_Click()OnErrorResu
8、meNextDimREVAsStringREV=CStr(Chr(2))&”010201”&CStr(Chr(3))&“27”MSComml.Sett
此文档下载收益归作者所有