- 博客(176)
- 资源 (17)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 15765-3/14229-1-UDS刷写Bootloader笔记
本文笔记来自于ISO15765-3-2004中文版和1422-1-2013中文版,2020英文版, 感谢以上资源!笔记仅用于自己学习及大家参考~~目录9.7 上传/下载功能单元9.7.1 请求下载服务(RequestDownload)(0x34)9.7.2 请求上传服务(RequestUpload)(0x35)9.7.3 传输数据服务(TransferData)(0x36)9.7.4 请求传输退出服务(RequestTransferExit)(0x37)UDS刷写流程ECU启
2021-12-27 14:38:03
7208
11
原创 ETAS StackM配置及使用-stack监控
嵌入式C语言执行的软件中,stack溢出会导致程序执行异常,严重可能导致直接进硬件异常中断软件执行过程中的stack监控是非常有必要的,ETAS的StackM模块实现了运行过程中的stack监控,对于多核系统,对每个核的stack进行监控。本文介绍StackM配置及使用。栈是用来存储函数调用时的局部变量函数参数以及返回地址等信息的数据结构。栈的生长方向一般是向下生长的,栈顶为高地址。当一个函数被调用时,它的局部变量和函数调用的参数都会被压入栈中,这会导致栈指针(通常称为栈顶指针或SP)向下移动,即向。
2024-07-21 19:07:08
33
原创 MISRA C2012学习笔记(7)-Rules 8.12
为便于理解以下示例,应注意,1u 的基本类型是 unsigned char,而 1UL 的基本类型是 unsigned long。在下面这个示例中,表达式 DELAY + WIDTH 的值为 70000,但是在具有 16 位 int 类型的计算机上,该。所有这些都是合规的,但取决于 a,b 和 c 的类型,具有多个运算符的任何表达式都可能违反其他规则。,可以消除程序员的期望与事实不符的可能性。下面的示例显示具有单目或后缀运算符的表达式,其操作数是主表达式或顶级运算符具有优先级 15 的表达式。
2024-07-20 21:02:10
680
原创 ETAS RTM配置及使用-CPU Load测量/task时间测量/Isr时间测量
一般对CPU Load的测量,task及runnable的监控等有两种方案:1.需要使用带trace功能的调试器,且硬件也需要支持对应的trace接口2.使用软件Gliwa T1适配对应的软件程序,通过CAN通信进行监控以上两种方案所需的成本都不低,本文介绍基于ETAS RTM的配置实现CPU load测量/task时间测量/Isr时间测量,测量是基于定时器计数来的,可能不太准确,但是长时间的数据统计还是有一定参考意义的。使用RTM进行监控,可以对时间异常的任务进行优化,使软件运行更加高效稳定。
2024-07-20 20:55:30
646
原创 IC5000_IC5700 License激活步骤
用过的调试器除了Lauterbach之外,iSystem的应该是比较好用的,比Lauterbach也便宜一些。本文介绍IC5000的License激活说明,前提是正版采购了IC5000及对应的license。
2024-07-13 20:58:51
409
原创 Autosar Dcm配置-0x28服务ComControl-基于ETAS软件
0x28服务主要用来控制非诊断报文的通讯,一般在刷写预编程过程中,用来禁止APP的通信报文,可以减少总线负载率,提高刷写成功率。本文介绍手动在ETAS工具中配置0x28服务。使用Dcm+BswM+Com配置即可实现0x28服务,不需要手写代码,还是非常方便的。
2024-07-13 19:35:31
205
原创 Autosar RTE配置-Assembly和Delegation的使用-基于ETAS软件
RTE中的Compostion内部的SWC之间的连接使用进行连接。这样的连接一般都是一个SWC的Pport对应另一个SWC的Rport。而Autosar软件中往往不只一个Composition(一般可以以核的数量作为Composition的数量)。此时我们考虑另外一种情况,Composition与Composition之前的通信,也是Pport对Rport,而SWC到Composition之间的port实际是同一种类型,此时,Delegation Connector的作用就体现出来了。
2024-07-13 19:34:39
163
原创 MISRA C2012学习笔记(6)-Rules 8.11
的。例如,如果将类型为 int 的对象作为 short 进行访问,则即使 int 和 short 具有相同的表示和对齐要求,其行为也是未定义的。例外:将指向对象类型的指针转换为指向对象类型为 char,signed char 或 unsigned char 之一的指针是被允许的。C 标准确保了可以使用指向这些类型的指针来访问对象的各个字节。
2024-07-07 18:20:01
674
原创 Autosar Dcm配置-0x85服务配置及使用-基于ETAS软件
0x85服务用来控制DTC设置的开启和关闭。某OEM3.0架构强制支持0x85服务,本文介绍ETAS工具中的配置DTC控制服务一般在预编程过程,提前关闭DTC检测,以免在刷写过程中误报DTC。
2024-07-06 20:14:50
57
原创 Autosar MCAL-S32k324 Crypto配置-RandomNumber生成及使用
之前介绍过AES-CMAC算法的配置,本文接着介绍随机数生成算法的配置及使用软件模拟的随机数,总会有重复的可能,使用HSE生成的随机数,可以避免这个问题。
2024-07-06 15:24:10
66
原创 ETAS工具导入Com Arxml修改步骤
通讯协议栈开发一般通过导入DBC实现,ETAS工具本身导入DBC也是生成arxml后执行cfggen,本文介绍直接导入客户提供的arxml文件,实现通讯协议栈的生成。通过Arxml导入相比于DBC来说,少了从DBC转为arxml的过程。而且arxml中能提供的信息也会更多。如果是DBC的话,很多信息(如PNC的映射,CANTP的配置等)都需要额外配置。不过还有连DBC都无法提供的,那就更麻烦了~
2024-07-06 15:04:02
316
原创 诊断知识:UnconfirmedDTCLimit的使用
在某OEM基础技术规范中,诊断需求经常会出现这个词汇,但基础技术规范中并没有对于该值的解释,且Autosar规范(R19-11)中并没有定义这个。其实这个定义来自于Volvo。本文介绍UnconfirmedDTCLimit的使用。UnconfirmedDTCLimit在小于Failed limit时,可以用来监控故障真实发生前的可疑状态,在Unconfirmed状态下记录一些故障快照和扩展数据,在实际故障排查过程中,还是非常有帮助的。参考文档:Volvo VIDA HELP。
2024-06-30 18:23:20
770
原创 ETAS工具导入DEXT生成Dcm及Dem模块(二)
之前一篇文章介绍了导入DEXT之后在cfggen之前的更改,cfggen完成之后,就可以生成dcm,dem的配置了,但生成完配置后,如果直接生成BSW代码,会报错。本文介绍在cfggen完成后,生成BSW代码前的修改一般项目前期需要规划好诊断表的定义,尽可能少的进行cfggen的操作。包括通讯的协议栈也是如此。否则重复的工作量还是很大的。
2024-06-29 18:41:51
96
原创 ETAS工具导入DEXT生成Dcm及Dem模块(一)
诊断模块开发一般是先设计诊断数据库,OEM会释放对应的诊断数据库,如.odx文件或.cdd文件。如果OEM没有的话,只能先根据诊断表完成cdd文件。ETAS工具识别的是DEXT,也就是.arxml格式的诊断数据库文件,可以由.cdd文件通过导出为DEXT格式,导出方法不在本文描述范围。(如果是.odx文件,需要先转为.cdd,再转为DEXT)以上,cfggen之前的更改就介绍完了,下一篇文章介绍cfggen之后的更改。
2024-06-28 21:32:01
146
原创 Autosar Dcm配置-0x23服务ReadMemoryByAddress-基于ETAS软件
一般在调教开发阶段,会使用XCP进行观测和标定,本质上也是操作指定的内存地址。量产后,一般XCP会取消。本文介绍的UDS ReadMemoryByAddress服务,也是读取内存地址的值。在没有XCP时,通过ReadMemoryByAddress服务,也可以实现特定地址的观测。量产取消了XCP后,ReadMemoryByAddress如果利用的合理的话,对调试帮助还是非常大的。
2024-06-22 17:01:08
286
原创 Autosar 通讯栈配置-手动配置PDU及Signal-基于ETAS软件
ETAS工具的通讯协议栈,大部分是通过Cfggen生成的。在从客户那边拿到Arxml后,需要进行一些修改才能正常生成通讯栈的BSW配置,这种操作也会比较费时间。本文介绍在ETAS工具中手动配置PDU及Signal(以接收信号为例),保证能够正常生成代码及使用(本文不包括MCAL CAN的配置,默认mailbox已经配置好了)手动建立Signal,还是比较费劲的,尽量在项目前期阶段锁定网络中的接收与发送信号,避免重复的开发工作。
2024-06-09 17:04:45
274
原创 Autosar Dem配置-Condition(TRC)的使用-基于ETAS软件
在车辆工作状态下,每个DTC检测可能都需要一个前提条件,否则如果任何条件下都可以进行DTC检测的话,可能会出现故障误报的情况。这个前提条件又称为(TRC).在DEM中,该需求可以由实现。本文介绍基于ETAS软件的相关配置及代码实现。使用EnableCondition可以同时配置多个DTC为同一个条件,也可按故障进行分类,不同类型的故障增加不同的条件,使用起来还是比较灵活的,不需要每个DTC都去单独做判断了。
2024-06-09 17:03:27
177
原创 编译选项导致的结构体字节参数异常
在构建编译工程时,会有一些对应的编译配置选项,不同的编译器,会有对应的配置项。本文介绍GHS工程中编译选项配置不对应导致的异常。编译器对应的编译选项,还是需要花时间好好学习下,不然出问题可能很难排查。
2024-06-02 22:05:30
440
原创 Autosar Dem配置-手动配置DTC及使用-基于ETAS软件
Dem的配置基本由Cfgggen生成,但项目中有可能会有新增的需求,重新Cfggen比较费时间,本文介绍手动新建一个DTC,并配置其关联的参数,然后生成代码并使用该DTC使用Autosar Dem模块实现故障的触发,恢复,存储,数据记录,还是非常好用的。如果使用手写代码,工作量会更大,且bug可能也会更多。
2024-06-02 18:10:34
293
原创 S32K324 HSE固件加载配置及说明
本文介绍HSE固件的下载,及利用S32DS工程及PE工具安装。(本文只讨论对于full_men方式的HSE)HSE作为信息安全实现的载体,还是有很多需要学习的地方。
2024-05-28 20:54:07
393
1
原创 Autosar Dcm配置-特定NRC实现方式-基于ETAS软件
项目开发过程中,诊断服务一般客户需求或系统需求都会有特定NRC(一般为NRC22-条件不满足),也就会有特定的条件,需要手动加代码实现。本文介绍ETAS工具中配置的接口及简单实现。一般在1002跳转boot,1101复位等服务中,需要判断一些安全条件(例如车速,蓄电池电压),防止车辆出现不受控的情况。
2024-05-28 20:52:54
212
原创 Autosar NvM配置-手动配置Nvblock及使用-基于ETAS软件
NVM作为存储协议栈中最顶层的模块,是必须要掌握的。目前项目基本使用MCU带的Dflash模块,使用Fee模拟eeprom。在项目前期阶段,应该充分讨论需要存储的内容,包括应用数据,诊断数据等,用以评估Dflash空间是否够用。本文基于ETAS软件介绍NVBlock配置生成NVM参数及使用。使用NVBlock配置生成,基本不用手写代码,还是比较方便的。对于Nv block的划分,建议将同时写的一类数据放到一个block中,因为block除了data以外,Fee还会增加一些header数据,占用不少内存。
2024-05-07 21:44:32
365
原创 Autosar PNC网络管理配置-UserData的使用
之前配置的网络管理报文中的data都由ComM管理,后面客户新增了需求,最后两个byte需要发送,本文记录一下相关配置的修改能配置生成的,尽量不手码,毕竟手写一堆bug~
2024-05-07 21:43:46
290
原创 Autosar MCAL-RH850P1HC Fls配置
该参数指定是否可以通过在FLS驱动程序配置中添加预编译的配置参数来禁用进入/退出临界区功能来减少FLS驱动程序的CPU负载。该参数指定在正常模式下,闪存驱动器的作业处理功能在一个周期内要擦除的最大字节数。该参数指定在正常模式下,闪存驱动器的作业处理功能在一个周期内读取或比较的最大字节数。该参数指定flash驱动器的作业处理功能在快速模式下一个周期内写入的最大字节数。该参数指定在正常模式下,闪存驱动器的作业处理功能在一个周期内写入的最大字节数。:该参数指定该扇区的起始地址。该参数指定虚拟起始地址。
2024-04-27 22:05:24
165
原创 Autosar MCAL-S32k324 Crypto配置-基于EB
NXP官网提供了免费的HSE固件,同时也提供了对应的协议栈。本文以算法为例,介绍MCAL相关的配置及在代码中的集成与使用。使用HSE计算,比软件算法确实方便许多。后面会完善更多的算法测试。
2024-04-27 21:53:04
357
2
原创 Autosar Dcm配置-手动配置RID及Routine功能实现-基于ETAS软件
Autosar Dcm配置-手动配置RID及Routine功能实现-基于ETAS软件
2024-04-13 19:24:02
368
原创 RH850P1X芯片学习笔记-Clocked Serial Interface H (CSIH)
RH850P1X芯片学习笔记-Clocked Serial Interface H (CSIH)
2024-04-04 20:48:03
853
原创 Autosar MCAL-RH850P1HC Pwm配置
对于重新初始化Driver,该参数将设置为false以抑制PWM_E_ALREADY_INITIALIZED Det错误的检查。该参数启用/禁用Pwm_Init API中的PWM_E_ALREADY_INITIALIZED Det检查。false:禁用Pwm_Init API中的PWM_E_ALREADY_INITIALIZED Det检查。true:在Pwm_Init API中启用PWM_E_ALREADY_INITIALIZED Det检查。
2024-03-03 18:13:43
273
原创 RH850P1X芯片学习笔记-Generic Timer Module -ATOM
通过AEI总线进行同步/异步更新通过ARU同步更新可以使用w/ or w/o ARU。
2024-03-03 18:06:58
777
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人