AUTOSAR实战教程 - 通信协议栈CAN_CANIF_PDUR_CANTP_COM_XCP_ECUC配置一网打尽

这篇具有很好参考价值的文章主要介绍了AUTOSAR实战教程 - 通信协议栈CAN_CANIF_PDUR_CANTP_COM_XCP_ECUC配置一网打尽。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

通讯协议栈几乎是CP AUTOSAR中最庞杂的一块。由于其涉及的模块比较多(仅实现CAN信号的收发就需要ECUC/CAN/CANIF/CANTP/PDUR/COM/XCP这么多模块的协作!),且名词概念众多,入门很难。网络上关于各个模块的详细介绍浩如烟海,其深度也让人叹为观止。但没有一篇文章把这些模块串起来!

这就导致对于初学者来说,往往耐心的把各个模块的详细介绍都看完,甚至把AUTOSAR标准文档读完,依然不能建立一个全局的思路。导致在配置通讯协议栈时候,导入DBC之后,一看那么多错误,无从下手或者解决了CANIF的错误,PDUR又出现了新的错误提示,解决了PDUR错误,ECUC又报错...按下葫芦浮起瓢(就像当下的防疫形势),这种窘境,我相信绝对是每个AUTOSAR初学者都遇到过的。

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

本文试图从一个全局的高度,自顶向下逐步细化开来。让你在建立全局观之后熟悉通讯协议栈各模块之间的关联然后高屋建瓴学会配置每一项!也希望在此抛砖引玉,彼此交流心得,共同进步。


目录

DBC属性与信号流

DBC属性决定报文类型

报文类型决定信号流路径

配置实践

搞定信号路径

ECUC模块

CAN模块

CANIF模块

 XCP模块

PDUR模块

COM模块

CANTP模块

搞定Hoh和MailBox

CAN模块中MailBox配置

CANIF模块中的Hoh(Hth和Hrh)


DBC属性与信号流

DBC属性决定报文类型

不同的DBC属性决定不同功能的报文, 一般实际项目中涉及的报文为4类:应用报文,诊断报文,网络管理报文,XCP报文。不同作用的报文其在协议栈中的信号流路径是不同的

参考Vector给出的《TechnicalReference_DbcRules_Vector》文档,在DBC文件中对关键属性Attributes的规定如下。

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

  • 应用报文:GenMsgILSupport:Yes
  • 网络管理报文:NmAsrMessage:Yes
  • XCP报文
  1. 根据《TechnicalReference_DbcRules_Vector》规定只要Message中含有大写XCP字样,即可在导入DBC后被Vector的工具自动识别为XCP报文。其他属性同“应用报文:GenMsgILSupport:Yes”
  2. 如果不用1的方式,也可以在CANIF模块里手动设置其上层模块Upper Layer(PduUserTxConfirmationUL)为XCP模块。其他属性同“应用报文:GenMsgILSupport:Yes”
  • 诊断报文
  1. 功能寻址:DiagState:Yes
  2. 物理寻址请求:DiagRequest:Yes
  3. 物理寻址响应:DiagResponse:Yes(物理寻址和功能寻址的区别请自行摆渡)

报文类型决定信号流路径

以TX报文为例:

普通报文路径:CAN->CANIF->PDUR->COM

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

诊断报文路径:CAN->CANIF->CANTP->PDUR->DCM

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

XCP报文路径:CAN->CANIF->XCP

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

网络管理报文路径:CAN->CANIF->CANNM

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

之所以把PDUR标红,是因为在下面的配置中方便我们识别PDUR的相关模块,这个要在PduRBswModules配置项中选择的!从这里也可以直接确定,PDUR的PduRBswModules上下文最多只有CANIF,COM,CANTP,DCM。


配置实践

DBC如下: 

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

我习惯将DBC中所有报文简单罗列到一个表中,按报文功能进行分类。这样结合上面我们的总结,就对于每个报文的路径有一个全局的了解。如果项目比较大,报文较多的情况,建议将普通报文之外的报文(NM报文,XCP报文,诊断报文)列出来,因为他们特殊啊!

通过观察DBC属性,制作报文分类表格:

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

 好,接下来进入我们的实战环节。

