Main Content

canFDMessage

根据用户指定的结构体构建 CAN FD 报文

说明

message = canFDMessage(id,extended,datalength) 基于原始报文信息创建 CAN FD 报文对象。

message = canFDMessage(candb,messagename) 使用指定数据库中的报文定义创建报文。由于 ProtocolMode 是在报文数据库中定义的,因此在使用数据库时,不能将其指定为 canFDMessage 的参量。

示例

示例

全部折叠

使用 CAN 数据库的定义创建 CAN FD 报文。

candb = canDatabase("C:\myVNTData\CANFDExample.dbc");
message3 = canFDMessage(candb,"CANFDMessage")
message3 = 

  Message with properties:

   Message Identification
    ProtocolMode: 'CAN FD'
              ID: 1
        Extended: 0
            Name: 'CANFDMessage'

   Data Details
       Timestamp: 0
            Data: [1x48 uint8]
         Signals: []
          Length: 48
             DLC: 14

   Protocol Flags
             BRS: 1
             ESI: 0
           Error: 0

   Other Information
        Database: [1×1 can.Database]
        UserData: []

使用标准 ID 格式创建 CAN FD 报文。

message2 = canFDMessage(1000,false,64)
message2 = 

  Message with properties:

   Message Identification
    ProtocolMode: 'CAN FD'
              ID: 1000
        Extended: 0
            Name: ''

   Data Details
       Timestamp: 0
            Data: [1×64 uint8]
         Signals: []
          Length: 64
             DLC: 15

   Protocol Flags
             BRS: 0
             ESI: 0
           Error: 0

   Other Information
        Database: []
        UserData: []

输入参数

全部折叠

报文的 ID,指定为数值。如果此 ID 使用扩展格式,请将 extended 参量设置为 true

示例: 2500

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

指定报文 ID 是标准类型还是扩展类型,指定为 truefalse。逻辑值 true 表示 ID 是扩展类型(29 位),false 表示是标准类型(11 位)。

示例: true

数据类型: logical

报文数据的长度,指定为 064(包含端值)的整数值。

示例: 64

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

CAN 数据库,指定为数据库对象。数据库包含报文定义。

示例: candb = canDatabase('CANDatabase.dbc')

数据库中报文定义的名称,指定为字符向量或字符串。

示例: 'VehicleDataMulti'

数据类型: char | string

输出参量

全部折叠

CAN FD 报文,以 CAN 报文对象形式返回,具有以下属性:

属性用途
BRSCAN FD 比特率开关,值为 true 或 false
Data

CAN 报文或 J1939 参数组的数据

Database

CAN 数据库信息

DLC数据长度代码值
Error

CAN 报文错误帧,值为 true 或 false

ESICAN FD 错误状态指示符,值为 true 或 false
Extended

扩展 CAN 标识符类型的指示符,值为 true 或 false

ID

CAN 报文的标识符

Length报文长度(以字节为单位)
Name

CAN 报文名称

ProtocolMode协议模式,定义为 CAN 或 CAN FD
Remote

指定 CAN 报文是否为远程帧

Signals

CAN 报文或 J1939 参数组中定义的物理信号

Timestamp

收到报文的时间戳

UserData

自定义数据

版本历史记录

在 R2018b 中推出