在使用WinAVR时出现了一些麻烦,想换一种C编译进行比较、鉴别。所以上网下载了 ICCAVR(v7.20A)。
安装当然没有问题。移植代码也没费多少手脚,只不过换掉原先的几个库文件名和内部函数名。 重新建立项目名称之后就启动编译。比较顺利。
令我高兴的是,原现在WinAVR上的一些问题不见了(最重要的事)。
总结一下,ICCAVR的代码编译很规范,打出.lst文件对照源代码一目了然,有疑问的话 也容易发现、解决。对手工优化帮助很大。反观WinAVR,优化经常过头,弄得人搞不明白; 出现问题就讨厌了。(手头没有ICE、JTAG之类的调试工具)
当然,ICCAVR的代码优化质量还有许多不足。比较而言,它比WinAVR所产生的代码大概要 大出5%~10%;估计运行速度也会随之减慢一点。
不管怎么样,ICCAVR的确有其优点,因该是初学者的首选。
|