导入DBC,Update工程, 现在看工具自动配置中遇到的错误还是比较多的, 所以我们接下来的任务就是将这些模块的错误全部Fixed掉!

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

搞定信号路径


ECUC模块

EcucPduCollection这个Container的作用.数据在CAN通信协议栈各层间都是以PDU形式传输的,为了将各层PDU关联起来,则需要定义全局 PDU(Global PDU)。由于全局PDU不属于任何一个标准BSW模块,所 以AUTOSAR提出了一个EcuC模块来收集一些配置信息。在EcuC模块中定义全局PDU时不需要关心其数据类型,只需要定义PDU长度即可。

所以我们先对照DBC对照检查以下,ECUC/EcucPduCollection对各个PDU(PDU是啥?你可以简单理解成一个PDU就对应总线上的一个Message再附上一个地址信息的这么一个玩意--虽然这种说法不准确,但是它能有助于你去理解)的长度定义是否正确,至于长度之外的错误,先忽略之,后面其他模块配好之后,ECUC中相关错误一般就自动消失了.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机


CAN模块

CAN模块是直接面向硬件的, 所以CAN模块主要的配置分2部分:

  • 对CAN控制器的配置,包括,参考时钟, 波特率,采样点,帧类型,处理方式Polling/Interrupt;
  • 和CANIF的联系,即对Hoh和MailBox和Filter的配置)

CAN控制器的配置

本阶段我们只关注CAN控制器的配置! (在后面的步骤中再重点配置Hoh和MailBox和Filte,所以本阶段这三方面的错误先忽略!)

CAN控制器的配置还是比较容易的,如果有什么错误一般根据工具里面给出的提示即可轻易解决。这里科普2个基本知识点, 也是CAN模块一个稍微难懂的概念 - CAN的时钟, CAN的重同步和采样点.

CAN时钟

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

Can/CanConfigSet/CanControllers/Clock Frequecy这个值是从芯片的时钟树分频而来, 在MCAL的MCU模块中指定.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

 /Can/CanGeneral/Clock Divider是对上面Can/CanConfigSet/CanControllers/Clock Frequecy的分频, 他们相除的结果在CanControllerBaudrateConfig/CanBaudrateClock中, 比如

Clock Frequecy = 40M, Clock Divider = 1, 则CanBaudrateClock= 40M = 40000KHz.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

重同步和采样点

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

 参考文献《CAN总线学习笔记(5)- CAN通信的位定时与同步》这篇博文有非常详尽的介绍( 如果是Tir1,一般OEM会给出具体的采样点参数值, Autosar工具也会给出参考值)我在这就蜻蜓点水说以下计算原则。

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

Sync Seg(同步段):长度固定为1Tq, 所以配置工具中没有它的配置.

在Vector的配置工具中, 定义Prop+Seg1 = TSeg1, Seg2 = TSeg2,一开始感觉后别扭,后来发现这样也好,计算采样点位置更加方便了,比如采样点为80%:

(同步段(1) +  TSeg1)/(同步段+Tseg1+Tseg2) = 80%,

如果一个BitTime中Tq总和固定了,比如为16个Tq,

同步段(1) + TSeg1 + TSeg2 = 16

根据这个二元一次方程组则很容易算出各段的值.

Sync Seg固定为1, TSeg1 = 11, Seg2 = 4.

SyncJumpWidth:它的值是用于调整相位缓冲段1和相位缓冲段2的值, 用于CAN的同步,比如相位缓冲段1向前增长了3个,则相位缓冲段2向后减少3个Tq.---也就是一次同步中相位缓冲段改变的长度.所以Sync Jump Width的设置有2个原则:

Sync Jump Width <= 3,

Sync Jump Width <= Min(Seg1, Seg2), 因为一次同步调整的幅度不能超出相位缓冲段1和2中任意一个!

敲黑板了,下面画重点:

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

好了,截止目前,我们把CAN模块的1/2错误都消掉了, 剩下CanHardwareObjects这个容器里面的错误,我们先放下。继续下一步。


CANIF模块

