首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AUTOSAR可以堆栈实现提示

AUTOSAR可以堆栈实现提示
EN

Stack Overflow用户
提问于 2020-04-13 14:27:06
回答 1查看 1.2K关注 0票数 0

我的任务是使用AUTOSAR的最新版本(R19-11)为CAN模块创建一个软件栈。我不会使用任何配置工具。根据我在AUTOSAR 网站上所读到的内容,这些模块是我必须实现的: CAN驱动程序、接口、状态管理器、PDU路由器和AUTOSAR COM。因为我不会使用数据超过8字节的帧,所以我不需要CAN传输协议模块。

当向堆栈下发送PDU时,一些模块向这些接收到的PDU(在本地称为SDU)中添加元数据,然后将它们发送到下一层。我已经读过,我们必须为这些PDU分配唯一的I。此外,我们必须有一个路由表(在PDU路由器内),它将用于根据每个PDU的ID来确定其目的地。

我的问题是:

  • ID是如何分配的?
  • 身份证是什么样子的?
  • 对于给定的CAN帧,是否必须根据PDU在堆栈中的当前位置分配不同的ID?(COM,状态管理器,接口或驱动程序)
  • 知道用户(应用程序层)可以定义任意数量的can帧,PDU路由器如何事先知道某个PDU的ID以及它的目的地是什么?
  • 从应用层开始,以CAN驱动模块结尾的消息传输(或接收)是什么样子的?
  • 接收PDU的模块将添加哪些元数据(或在AUTOSAR中称为PCI协议控制信息)?例如:应用程序发送数据0xAA。COM接收此PDU并添加特定的PCI,然后将其发送到PDU路由器等。SDU + PCI = PDU在每个阶段会是什么样子?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-17 02:43:00

实际上,AUTOSAR中的配置工具的优点是,您不必一直手工操作代码及其配置。

那么,不实现CanTp也意味着,您没有客户诊断(UDS)吗?顺便说一下,CAN有高达64个字节的帧。

AUTOSAR_SWS_CommunicationStackTypes Ch中定义了PduIdType。8.1.1.SWS_COMTYPE_00005, SWS_COMTYPE_00006, SWS_COMTYPE_00007, SWS_COMTYPE_00014

简而言之,它们是无符号整数,基于零并且是连续的,以便用作模块配置中的配置索引。它们是为每个BSW模块创建的,因此您有一组CanIf-PduIds、PduIds、IpduM、Com-PduIds、SecOC,它们也可以在Rx和Tx之间拆分(所以一组RxPduIds从0开始,而TxPduIds集也从0开始)。因此,一个CanFrames PDU可以在CanIf、PduR、Com等中具有不同的PDU in,并且多路复用帧被分成不同的PDU,每个多路复用器具有不同的PduIds。

关于它的另一章是AUTOSAR_TPS_EcuConfiguration Ch。3.4com-堆栈配置

它包含句柄It的概念,它们的定义,分配,甚至命名约定和一些用例.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61190007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档