打印
[开发工具]

感受ARM Compiler 6的威力(MDK 5.22)

[复制链接]
4513|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Ketose|  楼主 | 2016-11-18 12:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Ketose 于 2016-11-18 17:15 编辑

首先感谢21IC,感谢ST,有幸拿极致幸运奖,拿了五块开发板。
随着Cortex-M23、Cortex-M33内核的推出,ARM的MDK又长级了,我也追上这个版本,下载试用,主要是体验下最新的ARM Compiler 6.6,之前早听说了CLang和LLVM也大概的了解些,虽然云里雾里,但是总体感觉就是编译速度快的不是一点,就好比汽车和火箭的区别。是真的嘛,今天就来体验一把。(还不知道Clang和LLVM的自行百度脑补)。
刚好手上有开发板,就测式下,这次选用的是NUCLEO-STM32F042的开发板,项目就随便开个项目(GPIO,USART)都可以。
使用STM32CubeMX生成基本的USART框架,就随便添加点代码。(不添加代码也是可以的)

配置编译器选项,分别选择V5.06 update4和V6.6。看了ARM官方文档,V5版本的已经停止开发,以后只维护。ARM推荐大家都使用V6版本的编译器

配置C/C++的选项

配置完成后点OK,然后编译项目

编译的时候选择Rebuild,保证每次都是全部重新编译。
看下V5.06的编译结果

V6.6的编结果

明显的结果对比 V5编译用了1分29秒,V6只用了24秒,一个天上一个地下。
有人说V6编译出来的代码有点大,那我们再选择最大代码优化试试Optimization (-Oz image size)

这次Rebuild只用了15秒,代码明显减小了,但是还没有达到V5的那么小。我觉得也可以了。V6出现了96个警告,可能是C99和gnu99标准不一样吧。
最后晒下板子:


沙发
mmuuss586| | 2016-11-18 17:17 | 只看该作者
不错,谢谢分享;

使用特权

评论回复
板凳
sonicll| | 2016-11-18 18:15 | 只看该作者
我试了下这个版本,STM32F103的工程,在ARM Compiler V5.06 update4编译通过,但是换成V6.6,gnu99和gnu++11就报错,
ArmClang.exe: error: unable to execute command: Unable to convert command-line to UTF-16: 在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。  (0x459)

使用特权

评论回复
地板
diweo| | 2016-11-18 19:32 | 只看该作者
5.21版本还是compiler 6.5。要使用C++11的话要在编译选项“Misc Controls”里面以参数形式给出。6.6总算改进了一些。

不过,现在2016都快过了,居然C++11还不能完全支持,也算是差劲的了。

使用特权

评论回复
5
Ketose|  楼主 | 2016-11-20 20:37 | 只看该作者
diweo 发表于 2016-11-18 19:32
5.21版本还是compiler 6.5。要使用C++11的话要在编译选项“Misc Controls”里面以参数形式给出。6.6总算改 ...

这个是单片机,支持到C++11都算不错了。

使用特权

评论回复
6
Ketose|  楼主 | 2016-11-20 20:50 | 只看该作者
sonicll 发表于 2016-11-18 18:15
我试了下这个版本,STM32F103的工程,在ARM Compiler V5.06 update4编译通过,但是换成V6.6,gnu99和gnu++1 ...

你是用标准为库,还是HAL的?

使用特权

评论回复
7
sonicll| | 2016-11-21 14:39 | 只看该作者
本帖最后由 sonicll 于 2016-11-21 14:46 编辑
Ketose 发表于 2016-11-20 20:50
你是用标准为库,还是HAL的?

用的是标准库,我试了一下官方F103的标准库例程,就是STM32F10x_StdPeriph_Lib_V3.5.0这个里面的STM32F10x_StdPeriph_Template工程,也是V5.06编译通过,V6.6报错,报错内容和我上面贴的一样

使用特权

评论回复
8
Harvard| | 2017-3-2 12:41 | 只看该作者
楼主是当过特派员么

使用特权

评论回复
9
Ketose|  楼主 | 2017-3-2 19:41 | 只看该作者
Harvard 发表于 2017-3-2 12:41
楼主是当过特派员么

天机不可泄露。。。

使用特权

评论回复
10
xietingfeng| | 2017-3-2 23:11 | 只看该作者
KEIL 6 太大了,安装不方便。

使用特权

评论回复
11
xietingfeng| | 2017-3-2 23:13 | 只看该作者
楼主这么多开发板?

使用特权

评论回复
12
Harvard| | 2017-3-5 20:39 | 只看该作者
Ketose 发表于 2017-3-2 19:41
天机不可泄露。。。

哈哈  明白 .

使用特权

评论回复
13
caijie001| | 2018-8-21 22:20 | 只看该作者
你居然不报错?

使用特权

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

本版积分规则

个人签名:我最讨厌两种人:一是有种族歧视的; 二是黑人;三是不识数的!

64

主题

3211

帖子

15

粉丝