【ARXML专题】-24-在PDU中定义Array数组类型的CAN Signal

本文详细讲解如何在CAN Matrix ARXML文件中创建Array数组类型的CAN Signal信号,包括发送Tx和接收Rx的信号定义,以及ARXML中相关的变化和配置要点。

点击返回「Autosar从入门到精通-实战篇」总目录

案例背景(共5页精讲):
在《【ARXML专题】-2-创建一个Classic CAN(经典CAN2.0)/CANFD的系统描述ARXML文件》博文中,介绍了如何创建booleanuint无符号sint有符号类型的CAN Signal信号。这一篇博文将告诉您创建Array数组类型的CAN Signal信号的方法。

目录

1 在CAN Matrix Arxml中创建Array数组类型的CAN Signal信号

1.1 发送Tx的数组类型CAN信号

1.2 接收Rx的数组类型CAN信号

2 Array数组类型的CAN Signal信号Arxml变化

3 结尾


<--返回「实战篇」博文-总目录-->

<--返回「Autosar从入门到精通-实战篇」专栏主页-->

1 在CAN Matrix Arxml中创建Array数组类型的CAN Signal信号

1.1 发送Tx的数组类型CAN信号

在Test_ID_211_Tx PDU中创建一个Tx_Array_8_Byte_Signal信号,见图1-1和图1-2。

在汽车通信系统中,I-SIGNAL和I-PDUAUTOSAR(AUTomotive Open System ARchitecture)框架中的关键概念,主要用于描述信号和数据在通信系统中的传输方式。 ### I-SIGNAL I-SIGNALAUTOSAR 中用于描述通信信号的抽象概念。它代表了一个特定的数据元素,如发动机温度、车速或刹车状态等。这些信号在车辆的不同 ECU(电子控制单元)之间传递,以实现协调工作。I-SIGNAL 通常包含以下属性: - 数据类型(如布尔型、整数、浮点数等) - 数据长度(以位为单位) - 传输速率(如周期性或事件触发) - 信号的初始值 - 信号的编码方式(例如,是否使用小端或大端格式)[^1] ### I-PDU I-PDU(Interaction Layer Protocol Data Unit)是 AUTOSAR 中用于描述数据传输的基本单元。它是一个容器,包含了多个 I-SIGNAL,并且是通信系统中实际传输的数据单元。I-PDU 可以分为两种类型: 1. **发送 I-PDU(Tx I-PDU)**:由一个或多个信号组成,用于从发送方 ECU 传输到接收方 ECU。 2. **接收 I-PDU(Rx I-PDU)**:用于接收方 ECU 解析接收到的数据包,并从中提取出具体的信号。 I-PDU 的设计允许将多个信号打包在一起进行传输,从而提高通信效率。它通常包含以下信息: - 数据长度(以字节为单位) - 数据的传输方向(发送或接收) - 数据的传输协议(如 CAN、LIN、FlexRay 等) - 数据的传输周期或触发条件[^1] ### I-SIGNAL 与 I-PDU 的关系 I-SIGNAL 和 I-PDU 之间的关系可以理解为“信号”和“数据包”的关系。I-SIGNAL 是数据的基本单位,而 I-PDU 是这些数据单位的容器。在实际通信中,多个 I-SIGNAL 会被打包到一个 I-PDU 中,然后通过通信总线(如 CAN、LIN 或 FlexRay)传输。接收方 ECU 接收到 I-PDU 后,会从中解析出所需的 I-SIGNAL,并根据这些信号执行相应的操作。 ### 示例:I-SIGNAL 和 I-PDU 的配置 在 AUTOSAR 工具链中,通常会使用 ARXML 文件来描述 I-SIGNAL 和 I-PDU 的配置信息。以下是一个简化的 ARXML 示例,展示了如何定义一个包含多个信号的 I-PDU: ```xml <AR-PACKAGE> <I-PDU name="VehicleSpeedPdu"> <LENGTH>8</LENGTH> <SIGNAL name="VehicleSpeed"> <DATA-TYPE>UINT16</DATA-TYPE> <BIT-POSITION>0</BIT-POSITION> <BYTE-ORDER>Intel</BYTE-ORDER> </SIGNAL> <SIGNAL name="EngineTemperature"> <DATA-TYPE>UINT8</DATA-TYPE> <BIT-POSITION>16</BIT-POSITION> <BYTE-ORDER>Intel</BYTE-ORDER> </SIGNAL> </I-PDU> </AR-PACKAGE> ``` 在这个示例中,`VehicleSpeedPdu` 是一个 I-PDU,包含了两个 I-SIGNAL:`VehicleSpeed` 和 `EngineTemperature`。每个信号都有自己的数据类型、位位置和字节顺序等属性。 ### 通信模块的作用 在汽车通信系统中,COM 模块(Communication Module)负责管理 I-SIGNAL 和 I-PDU 之间的交互。它的主要功能包括: - **信号装载与解析**:将信号装载到 I-PDU 中进行发送,或者从接收到的 I-PDU 中解析出信号。 - **信号路由**:将接收到的 I-PDU 中的信号打包到发送 I-PDU 中,以实现信号的路由功能。 - **通信控制**:控制 I-PDU 组的启动和停止,以及发送请求的应答等。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汽车电子助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值