IAR开发环境下,能不能用自己的Main函数

[复制链接]
 楼主| yatelanda 发表于 2007-12-10 17:19 | 显示全部楼层 |阅读模式
我刚入手试用这个开发环境,&nbsp;发现不用main,而用其它C程序入口,就编译不过.<br />我希望自己用代码实现变量,堆栈初始化.不希望编译器插入那些代码.<br /><br />望高手指点迷津
阿南 发表于 2007-12-10 18:53 | 显示全部楼层

印象当中,最早接解7S64时,是可以的.

  
rodger_br 发表于 2007-12-10 19:48 | 显示全部楼层

应该和ADS一样

可以重定向初始化代码。
springshib 发表于 2007-12-11 00:28 | 显示全部楼层

可以的!!!

在cstartup.s79文件中的最后2行,默认如下:<br />&nbsp;&nbsp;ldr&nbsp;r0,=?main<br />&nbsp;&nbsp;bx&nbsp;&nbsp;r0<br />其中的?main是iar默认库中的函数,在它执行完之前,会默认跳转到main入口,所以要想不用main作为主函数入口,只要将第一行中函数入口改为你自己定义的函数名就可以了,例如:<br />&nbsp;&nbsp;ldr&nbsp;r0,=start<br />&nbsp;&nbsp;bx&nbsp;&nbsp;r0<br />当然,这样做会跳开了iar库函数中的一段初始化程序,具体可以自己试着写写:)
 楼主| yatelanda 发表于 2007-12-11 12:34 | 显示全部楼层

首先,感谢各位的回复.

我也认为是可以的.<br />但实际情况情况是,如果不定义main,换成自己的入口函数,编译就会出现下面的error.<br />Error[e46]:&nbsp;Undefined&nbsp;external&nbsp;&quot;main&quot;&nbsp;referred&nbsp;in&nbsp;?CMAIN&nbsp;(&nbsp;D:Program&nbsp;FilesIAR&nbsp;SystemsEmbedded&nbsp;Workbench&nbsp;4.0&nbsp;EvaluationARMLIB&nbsp;<br />dl4tpannl8n.r79&nbsp;)&nbsp;<br />或许通过IDE的某处设置或xlink的设置可以实现,但我现在还不知道.<br /><br />用IAR的朋友们不防试验一下,多谢.<br /><br /><br />
pangzi814 发表于 2013-10-21 20:28 | 显示全部楼层
Error[e46]: Undefined external "main" referred in ?CMAIN ( D:Program FilesIAR SystemsEmbedded Workbench 4.0 EvaluationARMLIB
dl4tpannl8n.r79 )
或许通过IDE的某处设置或xlink的设置可以实现,

这个在哪儿设置??
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

35

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部