CANIF的配置主要分2部分

  • 向上:指定各个PDU的上层模块
  • 向下:对Hoh的配置(配置PDU的HOh,对应MailBox和Bufffer,CAN帧的类型)

这一步我们只关注它"向上:指定各个PDU的上层模块"的功能.

检查各个PDU的上层模块

主要配置/CanIf/CanIfInitCfg/CanIfRxPduCfgs和/CanIf/CanIfInitCfg/CanIfTxPduCfgs这两个小container

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

结合我们上面讲的知识, 检查Davinci Cfg工具/CANIF/Pdu User Tx/Rx Confirmation UL这个配置项对PDU的上层配置是否正确, 即:

  • 诊断报文: CANIF之上是CANTP,(CAN->CANIF->CANTP->PDUR->DCM)
  • NM报文:CANIF之上是CANNM,(CAN->CANIF->CANNM)
  • XCP报文:CANIF之上是XCP,(CAN->CANIF->XCP)
  • 普通报文:CANIF之上是PDUR, (CAN->CANIF->PDUR->COM)

如果出现如下错误:

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

如果不需要Confirmation功能,则可以将Confirmation UL配置项中设为NONE -- 只要到对应模块中检查该PDU确实存在。比如:普通应用报文PDUa,它的上层应该是PDUR, 我们去PDUR中检查,如果它确实被映射到PDUR中了, 则可以在CANIF中将它的Confirmation UL设为NONE.

该容器(/CanIf/CanIfInitCfg/CanIfRxPduCfgs和/CanIf/CanIfInitCfg/CanIfTxPduCfgs)下其他的一些小错误根据工具提示修改即可.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

剩下的错误在后面的操作中解决。


 XCP模块

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

主要是配置XCP中用于接收和发送的PDU,如果XcpPdus这一块有错误,则检查你在DBC中和CANIF中指定的XCP收发报文是否已经在XCP中Mapping上了,其他小错误根据提示修改即可。


PDUR模块

PDUR主要有2个作用:对信号的路由,对不同总线信号的网关。

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

PduRBswModules指定PDUR的上下文模块

根据我们上面的描述,PDUR向下向上的模块分别是:

普通报文: CANIF->PUDR->COM

诊断报文:CANTP->PDUR>DCM

XCP报文和NM报文绕过PDUR。

所以如果你的网咯中没有诊断报文,则PDURBswModules中,PDUR的上下层是CANIF和COM

如果有诊断报文,则PDURBswModules中,PDUR的上下层是CANIF,COM,DCM,CANTP.

PduRRoutingTables

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

 一般工具自动生成的配置,出现错误就在这三个地方。

PduR Transmission Confirmation这个错误主要是由于PDUR的上下层Confirmation没有一致,比如一个TX信号,CANIF中将Confirmation UL指定为PDUR,而在PDUR中将Transmission Confirmation设为False,则自然会报错;又或者在CANIF中将Confirmation UL设为NONE, 而在PDUR中将Transmission Confirmation设为True,则自然会报错。

其他小错误根据提示修改即可。

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机


COM模块

COM模块非常简单,其作用就是将总线上的Msg进行卸货或者装车,装车:将信号组装到Msg里面;卸货:将Msg拆分成一个个的信号,给应用层或者CDD使用.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机


CANTP模块

因为诊断协议中有多帧连续帧的概念,有些报文一帧是发不完的, 所以CANTp模块的主要作用是对CAN I-PDU进行分段和重新组装,使得I-PDU的长度不大于8个字节,对CAN FD而言,CAN I-PDU不大于64个字节。

这里面的难点应该就是一些时间参数的设定, 这个要结合UDS的14229/15765/11898和主机厂释放的网络规范进行设定.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机


搞定Hoh和MailBox

(有朋友反应这一块有很多错误,好吧,我们先讲这一块)

CAN模块下面的CanHardwareObjects其实就是MailBox,是硬件上的存在。CANIF下面的Hoh包含Hrh(接收)和Hth(发送)是报文收发的句柄,是一个软件概念。

结合我们上面的工作, 我接下来主要是对

  • CAN部分MailBox和Filter的配置
  • CANIF部分Hoh的配置

CAN模块中MailBox配置

CanHardwareObjects

