打印

IAR ARM PK Keil ARM

[复制链接]
3144|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zf8848|  楼主 | 2009-2-23 12:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近有个项目要用到 CM3,在选择开发工具时犯了难,选 IAR or Keil ?
老办法用实际项目测试它们.

1.测试平台:
  OS:XP SP3 内存:1G
2.开发工具
  Keil 3.40 评估版,没有用PRC版
  IAR 5.30 30天评估版,没有用KS版
3.测试项目
  STM3210E-EVAL 评估版的例子程序:

  STM3210E-EVAL demonstration firmware

  下载地址:
  http://www.st.com/stonline/products/support/micro/files/um0549.zip

4.编译优化选项
  Keil O3
  IAR  Size

5.结果:
  Keil:  Program Size: Code=46384 RO-data=6048 RW-data=2648 ZI-data=4128  

  IAR:
  46 672 bytes of readonly  code memory
  11 354 bytes of readonly  data memory
   8 031 bytes of readwrite data memory

  IAR 最终生成的文件比 Keil 大 ~7K,怎么会有这么大的差距呢?不明白。
以前用过IAR ,难道要转到 Keil? IAR 有其他优势吗?

  

相关帖子

沙发
阿南| | 2009-2-23 12:51 | 只看该作者

哪个都可以完成任务,就看哪个习惯些

以前有Keil使用经历就选Keil

使用特权

评论回复
板凳
simon21ic| | 2009-2-24 20:44 | 只看该作者

用不起Keil,只能选IAR

使用特权

评论回复
地板
ATmega32L| | 2009-2-25 00:23 | 只看该作者

可能与库设置有关

可能库设置(特别是printf)相关,IAR5.30,其他设置未变,改变库设置。 

1.Lib Full + Printf Full 
  46 656 bytes of readonly  code memory  
  11 354 bytes of readonly  data memory  
   8 031 bytes of readwrite data memory  

2.Lib Normal + Printf Full 
  44 894 bytes of readonly  code memory  
  11 104 bytes of readonly  data memory  
   6 791 bytes of readwrite data memory  

2.Lib Full + Printf Samll 
  41 476 bytes of readonly  code memory  
  11 265 bytes of readonly  data memory  
   7 955 bytes of readwrite data memory  

3.Lib Normal + Printf Samll 
  39 944 bytes of readonly  code memory  
  11 112 bytes of readonly  data memory  
   6 791 bytes of readwrite data memory  


可见,不同的库设置,对代码影响是很大的。 
特别是IAR的printf Full,包含内容全面,但是会显著增加代码长度。 

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

2

帖子

1

粉丝