概述
CANoe,全称叫CAN Open Environment,是德国Vector公司为汽车总线的开发而设计的一款总线开发环境,集合了网络监控、数据获取/记录、节点仿真、诊断、自动测试等功能。 打开CANoe软件,在工具栏的”File”中点击”New”,双击选择创建的模板 ,再保存创建的cfg工程文件。如下: 每个CAN网络都有所属的Channel,称之为Application Channel,如果在Real BUS的环境下要映射到相应的硬件接口单元及相应的Transceiver。 下图为网络上的各个网络(Comfort和Powertrain),及其网络中的Can控制器节点和DBC文件。 通过Hardware-Channel Mapping实现逻辑上通道和物理通道的映射,当你发现trace上没有报文时,第一检查一下你通过DB9的接插件是否插在正确的硬件通道上了。 CAN通信中物理层中一帧由以下几个部分组成: Identifier type 指定 CAN 报文标识符是 Standard 还是 Extended 类型。默认值为 Standard。标准标识符是 11 位标识符,扩展标识符是 29 位标识符。 Remote frame 将 CAN 报文指定为远程帧。 Start bit 指定数据的开始位。开始位是从报文数据的开头计数的最低有效位。开始位必须是 0 到 63 之间的整数。信号的起始位,一般来讲,主机厂在定义整车CAN总线通信矩阵时,其每一个信号都从其最低位开始填写, Length (bits) 指定信号在报文中占用的位数。长度必须是 1 到 64 之间的整数。 Data type 指定信号如何解释分配的位中的数据。从下列各项中选择: signed(默认值) unsigned single double CAN 报文中的比特流有两方面要注意,第一是字节序,第二是bit numbering。 字节序也叫大小端,决定如何去解析一系列字节来组装成有意义的数据。 即小端支持从低字节向高字节去排布信号。 即大端支持高字节向低字节去排布信号。 注意:字节内的位的重要性(Significant)的顺序是一定的,不随两种格式的变化而变化。 bit numbering,即报文中支持两种方式的计数方式: 这种情况的报文一般是Byte0_bit7的位最先被发送,然后是bit6,,,最后是Byte7_bit56位被发送。这种方式在汽车工业中是最通用的方式,为各大主机厂采用,在Vector的DBC中也按照这种排布方式去布局信号的index。 -从左向右 这种情况的报文一般是Byte0_bit0的位最先被发送,然后是bit1,,,最后是Byte7_bit63位被发送。 相应地和上述两种bit numbering对应的就是两种message的Layout, 1)字节中的位序为从右到左 2)字节中的位序为从左到右 通常在DBC中选择Byte order时,可以选择以下任一选项: LE:其中字节顺序为 little-endian 格式 (Intel®)。在这种格式中,从开始位(最低有效位)到最高有效位(具有最高位索引)进行计数。例如,如果以 little-endian 格式打包数据的一个字节0x12(默认其他信号为0),并且开始位为 29,则数据位表类似于下图(从最低有效位到最高地址计数的 Little-Endian 字节顺序)所示。 则我们接收到的8字节的Can报文消息为:00 00 02 01 00 00 00 00,字节2和字节3的layou如下表所示: BE:其中字节顺序为 big-endian 格式 (Motorola®)。在这种格式中,从开始位(最低有效位)到最高有效位进行计数。例如,如果以 big-endian 格式打包数据的一个字节,并且开始位为 29,则数据位表类似于下图(从最低有效位到最低地址计数的 Big-Endian 字节顺序)所示。 则我们接收到的8字节的Can报文消息为:00 01 20 00 00 00 00 00,字节1和字节2的layou如下表所示: 总结: Intel格式编码:信号的低位(lsb)将被放在低字节(LSB)的低位。信号的起始位就是低字节的低位,从低字节向高字节去排布信号。 Motorola格式编码 :信号的低位(lsb)将被放在高字节(MSB)的低位。这样,信号的起始位就是高字节的低位,从高字节向低字节去排布信号。1、CANoe工程的新建
2、Channel Mapping
3、CAN DBC中报文及信号的属性
4、信号在报文中的Layout问题
Bytes 2 3 Hex 0x02 0x01 Bits 0000 0010 0000 0001 Bytes 1 2 Hex 0x01 0x20 Bits 0000 0001 0010 0000
最后
以上就是落后学姐为你收集整理的CANoe的经验总结及如何进行 CAN Signal layout1、CANoe工程的新建2、Channel Mapping3、CAN DBC中报文及信号的属性4、信号在报文中的Layout问题的全部内容,希望文章能够帮你解决CANoe的经验总结及如何进行 CAN Signal layout1、CANoe工程的新建2、Channel Mapping3、CAN DBC中报文及信号的属性4、信号在报文中的Layout问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复