先检查CanHardwareObjects这个容器下面, 检查HardwareObject的数量.注意此时HardwareObject还没有和CANIF中的PDU建立任何关系!--这模块的HardwareObject我习惯叫它MailBox!

根据DBC中Message个数, 设置CAN模块下面每个CanHardwareObjects(就是MailBox)的CanHandleType,设为Full CAN还是Basic CAN.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

 Full CAN和Basic CAN

先说结论:

  • Full CAN一个Hoh对应一个MailBox而Basic CAN一个MailBox可以处理多个PDU.
  • Full CAN是硬件滤波而Basic CAN软件滤波,因此配成Basic的要设置滤波.
  • Full CAN一个Buffer对应一个ID报文,无缓存功能而Basic CAN以FIFO的方式接受特定的多个报文,有缓存功能.

因此:

  • 对于诊断报文和NM报文的接收报文必须配置成Basic Can,
  • 其他报文最好配成高效的Full CAN.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

关于Full CAN和Basic CAN, 这篇文章讲的很详细《【AUTOSAR-CAN】CAN的 “BasicCAN架构” 和 “FullCAN架构”》, 这里我说一下我的理解, 不一定很准确,但有助于理解.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

如果你在CanHardwareObjects这个容器下面配置的BasicCAN个数>1(Tx MailBox>1个或者Rx的MailBox>1个)这个时候你应该会遇到一个报错:

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

这是翻译成人话就是你没有使能Multi BasicCAN或者你么有更高级的授权, 而这个时候你进入CanGeneral这个容器下面却发现不允许使能Multi BasicCAN!!autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

是不是很崩溃?---没关系, 按下面这样做:

将所有Tx的BasicCAN删除到只剩一个, Rx的BasicCAN删除只剩一个,然后命名(随个人喜好)TxBasicCanMailBoxCommon和RxBasicCanMailBoxCommon.然后设置其Size大小为之前所有BasicCAN的MailBox总和!

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

最后别忘了给接收的BasicCAN设置滤波,并绑定:

在CanFilterMasks下面设置滤波, 在BasicCAN的MailBox下面设置映射:

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

再科普以下滤波的设置:

滤波参数

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

 白名单模式计算原则是: received ID & Mask == Code & Mask.

有一个简便的方法就是,Code Value里面填写ID大的那个ID值, Mask Value里面填写ID小的那个ID值两个数按位与后的值.

例如:我只想接受0x7DF和0x7D4这两个报文,将其他报文过滤掉. 根据计算公式,对于0x7DF报文, 

0x7DF & 0x7D4 == 0x7DF & 0x7D4

对于0x7D4报文, 0x7D4 & 0x7D4 == 0x7DF & 0x7D4

好了,纵然现在千般错, 先放过.去CANIF模块!


CANIF模块中的PDU(Rx和Tx PDU)

进入/CanIf/CanIfInitCfg/CanIfInitHohCfgs/CanIfInitHohCfg/CanIfHrhCfgs这个下面,

将诊断Rx PDU和网络管理的Rx PDU(他们是Basic Can)都映射到CAN模块下面的RxBasicCanMailBoxCommon上!并勾选CanIfHrhSoftwareFilter.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

将XCP报文和普通应用报文与CAN模块下面的MailBox进行一对一映射!--因为他们是FULL CAN!

并取消CanIfHrhSoftwareFilter.

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

进入/CanIf/CanIfInitCfg/CanIfInitHohCfgs/CanIfInitHohCfg/CanIfHthCfgs这个下面,安装上面的步骤操作即可!

接下来为Tx的PDU配置Buffer即可!

其他一些错误根据工具提示修复即可.这一块相互绑定关系我做个图谱:

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机

截止目前CAN和CANIF的错误就全部消除了

autosar实战教程-通信协议栈can_canif_pdur_cantp_com_xcp_ecuc配置一网打尽,实战AUTOSAR,mcu,arm,单片机


参考文献


CAN总线学习笔记(5)- CAN通信的位定时与同步
【AUTOSAR-CAN】CAN的 “BasicCAN架构” 和 “FullCAN架构”文章来源地址https://www.toymoban.com/news/detail-777595.html

