canFDMessage
根据用户指定的结构体构建 CAN FD 报文
说明
基于原始报文信息创建 CAN FD 报文对象。message
= canFDMessage(id
,extended
,datalength
)
使用指定数据库中的报文定义创建报文。由于 message
= canFDMessage(candb
,messagename
)ProtocolMode
是在报文数据库中定义的,因此在使用数据库时,不能将其指定为 canFDMessage
的参量。
示例
使用数据库定义创建 CAN FD 报文
使用 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: []
创建 CAN FD 报文
使用标准 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
数值
报文的 ID,指定为数值。如果此 ID 使用扩展格式,请将 extended
参量设置为 true
。
示例: 2500
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
extended
— 指定报文 ID 是否为扩展类型
true
| false
指定报文 ID 是标准类型还是扩展类型,指定为 true
或 false
。逻辑值 true
表示 ID 是扩展类型(29 位),false
表示是标准类型(11 位)。
示例: true
数据类型: logical
datalength
— 报文数据的长度
0 到 64 的整数值
报文数据的长度,指定为 0
到 64
(包含端值)的整数值。
示例: 64
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
candb
— CAN 数据库
CAN 数据库对象
CAN 数据库,指定为数据库对象。数据库包含报文定义。
示例: candb = canDatabase('CANDatabase.dbc')
messagename
— 报文的名称
字符向量 | 字符串
数据库中报文定义的名称,指定为字符向量或字符串。
示例: 'VehicleDataMulti'
数据类型: char
| string
输出参量
message
— CAN FD 报文
CAN 报文对象
CAN FD 报文,以 CAN 报文对象形式返回,具有以下属性:
属性 | 用途 |
---|---|
BRS | CAN FD 比特率开关,值为 true 或 false |
Data | CAN 报文或 J1939 参数组的数据 |
Database | CAN 数据库信息 |
DLC | 数据长度代码值 |
Error | CAN 报文错误帧,值为 true 或 false |
ESI | CAN FD 错误状态指示符,值为 true 或 false |
Extended | 扩展 CAN 标识符类型的指示符,值为 true 或 false |
ID | CAN 报文的标识符 |
Length | 报文长度(以字节为单位) |
Name | CAN 报文名称 |
ProtocolMode | 协议模式,定义为 CAN 或 CAN FD |
Remote | 指定 CAN 报文是否为远程帧 |
Signals | CAN 报文或 J1939 参数组中定义的物理信号 |
Timestamp | 收到报文的时间戳 |
UserData | 自定义数据 |
版本历史记录
在 R2018b 中推出
另请参阅
函数
attachDatabase
|canDatabase
|canFDChannel
|extractAll
|extractRecent
|extractTime
|pack
|unpack
|transmit
|transmitPeriodic
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)