


免费预览已结束,剩余5页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.使用 canoe进行 can总线的设计信号定义与分配dbc文件制作我们在进行 can总线的通讯设计过程中,对于通讯矩阵的建立,我们常常会选择一种编码方式,最常见的编码格式是intel格式和 motorola格式。但是往往人们都是以一种习惯去选择, 究竟两种格式具体的区别在哪里呢?我们需要明白两种格式对信号是如何排布的,又是按照什么顺序进行正确解析的。本篇文章就是作者根据在整理通讯矩阵和dbc 文件中遇到的一些问题, 提出的自己的一些体会和见解,希望大家通过此篇文章对两种格式有更加深刻的理解。我们在设计初期, 都会首先选择一种编码格式, 这种选择大多都是根据设计者自己的习惯,具体intel格式和 motorola格式哪个更有优势的问题,在这里没有区别。但是就使用者而言, 需要对接收到数据帧进行正确的解析,否则就无法得到想要的信号。下面我们就来说一下两种格式的区别。首先我们需要明确一点,无论是intel格式还是 motorola格式,在每个字节中,数据传输顺序都是从高位(msb)传向低位( lsb )。如下图所示。;.bit(8* x+7)bytexbit(8* x)msblsb注: x=0,1,2,37图 1一般主机厂设计人员在设计初期都会定义好字节的发送顺序,定义 byte0 为lsb, byte7 为 msb。第一种情况:先发送 byte0 ,然后 byte1 到 byte7 ;第二种情况:先发送 byte7 ,然后 byte6 到 byte0 。根据我了解到的大部分主机厂都会采取第一种发送方法,很少会采取后者。我们在用canoe中的 candb+编+库时,肯定会用到如下图所示的编辑界面。辑数据图 2结合工作中的出现的问题,有的网络设计者会在排布信号的时候出现误区。上图中用的是比较常规的排布方式,即位在字节中的索引是从右至左,还有一种是颠倒过来的,即从左至右。如下图所示。图 3我们现在以第一种矩阵模式进行说明。在这种情况下, 如果主机厂在初期定义先发送 lsb,再发送的 msb的形式,那么数据信号可以按照从上到下,从左到右的顺序发送,非常方便,接收器解析起来也比较容易。如果主机厂定义先发送 msb再发送 lsb的形式,那样数据传输比较复杂, 所以一般都不建议用这种方案。至于设计者常出现的错误我们在下文中会重点说明,下面我们先了解一下intel格式和 motorola格式在 candb+中+ 的区别。一、motorola编码格式:如果我们选择使用motorola编码格式,那需要知道它在candb+中+的 3 种信号排布方式。 这三种排布的主要区别在于它们的起始位不同。 我们假设一个信号的位长为 12,那么它就要跨字节排布。在 motorola 格式中的第一种排布形式为motorola forward lsb ,即从小端开始,它的起始位为 lsb ( 16);第二种排布形式为 motorola forward msb ,即从大端开始,它的起始位为 msb( 11);第三种排布形式为 motorola backward,它的起始位为第 8 位,这种形式基本不采用, 因为排布规律相对于前两种比较复杂。如下图所示;图 4针对上述 motorola 格式第一种排布形式,信号的起始位为高字节的低位。在candb+中+ 的具体体现如图所示。在 candb+中+图 5,无法区别这三种排布形式,它的起始位也是自动定义的,所以我们在设计通讯矩阵时,一般都会采用第一种,即motorola forward lsb。只是有的工程师根据自己的个人习惯,去改变起始位,但我们需要明确一点就是, 在 canoe软件中,一种格式的信号排布是没有区别的。二、intel编码格式如果我们选择使用intel编码格式,它在candb+中+我们假设一个信号位长为12,它也是要跨字节排布。也有两种信号排布方式。第一种排布形式为intel standard,即标准形式,它的起始位为lsb (12)。信号的起始位为低字节的低位。如下图所示:图 6图 7第二种排布形式为intel sequential,即顺序排布形式或者叫颠倒排布。这种形式不太常用,但我们也需要了解,它的起始位为lsb ( 11)。如下图所示:图 8以上文字介绍了当信号的位长超过一个字节的情况下,信号分别以motorola编码格式和 intel编码格式排布时的区别。我们现在假设一个信号的位长为4,观察在 candb+中+ 信号的排布有什么区别。motorola编码格式下的信号排布: (绿色信号)图 9intel编码格式下的信号排布: (绿色信号)图 10由图可知, 两种格式的起始位不同, 但是他们的排布方式相同,都是信号的高位放在该字节的高位( msb),信号的低位放在该字节的低位(lsb )。所以,当一个信号的位长小于8 时,那么两种编码格式没有区别。如果信号的位长大于8, 那么两种编码格式将会产生很大差别。这是我们在网络通讯设计初期必须要掌握 的。下面我们说一下一些工程师在做通讯矩阵的设计时,常会出现的几个问题:1. 在编写通讯矩阵时, 在起始位的编写中, 常会将 intel格式和 motorola格式弄混。例如:如下图所示的通讯矩阵.如果一个信号的位长为4,那么若是 motorola编码格式,那它的起始位就是4; 而若是 intel编码格式,那它的起始位就是0。2. 在 candb+中+ 进行通讯矩阵的调整时,首先应明确信号选取的编码格式,然后进行拖曳,有的工程师常常在没有区分编码格式,凭借主观感觉对通讯矩阵进行调整,这往往会导致信号的传输错误。3. 在信号跨字节排布中,未明确msb和 lsb ,在拖曳过程中会出现错误。综上所述, motorola编码格式和intel编码格式主要区别还是在信号位长大于 8 或者信位长不超过8 但是跨字节的情况下,前者的规则:该信号的高位( s_msb)将被放在低字节( msb)的高位,信号的低位(s_lsb )将被放在高字节(lsb)的低位;后者的规则:该信号的高位(s_msb)将被放在高字节( msb)的高位,信号的低位( s_lsb )将被放在低字节( lsb)的低位。希望大家能从此篇文章中收获一些经验。文中术语解释及定义:21. 信号的高位,即最能表达信号特性的因子,比如:车速信号500km/h 按照给定的公式,转换成十六进制数为0x6a5,因为 6 代表的数量级最大(16 ),那么其中 6 就是其信号的高位。2. 信号的低位,即最不能表达信号特性的因子,比如:车速信号500km/h按照给定的公式, 转换成十六进制数为0x6a5,因为 5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安徽中考考试题目及答案
- 糖皮质激素雾化吸入疗法在儿科应用考核试题及答案
- 露天矿山三级安全教育试题(附答案)
- 解析卷-在职硕士综合训练试题
- 2025年教育信息化基础设施建设与教育资源优化配置报告
- 押题宝典期货从业资格之《期货法律法规》考试题库含答案详解(综合题)
- 2025至2030年中国扫地机器人电商行业市场评估分析及投资发展盈利预测报告
- 2025至2030年中国金枪鱼行业市场运营现状及投资规划研究建议报告
- 股权转让合同示范
- 教育普及合作协议
- (2025年标准)动火安全协议书
- 2026届广州市高三年级阶段训练(8月市调研摸底) 数学试卷(含答案解析)
- 动物防疫检疫试题(附答案)
- 沙石码头经营方案(3篇)
- 2025年粉笔辅警考试题库
- 实验学校物业管理服务项目方案投标文件(技术方案)
- 2025个人房屋租赁合同范本下载
- 水声传感器技术研究与应用
- 督脉刮痧配合刺血治疗急性乳腺炎
- 能源环保管理办法
- 2025年初级(五级)健康照护师(五级)《理论知识》试卷真题(后附答案和解析)
评论
0/150
提交评论