Non-AUTOSAR软件
虽然AUTOSAR是一个开发软件架构,在代码重用性、可维护性、开发效率和代码质量方面有诸多优势,但是使用AUTOSAR标准需要一定的授权费用且大多数AUTOSAR软件和配置工具都是商用付费软件,需要额外购买license授权。因此,只有量大的平台化项目,Car OEM和Tier-1才会完全采用AUTOSAR架构软件进行开发 , 以cover上百万的AUTOSAR软件费用。
对于项目预算有限、非平台化的小项目,非AUTOSAR(Non-AUTOSAR)软件开发是一个不错的选择。虽然很多大客户有自己在某个/多个应用开发方面多年积累的软件库可以使用,但是面对更新换代越来越快且越来越复杂的车规MCU硬件和日益复杂的应用功能软件需求,芯片厂商免费提供的车规MCU软件开发套件(SDK)将能够帮助客户减少熟悉新硬件底层的时间、复用中间件软件,让客户专注于应用层功能软件的开发和测试,提高软件开发效率,从而缩短项目开发周期。
软件开发套件(SDK)
车规MCU的软件开发套件(SDK)是为了支持开发人员在车规MCU上进行软件开发而设计的。它提供了一套完整的工具和库,用于开发、编译、调试和测试车规MCU上的应用程序。
车规MCU的SDK通常包括以下几个主要组件:
底层驱动层(LLD):提供了与硬件外设的接口,包括GPIO、UART、SPI、CAN等。开发人员可以使用驱动层来配置和控制这些外设。
硬件抽象层(HAL)或者外设抽象层(PAL):将实现功能相同/相近的不同外设IP的底层驱动层(LLD)接口进行封装,对上层应用或者中间件软件提供统一的API接口以屏蔽不同硬件平台的外设IP寄存器/功能差异,方便跨平台驱动代码移植。
操作系统(OS):提供了多任务管理、任务调度、内存管理等功能,以支持多任务应用程序的开发。常见的车规MCU操作系统包括AUTOSAR OS和FreeRTOS等。
中间件(Middleware):提供了一些常用的功能模块,如通信协议栈、文件系统、加密库等。开发人员可以使用中间件来简化开发过程,提高开发效率。
工具链:包括编译器、调试器和仿真器等工具,用于编译、调试和测试应用程序。常见的车规MCU工具链包括IAR Embedded Workbench、Keil MDK等。
示例代码和文档:提供了一些示例代码和详细的文档,帮助开发人员快速上手和理解车规MCU的功能和使用方法。
车规MCU的SDK架构和功能可以根据具体的芯片厂商和应用需求而有所不同。开发人员可以根据自己的需求选择合适的SDK,并根据SDK提供的文档和示例代码进行开发。