关于keil5optimization的信息

keil5点击F7每次都重新编译RTE库

把以下3个勾去了, 就OK, 我是去了第二个时, 就正常了!

1:project--option for target 'xxx' ---target---Code Generation-- 将Use Cross-Module Optimization勾选去掉

2:project--option for target 'xxx' ---Listing---将C Preprocessor Listing:.\Listings*.I 的勾选去掉。

3:project--option for target 'xxx' ---Output---将Create Batch File的勾选去掉。

keil 5中optimize 0和optimize1有什么区别

Keil为大量的CPU和基于这些CPU的开发板提供代码支持device是所支持的CPU,提供了和这些CPU相关的.h文件。board中支持的是和大厂生产的开发板,提供了大量的可以在这些板上直接运行的示例代码。

keil c51优化等级介绍

一般用优化等级8,其它的别用,容易出事。

编译完之后多留意data,xdata,看有没超出芯片的最大值,

特别是data,不能超过128,甚至太接近128有时也会出问题。

如果data 需要使用到256,则另外的128用idata定义

Keil优化及如何设置某段代码不优化

Keil默认会对代码进行优化的

一般情况缺省编译优化设置被设定为8级优化,实际最高可设定为9级优化。

1、Dead code elimination

2、Data overlaying

3、Peephole optimization

4、Register variables

5、Common subexpression elimination

6、Loop rotation

7、Extended Index Access Optimizing

8、Reuse Common Entry Code

9、Common Block Subroutines

如何设定不优化或改变某个文件的优化设置

1、针对某个文件

(1) 右键-Option for File XXXX

(2) 切换到【C51】选项卡

default表示与工程设置一致

2、针对某段代码(局部优化)

#pragma OPTIMIZE(x) x就是你希望的优化级别

举例如下:

#pragma OPTIMIZE(6)

void FunA()

{

}

......

......

#pragma OPTIMIZE(9)

void FunB()

{

}

上面的意思就是说,在void FunA()到void FunB()之前的所有函数,包括FunA在内,都采用6级的优化,而从FunB开始直到之后,只要没碰上#pragma OPTIMIZE,都采用9级优化了。

OPTIMIZE还可以多一个参数,就是speed和size,

用法: #pragma OPTIMIZE(9,speed)或#pragma OPTIMIZE(5,size)

对应的就是9级优化,以速度为主,或5级优化,以空间最小为主。

keil5怎么让晶体管不闪

去掉即可。《Keil5》是一款非常友好和强大的C语言软件开发系统,《keil5》把晶体管去掉即可不闪,提供了清晰直观的操作界面,而且使用起来十分的轻松便捷,并具备编译器、编译器、安装包和调试跟踪,主要新增包管理器功能。

361知讯网

本文链接:http://pdidw.com/keil/14938.html

发表评论

评论列表

还没有评论,快来说点什么吧~