嵌入式、C语言、autosar、Rte
项目 | Value |
---|---|
OS | autosar OS |
autosar厂商 | vector |
芯片厂商 | TI |
编程语言 | C,C++ |
编译器 | HighTec (GCC) |
??BSW(basic software),如图1.1所示,根据autosar的分层架构,BSW层是介于RTE和微控制器层之间的一层封装,让上层可以直接访问到芯片底层。为了适配不同厂商的MCU,BSW自上到下分为了三层,越靠上和下层MCU的硬件的联系就越小。
(图1.1)
??(MCAL)MicroController Abstraction Layer。这一层向下直接操作主MCU的寄存器层面。和TI的SDK库差不多,就是把操作寄存器的指令封装供给上层操作,这样上层就能不管是什么芯片都能兼容了。
??ECU Abstraction Layer。负责将主芯片及其外围设备以及接口一起封装提供给上层调用。外围设备以及接口包括 IO、memory、喂狗、通信芯片等。
??将下面两层的功能归类统一调用,例如FEE、FLS、NVM等归于存储管理,CAN,ETH,SPI等归于通讯管理。上层不需要管下面如何实现通信或者存储,只需要调用服务层即可。服务层总共包含以下服务:诊断(Diagnostics)、管理(ECU and BSW state management) 、存储管理(NVRAM Management)、看门狗管理(Watchdog Manager)、通信(Communication)、操作系统(OS)、调度管理(Schedule Manager)、通信通道管理(Com Channel Management)。
??复杂驱动是对上面三层的一个补充,通常用于复杂传感器或者执行器,SIP包中没有对其进行定义。
??从图中可以看出,想要实现一种功能,都需要从上至下分别经过服务层–>ECU抽象层 -->MCAL
,如下图所框出来的所示。