在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!) 创芯人才网--重磅上线啦!
查看: 1910|回复: 3

[求助] (新手入门)用KEIL软件的过程中产生的问题

[复制链接]
发表于 2014-10-10 12:12:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
刚开始用学习用KEIL,师傅给提供给我他之前的一个工程,我在自己的电脑里安装了Keil uVision4:(1)用我PC上的KEIL打开师傅的工程,生成HEX文件,和师傅之前自己生成的HEX文件相对比,
       有些许不同,主要不同之处在地址和CRC校验部分,数据部分也有些许不同。
      【问题1】这些不同是如何造成的?(师傅用的是Keil uVision2)生成的HEX不同对效果会有影响吗?
(2)用我PC上的KEIL打开师傅的工程,生成HEX文件;自己又新建了一个工程,用的是同样的代码,生成了HEX文件。这两个HEX文件几乎是完全不同的。
       师傅的工程:Program Size: data = 11.7  xdata = 161  code = 5624
       自己的工程:Program Size: data = 86.7  xdata = 61    code = 4876
       【问题2】为什么同样的代码,同样版本的Keil,生成的HEX文件差很多?
       【问题3】和问题2一样,为什么生成的Program Size差别如此大?是因为C代码中有些变量没有声明xdata这类关键字吗?
 楼主| 发表于 2014-10-10 15:14:46 | 显示全部楼层
回复 1# fanny_haiyun


   第(2)部分的问题已经找到原因:还是在“设置工程文件的属性”部分,Target标签属性,Memory Model设置的不一样造成的,改成一样的后就没有问题了。
遗留的问题就是第(1)部分,是否不同版本的Keil软件会造成生成的HEX文件不同?
发表于 2014-11-6 21:27:06 | 显示全部楼层
很大可能是这样的:
hex文件是由汇编的文件转成的。
但不同的编辑器,尤其是不同版本,从C语言到汇编的转变过程是不同的。往往新版本转化出的汇编效率更高,所以会导致hex文件不一样。
发表于 2014-11-19 15:47:12 | 显示全部楼层
Check for memory model in C51 settings. If you use small memory model then it will use internal idata to store variables and if you use large then it will store variables in xdata memory.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-19 04:58 , Processed in 0.019801 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表