Intel与Motorola的编码格式区别Intel与Motorola的编码格式区别.pdf

Intel与Motorola的编码格式区别Intel与Motorola的编码格式区别.pdf

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Intel与Motorola的编码格式区别Intel与Motorola的编码格式区别

Intel 格式与 Motorola 格式的区别 -CAN 总线信号的编码方式之我见 在进行 CAN 总线通信设计或者测试过程中,经常看到 CAN 总线信号的编码格式有两种定义:Intel 格 式与 Motorola 格式。究竟两种编码格式有什么样的区别呢?设计者、dbc 文件编辑者或者测试人员又该 如何判断两种格式,并进行有效正确的配置和解析呢?下面作者给出自己在设计和测试过程中的一点体 会和见解,希望能够总结出来加深一下印象和理解。 在编码优缺点上,Motorola 格式与 Intel 格式并没有孰优孰劣之分,只不过根据设计者的习惯,由用 户自主选择罢了。当时,对于使用者来讲,在进行解析之前,就必须要知道编码的格式是哪一种,否则, 就不能保证正确地解析信号的含义。以下就以 8 位字节编码方式的 CAN 总线信号为例,详细分析一下 两者之间的区别。 首先,介绍一下 CAN 总线的数据传输规则,首先传输一个字节的高位(msb ),最后传输该字节的 低位(lsb )。如下图所示。 bytex bit(8*x+7) bit(8*x) msb lsb 注:x=0,1,2,3 ……7 一般情况下,主机厂在定义 CAN 总线信号定义时,都会明确定义字节的发送顺序,即:以首先发 送 byte0 (LSB ),然后 byte1 ,byte2 ,…… (MSB )的发送顺序;还是以首先发送 byte7 (MSB ),然后 byte6 ,byte5 ,…… (LSB )的发送顺序。据作者了解到的多个主机厂定义的 CAN 总线字节发送顺序均 为前者(即:首先发送 LSB ,最后发送 MSB )。这一点可以从目前主流的 CAN 总线信号数据库编辑器 德国 verctor 公司的 CANoe 软件工具的定义上看出,CANoe 中的CANdb++编辑器中默认定义的 CAN 数 据场的字节结构及每一位的排布入下图所示。 在这种情况下,如果主机厂采用的是首先发送 LSB ,最后发送 MSB 的发送顺序,则在上表中可直接按 照从左至右,从上至下的顺序依次对信号进行排布即可;但是,如果主机厂采用的是首先发送 MSB ,最 后发送 LSB 的发送顺序,则在上表中需要从下至上,从右至左的顺序依次对信号进行排布,这样就比较 难以对应,而且信号与数据场各字节之间的映射关系也不太直观。所以,一般来讲,主机厂会采用首先 发送 LSB ,最后发送MSB 的发送顺序。 下面就以 CAN 总线报文的发送顺序为首先发送 LSB ,最后发送 MSB 的方式为前提,介绍 Intel 格 式与 Motorola 格式这两种编码方式的不同之处。 一、 采用 Intel 格式编码 当一个信号的数据长度不超过 1 个字节(8 位)并且信号在一个字节内实现(即,该信号没有跨字 1 2 节实现)时,该信号的高位(S_msb ) 将被放在该字节的高位,信号的低位(S_lsb) 将被放在该字节 的低位。这样,信号的起始位 3 就是该字节的低位。下图分别以 4 位和 8 位数据长度的两种信号为例进 行了说明,并给出了某一车型的通信矩阵 CANoe 中的CAN 数据库实现的图片说明。 4位数据长度的信号 byte1 byte1 bit15 bit8 举例 bit15 bit8 S_msb S_lsb 0 1 0 1

文档评论(0)

pfenejiarz + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档