can.Message 属性
can.Message
对象的属性
使用以下属性检查或配置 CAN 和 CAN FD 报文设置。使用 canMessage
创建 CAN 报文。
报文标识
此 属性 为只读。
ID
属性表示 CAN 报文的数字标识符。值范围:
0 到 2047 之间的一个正整数,用作标准标识符
0 到 536,870,911 之间的一个正整数,用作扩展标识符
您可以在构造报文时配置报文 ID。例如,要设置值为 300、数据长度为 8 个字节的标准标识符,请键入:
message = canMessage(300,false,8)
对于十六进制值,请使用 hex2dec
函数进行转换。
数据类型: double
此 属性 为只读。
Extended
属性是 CAN 报文的标识符类型。根据以下值,它可以是标准标识符或扩展标识符:
false
- 标识符类型是标准类型(11 位)。true
- 标识符类型是扩展类型(29 位)。
您可以在构造报文时配置报文扩展属性。例如,要将报文标识符类型设置为 ID 为 2350、数据长度为 8 个字节的扩展类型,请键入:
message = canMessage(2350,true,8)
数据类型: logical
此 属性 为只读。
Name
属性以字符向量值形式显示报文的名称。此值是从您在数据库中定义的报文的名称中采集的。如果您在定义原始报文,则不能编辑此属性。
数据类型: char
数据详细信息
Timestamp
属性显示在 CAN 通道上接收报文的时间。此时间基于接收通道的启动时间。
您可能希望在构造报文时设置该值。例如,要将报文的时间戳设置为 12,请键入:
message.Timestamp = 12
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fi
使用 Data
属性定义 CAN 报文中的原始数据。数据是 uint8 值的数组,基于您在报文中指定的数据长度。
例如,要创建一个 CAN 报文并定义其数据,请键入:
message = canMessage(2500,true,8) message.Data = [23 43 23 43 54 34 123 1]
如果您的报文定义使用的是 CAN 数据库,您可以直接在 Signals
属性结构体中指定值。
您还可以使用 pack
函数将数据加载到报文中。
数据类型: uint8
Signals
属性允许您查看和编辑为 CAN 报文定义的解码信号值。如果报文没有已定义的信号或者数据库未连接到报文,则此属性显示一个空结构体。此属性的输入值取决于信号类型。
创建一条 CAN 报文。
message = canMessage(canDb,'messageName');
显示报文信号。
message.Signals
VehicleSpeed: 0 EngineRPM: 250
更改一个信号的值。
message.Signals.EngineRPM = 300
数据类型: struct
CAN 报文的长度(以字节为单位),指定为 uint8 值。此值指示 Data
向量中的元素数。对于 CAN 报文,此值限制为 8 个字节;对于 CAN FD 报文,长度可以是 0-8、12、16、20、24、32、48 或 64 个字节。
数据类型: uint8
此 属性 为只读。
CAN FD 报文数据的长度代码,以 uint8 值形式返回。此属性的值与 Length
属性的值有关:对于最大 8 个字节的报文大小,这两个属性值是相同的;9(二进制 1001)到 15(二进制 1110)的 DLC
值则用于指定 12、16、20、24、32、48 和 64 个字节的数据长度。有关详细信息,请参阅 CAN FD - 基本工作原理。
数据类型: uint8
协议标志
BRS
属性用于指示已设置了 CAN FD 报文比特率开关。它决定报文数据相位的比特率与仲裁相位的比特率相比是更快 (true
) 还是与之相同 (false
)。有关详细信息,请参阅 CAN FD - 基本工作原理。
数据类型: logical
此 属性 为只读。
Error
属性指示 CAN 报文是否为错误帧。
数据类型: logical
使用 Remote
属性将 CAN 报文指定为远程帧。
false
(默认值)- 报文不是远程帧。true
- 报文是远程帧。
要更改 Remote
的默认值并使报文成为远程帧,请键入:
message.Remote = true
数据类型: logical
其他信息
Database
属性存储有关所连 CAN 数据库的信息。如果您的通道报文未连接到数据库,则属性值为空结构体 []
。您可以编辑 CAN 通道的 Database
属性,但不能编辑 CAN 报文的 Database
属性。
要查看 CAN 报文所连数据库的相关信息,请键入:
message.Database
要将 CAN 通道上的数据库信息设置为 C:\Database.dbc
,请键入:
channel.Database = canDatabase('C:\Database.dbc')
提示
包含非字母数字字符(如等号和 & 符号)的 CAN 数据库文件名与 Vehicle Network Toolbox™ 不兼容。您可以在数据库名称中使用句点。在使用任何 CAN 数据库文件之前,请使用非字母数字字符对其重命名。
数据类型: struct
使用 UserData
属性输入要存储在 CAN 报文或 J1939 参数组、通道或数据库对象中的自定义数据。保存指定了 UserData
的对象时,会自动保存自定义数据。加载指定了 UserData
的对象时,会自动加载自定义数据。
提示
使用 UserData
保存和加载对象时,为避免出现意外结果,请以简单数据类型和构造指定自定义数据。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| string
| struct
| table
| cell
| function_handle
| categorical
| datetime
| duration
| calendarDuration
| fi
复数支持: 是
版本历史记录
在 R2009a 中推出
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)