必须得会的汽车ECU研发基础—底层软件介绍4

1 底层软件主要内容

底层软件开发内容有:一方面是设备驱动的实现,基于主芯片有:底层驱动PORTS,ADC,PWM,SPI,CAN,SENT等,基于外围芯片的复杂驱动。

另一方面基础功能的开发,bootloader开发,操作系统RTOS,存储管理,故障诊断,通讯和网络安全等功能。

2 底层软件开发基础

对于上述的底层软件开发内容,若要深入的话,一是要能看懂芯片手册,熟悉所使用芯片提供的资源 ,包括多核定义,内存分配情况(包括RAM和ROM/FLASH/EEPROM),ADC模块,GTM模块和通讯模块等等;二是要掌握常用的标准与协议,包括OSEK标准(操作系统相关),14229协议和15765协议(诊断,刷写相关),XCP协议(标定相关)和 11989协议(CAN通讯相关)等;三是要掌握C语言编程,ECU底层软件使用该语言进行开发。

3 底层软件开发工具

底层软件开发最常用的工具有劳特巴赫TRACE32和Vector三件套(Canlyzer, CANape,CANoe)。其中,劳特巴赫调试工具提供了嵌入式开发全生命周期的支持, 覆盖了Pre-Silicon,芯片Bring-Up, Bootloader、 Firmware的开发,OS和App的调试,以及后续的软件测试等过程。

举一个简单应用,比如开发者使用劳特巴赫实时跟踪代码的运行状态,观察一些调试资源,像寄存器、内存、C源码、变量等等,这样就可以识别开发的功能是否满足设计要求。

而Vector工具的话:对于CANlyzer,一方面可以模拟报文节点,发送或接收报文,以此来验证通讯或诊断功能,另一方面通过CAPL语言可设计一个模拟环境来测量或验证所开发的功能。对于CANape,一方面可以实时监测TCU的内外部变量,另一个方面还可以改变标定变量的数值。

熟悉了上述的两类工具,底层软件所涉及的测试和验证工作就基本没问题。

4 总结

以上就基本介绍了底层软件的基本内容和所需掌握的基础与工具,如果想进一步了解,最好能参与具体项目,实践出真知。

作者:Z-ONE_90490814141
文章来源:上汽零束SOA开发者论坛 
原文链接:https://bbs.z-onesoft.com/omp/community/front/api/page/mainTz?articleId=7555

  • 1
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值