需要C中的主要功能,用于微控制器

时间:2015-06-25 09:44:38

标签: c microcontroller codewarrior

我一直在使用C作为嵌入式系统,但我对main()函数有疑问。

当微控制器启动时,控制器首先到达复位处理程序,从那里控制转到我需要的任何功能。如果我没有使用编译器库提供的​​初始化代码,我可以继续调用我想要的任何函数。那么,为什么我需要main()?我的IDE(Codewarrior)坚持使用main()。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

根据C99标准,“独立”环境不具备<h6>功能。在微控制器中,通常从复位向量调用启动初始化代码。该代码执行全局变量初始化,堆栈初始化等,然后跳转到main函数。

您可以修改启动向量位置或启动代码本身。您可以简单地决定不从启动代码调用main函数。

如果您使用自己的启动代码,请确保您的IDE设置已正确设置为不生成启动代码。