新闻中心

EEPW首页>嵌入式系统>设计应用> 基于 MODBUS 总线多功能电力仪表远程通讯的软件开发技术

基于 MODBUS 总线多功能电力仪表远程通讯的软件开发技术

作者: 时间:2012-07-14 来源:网络 收藏

三、软件的设计和开发

注:从CD194E系列的多功能传过来的电功率数据就存放在Byte1到Byte4内。
3.通信步骤:
⑴加入通信控件。也就是MSComm控件
⑵设置通信端口号码。即CommPort属性,在本文使用Com1。
⑶设置通讯参数。即Settings属性。在本文设置为9600,n,8,1。即通讯速度为9600,数据格式为1个起始位,8个数据位,1个停止位,无校验位。注意必须与多功能的设置一致,不然就会通信失败。
⑷设置其它参数。必要时再加上其它的属性设置。
⑸打开通信端口。即PortOpen属性设成True。
⑹每隔500毫秒送出字符串或读入字符串。即发送命令4(读N个字节)来读取电功率参数,使用Input及Output属性。
⑺使用完MSComm控件后,将通信端口关闭。
4.人机界面:

5.程序代码:
'API函数声名
PrivateDeclareFunctionGetTickCountLib"kernel32"()AsLong
'点击结束程序按钮
PrivateSubCmdEnd_Click()
End
EndSub
'点击读取电功率按钮
PrivateSubCmdRead_Click()
Timer1.Enabled=NotTimer1.Enabled
IfTimer1.EnabledThen
CmdRead.Caption="停止读数"
Else
CmdRead.Caption="读取电功率"
EndIf
EndSub
'程序初始化
PrivateSubForm_Load()
MSComm1.InputMode=comInputModeBinary
MSComm1.PortOpen=True
Timer1.Enabled=False
EndSub
PrivateSubTimer1_Timer()
DimC4%,C5%,C6%,C7%
DimTick
DimDataAsDouble
DimBuf()AsByte
DimByteOut(7)AsByte
MSComm1.InputLen=0
Buf=MSComm1.Input
'重新定义数据输入缓冲区,发送命令4

MSComm1.InputLen=1
ByteOut(0)=H1
ByteOut(1)=H4
ByteOut(2)=H0
ByteOut(3)=H5C
ByteOut(4)=H0
ByteOut(5)=H4
ByteOut(6)=H31
ByteOut(7)=HDB
MSComm1.Output=ByteOut(0)ByteOut(1)ByteOut(2)ByteOut(3)ByteOut(4)ByteOut(5)
ByteOut(6)ByteOut(7)


评论


相关推荐

技术专区

关闭