[Kinetis] CodeWarrior 不能生成Hex 文件

[复制链接]
3626|9
 楼主| peihua12344 发表于 2015-4-1 10:21 | 显示全部楼层 |阅读模式
新建的工程属于CodeWarrior 的bareboard工程,非PE模式,芯片是MKL16Z64 ,最近在做工程优化,将工程的整体优化级别调整到O1,这个时候是可以正常生成HEX 文件 ,但是如果我把某一个.c 文件属性设置优化级别为O0(工程整体优化级别没有变,仍然是O1),则不能生成HEX文件,请帮忙分析一下,不胜感激!
 楼主| peihua12344 发表于 2015-4-1 10:24 | 显示全部楼层
FSL_TICS_ZJJ 发表于 2015-4-1 16:38 | 显示全部楼层
楼主你好!
你看看被你单独设置优先级的那个文件,编译后是不是被加了钥匙图标了呢?
FSL_TICS_ZJJ 发表于 2015-4-1 16:48 | 显示全部楼层
34.jpg
你把你上锁的文件按照上图设置下,然后编译就可以生成hex了。

看这样,应该是工程里面的所有文件的优化等级要一致,所以,你还是整个工程统一的去设置优化等级。

 楼主| peihua12344 发表于 2015-4-1 17:14 | 显示全部楼层
FSL_TICS_ZJJ 发表于 2015-4-1 16:38
楼主你好!
你看看被你单独设置优先级的那个文件,编译后是不是被加了钥匙图标了呢? ...

是的
FSL_TICS_ZJJ 发表于 2015-4-1 17:16 | 显示全部楼层

按照地板楼操作
你要局部的,我在你另外一个帖子里回复你了。
你照着做试试。
 楼主| peihua12344 发表于 2015-4-1 17:19 | 显示全部楼层
FSL_TICS_ZJJ 发表于 2015-4-1 16:48
你把你上锁的文件按照上图设置下,然后编译就可以生成hex了。

看这样,应该是工程里面的所有文件的优化等 ...

嗯,如果是统一优化级别,是能生成HEX 文件的,但是因为某个文件被优化之后,功能性就不稳定了,所以我是想单独把某一个文件不进行优化。
在我的工程里,统一优化为O1级别之后,flash 的擦写就不能正常操作,所以想把flash.c 这个文件不优化,不知道你有没有其他的办法,使得代码能改变局部优化级别?  或者其他方法能达到同样的效果·  ?
 楼主| peihua12344 发表于 2015-4-1 17:35 | 显示全部楼层
FSL_TICS_ZJJ 发表于 2015-4-1 17:16
按照地板楼操作
你要局部的,我在你另外一个帖子里回复你了。
你照着做试试。 ...

刚才试过,仍然不行,添加那几句代码之后,功能性仍然不稳定,既效果是跟全局优化是一样的·
FSL_TICS_ZJJ 发表于 2015-4-2 10:09 | 显示全部楼层
peihua12344 发表于 2015-4-1 17:35
刚才试过,仍然不行,添加那几句代码之后,功能性仍然不稳定,既效果是跟全局优化是一样的· ...

你是怎么查看的?
有没有查看它们对应的汇编有什么区别?而不是看功能。
FSL_TICS_ZJJ 发表于 2015-5-4 09:41 | 显示全部楼层
本帖最后由 FSL_TICS_ZJJ 于 2015-5-4 09:43 编辑

   非常感谢你关于IDE的技术问题。如果你没有其他问题,我们将此帖默认为已解决.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

36

帖子

0

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