通信总线和通信协议的区别(用通俗的语言解释)! 15
4个回答
展开全部
当然是可以的。同一种总线(比如RS485)上可以跑多种协议(如莫迪康的MODBUS,松下的MEWTOCOL,西门子的profibus/DP)。反之,MODBUS协议可以跑在各种总线上(除了RS485外,还常用在以太网上)。
实际上,不同的总线一般涉及到不同的物理层(硬件)技术,而所谓“协议”顾名思义就是一种相互传递信息规则的约定。
比如,说话、写字都是信息传递的手段,可以看作不同的总线。而汉语、英语则是信息表达方式的不同约定,可以看作不同的协议。那么你说是否可以交叉配合使用?
当然,有些高级协议的实现对总线技术是有依赖的,比如can总线实现对等协议(谁都可以主动发言)很容易,而RS485总线实现对等就很难(通信效率会大幅降低)。就好比"哑语"这种总线就比“说话”这种总线不利,交换信息的能力更受限。
至于HDLC嘛,他是一种在同步链路上设计的协议,这种协议一样可以在can上跑,但由于can属于异步总线(没有时钟信号),严格来说是有一点点不同,你可以把它命名为HDLC-can,大家都能理解,就是变种。很多协议都有变种,比如MODBUS-ASCII和MODBUS-RTU,但不影响他们都是MODBUS协议。其实,HDLC自身就有很多变种。
实际上,不同的总线一般涉及到不同的物理层(硬件)技术,而所谓“协议”顾名思义就是一种相互传递信息规则的约定。
比如,说话、写字都是信息传递的手段,可以看作不同的总线。而汉语、英语则是信息表达方式的不同约定,可以看作不同的协议。那么你说是否可以交叉配合使用?
当然,有些高级协议的实现对总线技术是有依赖的,比如can总线实现对等协议(谁都可以主动发言)很容易,而RS485总线实现对等就很难(通信效率会大幅降低)。就好比"哑语"这种总线就比“说话”这种总线不利,交换信息的能力更受限。
至于HDLC嘛,他是一种在同步链路上设计的协议,这种协议一样可以在can上跑,但由于can属于异步总线(没有时钟信号),严格来说是有一点点不同,你可以把它命名为HDLC-can,大家都能理解,就是变种。很多协议都有变种,比如MODBUS-ASCII和MODBUS-RTU,但不影响他们都是MODBUS协议。其实,HDLC自身就有很多变种。
晓网科技
2024-10-17 广告
2024-10-17 广告
协议的目的就是通信的双方传送和接收数据的规则,读协议就是要搞清楚数据是怎么传送和接收的;读协议太烦了,刚开始了解一下有哪些层,这些层有啥用就可以了,将来要用到的时候再查询协议的详细过程。 关于常用协议嘛,目前当然是TCP/IP了.。
Zig...
点击进入详情页
本回答由晓网科技提供
展开全部
当然不行。
通信总线和通信协议通常是对应的,换句放说,你选择什么样的通信总线就需要什么样的通信协议去跟它匹配才能通信。
每种总线能支持的最大速率(波特率)和抗干扰性等特点都是不一样的,所以在应用中首先要需要根据实际的环境来选择合适的通信总线,如CAN,SPI,SCI,I2C等,当选择完总线类型后就需要根据你所要传输的数据大小或类型来定义相应的协议。所以不同的总线类型要搭配不同的协议,但是协议里数据的格式可以一样,只是外面的框架要按相应的总线类型来匹配。
你可以这么理解:总线是标准定死的,这个标准通常是由几个大的公司联合制定的,你选择了什么总线就要按这个总线的相关标准去设计,而协议是我们自己定义的,当然这个协议制定的前提是要符合总线规范,而协议里面的内容可以由我们根据需要定义。
通信总线和通信协议通常是对应的,换句放说,你选择什么样的通信总线就需要什么样的通信协议去跟它匹配才能通信。
每种总线能支持的最大速率(波特率)和抗干扰性等特点都是不一样的,所以在应用中首先要需要根据实际的环境来选择合适的通信总线,如CAN,SPI,SCI,I2C等,当选择完总线类型后就需要根据你所要传输的数据大小或类型来定义相应的协议。所以不同的总线类型要搭配不同的协议,但是协议里数据的格式可以一样,只是外面的框架要按相应的总线类型来匹配。
你可以这么理解:总线是标准定死的,这个标准通常是由几个大的公司联合制定的,你选择了什么总线就要按这个总线的相关标准去设计,而协议是我们自己定义的,当然这个协议制定的前提是要符合总线规范,而协议里面的内容可以由我们根据需要定义。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
通讯总线是硬件,通讯协议是软件。很多时候同样的通讯协议可以在不同的总线上跑,例如RS232、RS485都可以用于MODBUS,但不是任何总线上可以只用任何协议,因为有的总线达不到协议的要求(比如响应时间)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询