关于MODBUS RTU通讯协议的提问
我想用VB编写一个关于具有MODBUSRTU通讯协议的温控表的软件,但是我对MODBUSRTU通讯协议从未涉及,希望能够提供关于MODBUSRTU通讯协议的一些具体的内容...
我想用VB编写一个关于具有MODBUS RTU通讯协议的温控表的软件,但是我对MODBUS RTU通讯协议从未涉及,希望能够提供关于MODBUS RTU通讯协议的一些具体的内容,以及结合相应的VB程序给与具体的讲解。我在网上也能搜到一些关于MODBUS RTU的介绍和VB程序代码,但是依照我现在的能力无法正确解读其内容的实质,希望各位能给与帮助,我需要的是详尽和细致的内容。
展开
1个回答
2013-09-14
展开全部
modbus 桢结构 : 地址 功能码 开始地址 数据长度 CRC检验码
像你这种应该是使用功能3 例如 要问RTU(地址是0x01,要问得数据在0x02上,长度是一个字)就准备一个数组MESSAGE[255],从MESSAGE[0]开始赋值 &H01,&H03,&H00,&H02,&H00,&H01,&Hxx,&Hxx,(最后两个是CRC校验码,我没算)这样得一串数据叫一帧(MODBUS就是主问一帧从回一帧来运行的),接着就是打开MSCOMM,用个循环把数组按顺序放到输出缓冲发送就好了,接着就是读接受缓冲,分析数据了,回来的应该是 &H01,&H03,&H01,&Hxx,&Hxx,&Hxx,&Hxx,(地址,功能码,长度,数据,CRC校验)CRC校验完成后 你就可以提取中间得数据部分了,大概过程就是这样,最近一直在自己搞PIC单片机,通讯就是用得MODBUS。
要学MODBUS最好就是下个MOSBUS得测试软件,有好多的
像你这种应该是使用功能3 例如 要问RTU(地址是0x01,要问得数据在0x02上,长度是一个字)就准备一个数组MESSAGE[255],从MESSAGE[0]开始赋值 &H01,&H03,&H00,&H02,&H00,&H01,&Hxx,&Hxx,(最后两个是CRC校验码,我没算)这样得一串数据叫一帧(MODBUS就是主问一帧从回一帧来运行的),接着就是打开MSCOMM,用个循环把数组按顺序放到输出缓冲发送就好了,接着就是读接受缓冲,分析数据了,回来的应该是 &H01,&H03,&H01,&Hxx,&Hxx,&Hxx,&Hxx,(地址,功能码,长度,数据,CRC校验)CRC校验完成后 你就可以提取中间得数据部分了,大概过程就是这样,最近一直在自己搞PIC单片机,通讯就是用得MODBUS。
要学MODBUS最好就是下个MOSBUS得测试软件,有好多的
晓网科技
2024-10-17 广告
2024-10-17 广告
ZigBee 协议属于高级通信协议,是基于上世界的IEEE协会制定的802协议,主要约束了网路的无线协议、通讯协议、安全协议和应用需求等方面的标准,其有效转播速率可以达到300Kbps (千比特率)。 和计算机通信的模式类似,ZigBee的...
点击进入详情页
本回答由晓网科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询