打印

求教:Modbus中,RTU和ASCII模式区别究竟在哪?

[复制链接]
5898|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yanse51|  楼主 | 2013-4-30 16:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题:近日看了Modbus通信协议。看到RTU mode & ASCII mode的区别。没理解。现截取一段,求解释。
ASCII模式:消息中的每8bit字节,都可作为“ 2个ASCII字符 ”发送。
RTU模式  :消息中的每8bit字节,包含    “ 2个4bit的十六进制字符”。

不理解。还请各位高手多多指教,最好有个小例子哦。谢谢啦!

相关帖子

沙发
Cjy_JDxy| | 2013-4-30 18:43 | 只看该作者
我的理解:ASCII模式,一个字节,两个ASCI码,范围从0-9
RTU模式,一个字节,两个字符,范围0-15

使用特权

评论回复
板凳
张允| | 2013-5-2 17:35 | 只看该作者
引用“Modbus通信协议”
ASCII模式
当控制器设为在Modbus网络上以ASCII(美国标准信息交换代码)模式通信,在消息中的每个8Bit字节都作为两个ASCII字符发送。这种方式的主要优点是字符发送的时间间隔可达到1秒而不产生错误。
代码系统
• 十六进制,ASCII字符0...9,A...F
• 消息中的每个ASCII字符都是一个十六进制字符组成
每个字节的位
• 1个起始位
• 7个数据位,最小的有效位先发送
• 1个奇偶校验位,无校验则无
• 1个停止位(有校验时),2个Bit(无校验时)
错误检测域
• LRC(纵向冗长检测)

RTU模式
当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。
代码系统
• 8位二进制,十六进制数0...9,A...F
• 消息中的每个8位域都是一个两个十六进制字符组成
每个字节的位
• 1个起始位
• 8个数据位,最小的有效位先发送
• 1个奇偶校验位,无校验则无
• 1个停止位(有校验时),2个Bit(无校验时)
错误检测域
• CRC(循环冗长检测)

附件:

ModBus协议(中文pdf文件).pdf

156.79 KB

使用特权

评论回复
地板
yanse51|  楼主 | 2013-5-2 23:15 | 只看该作者
ASCII中1个字节: 7+1+0/1+1/2>=9位。
通常1个字节不都是8位吗? 为什么呢?
每个字节的位
• 1个起始位
• 7个数据位,最小的有效位先发送
• 1个奇偶校验位,无校验则无
• 1个停止位(有校验时),2个Bit(无校验时)

使用特权

评论回复
5
原野之狼| | 2013-5-3 09:02 | 只看该作者
yanse51 发表于 2013-5-2 23:15
ASCII中1个字节: 7+1+0/1+1/2>=9位。
通常1个字节不都是8位吗? 为什么呢?
每个字节的位

此处讲的是链路层的数据格式 跟你说的每个字节8位不是一回事

使用特权

评论回复
6
coody| | 2013-5-6 18:20 | 只看该作者
LZ最好看看MODBUS协议文本

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

39

主题

88

帖子

0

粉丝