到了这里,关于AUTOSAR实战教程 - 通信协议栈CAN_CANIF_PDUR_CANTP_COM_XCP_ECUC配置一网打尽的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AUTOSAR通信篇 - CAN网络通信(二:CanIf)

    目录 初始化 数据发送 请求发送 发送数据流 发送缓存 发送确认 数据接收 数据接收提醒 读取接收数据 CAN控制器模式 控制器模式转换 唤醒 PDU通道模式控制 PDU通道组 PDU通道模式 总结 在上一篇,我们介绍了CAN模块,接下来我们介绍在CAN模块之上的模块Can Interface(CanIf)模块

    2024年02月08日
    浏览(86)
  • 【AUTOSAR】【Lin通信】LinTrcv

    目录 一、概述 二、功能说明 2.1 LIN收发器驱动程序操作模式 2.2 LIN收发器硬件操作模式

    2023年04月08日
    浏览(43)
  • 【AUTOSAR】【Can通信】CanNM

    目录 一、概述 二、说明 三、功能说明 3.1 协调算法 3.2 操作模式 3.2.1 网络模式 3.2.2 准备总线睡眠模式 3.2.3 总线睡眠模式 3.3 网络状态 3.4 初始化 3.5 参数 3.6 网络管理PDU结构 3.7 通信调度 3.7.1 发送 3.7.2 接收 3.8 其他功能 3.8.1 远程睡眠指示器的检测 3.8.2 用户数据 3.8.3 被动模式

    2024年02月05日
    浏览(48)
  • socket概述 python中如何使用TCP/UDP协议实现通信-教程

    很多编程语言中,都 使用scoket套接字实现网络通信。 Socket是对TCP/IP协议的封装,Socket本身就是一个调用接口(API),方便程序员用Socket使用TCP/IP协议簇,实现网络通信。 不同编程语言,shiyongSocket通信的语法有所区别,但基本原理类型相似。 它的两种方式,分别是TCP和UDP协

    2024年02月13日
    浏览(42)
  • AUTOSAR CAN协议栈架构总览介绍

    如下图是Classic AUTOSAR层级架构图,每个层主要功能如下 微控制器抽象层:使上层软件和微处理器型号无关,包含MCU中内部外设的驱动以及MCU内存映射的外部设备的驱动 ECU抽象层:使上层软件和ECU硬件设计无关,包含ECU板上外部设备的驱动以及内部设备与外部设备的接口(I

    2024年02月06日
    浏览(44)
  • AUTOSAR从入门到精通-网络通信(UDPNm)(三)

    目录 前言 原理 网络状态 初始化 执行 处理器架构 时间参数

    2024年02月21日
    浏览(44)
  • AUTOSAR从入门到精通-网络通信(UDPNm)(一)

    目录  前言 几个相关概念 原理 什么是UdpNm 约束和假设  限制

    2024年02月03日
    浏览(46)
  • 鉴源实验室 | AUTOSAR SecOC:保障汽车通信的安全

    作者 |  沈平 上海控安可信软件创新研究院汽车网络安全组 来源 |  鉴源实验室 社群 |  添加微信号“ TICPShanghai ”加入“上海控安51fusa安全社区” 在现代汽车行业中,随着电子控制单元(ECUs)的普及以及车与车之间通信的不断增加,确保通信安全变得尤为关键。AUTOSAR (Au

    2024年02月08日
    浏览(62)
  • 【AUTOSAR】软件架构中的接口设计与跨核通信解析

    目录 前言 一、什么是接口? 二、什么是CS接口?什么是SR接口?区别是什么?

    2024年02月03日
    浏览(45)
  • 【AUTOSAR】UDS协议的代码分析与解读(五)----ECU诊断服务

    8    诊断服务 8.1 总览 此章节定义了本规范中可使用的诊断服务及其执行规则 。 下表列出 了 h 事业部定义的所有 UDS 诊断服务。 ECU 最终实现与下述定义不符之处必须得到 h 事业部   的认可。服务实现内容需在零部件诊 断规范中详细说明。 表   9 诊断服务支持列表 诊 断服

    2024年02月09日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包