【发布时间】:2015-06-14 05:15:57
【问题描述】:
我正在做一个关于将 Autosar OS 移植到微控制器的学术项目。在阅读了有关 Autosar、Arctic Core 和 Arctic Studio 的论文和信息后,我有一些问题:
- 我以前将 FreeRTOS 移植到微控制器上,这很容易,我只包含了一些 FreeRTOS 的 *.h 和 *.c 文件,然后使用 FreeRTOS 功能在芯片上构建我的应用程序。我可以像 Autosar 一样做吗?如果可能的话,我应该将哪些文件包含到我的 main.c 中
- 第二个问题,在 FreeRTOS 中,我只需要使用 xcreatetask() 函数(这是一个 FreeRTOS 函数)来设置任务优先级,然后我应用 vstarttaskschedule() 函数来运行队列中的任务但是我看不到这些类型Autosar OS 中的功能。谁能告诉我 autosar 中的哪个函数与我说的函数具有相同的功能。
- 当我对德州仪器芯片进行编程时,总是有 main 函数,其中包括我们将为芯片构建的主程序。但是,我在 arctic Core 示例中看不到任何主要功能。没有main函数,芯片如何运行程序? 请帮我回答这些问题!
【问题讨论】:
-
问题 1 和 2 看起来就像在 documentation 中得到的最佳答案。但是ARCCORE要求你注册,所以我没有看;但是,您应该。对于问题3,
main()函数的存在与芯片无关;main()是代码的入口点是 C 和 C++ 的标准要求;但是,一些内核和应用程序框架库在库中包含main()函数,该函数又调用您必须在 您的 代码中提供的一些备用用户入口点 -
Autosar 系统非常依赖于 UML 和 XML 的代码生成,并有意强制执行基于自上而下设计的工作流。因此,这是一个与您习惯使用 FreeRTOS 的范式非常不同的范式。与传统的 RTOS 相比,典型的前期“启动成本”也绝对是巨大的,以至于如果你作为一个单独的开发人员在一个学期的大学项目中可以用它做任何事情,我会留下深刻的印象。
标签: embedded freertos texas-instruments launchpad autosar