一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 1433|回复: 7
收起左侧

[51单片机] Keil编译软件的奇怪问题?!

[复制链接]
发表于 2015-4-5 20:25 | 显示全部楼层 |阅读模式
最近想玩51MCU电子钟驱动软件加GPS授時功能。
原来一直使用的DELL本本坏了,启用了一台旧小本本,XP系统。
需要重新安装 Keil编译软件,都是坛友介绍从网上下载的V4(901)版、和V2版。
多年以前,曾经有过用V3版编译51汇编语言老是出错的教训……所以,不"喜欢"V3版。
我不会编软件!所以,只能请坛友老师帮忙,左原运行正常的电子钟源程序上、増加GPS功能……
老师改编好软件之后,传给我配合硬件、测试……

上个月,请坛里一位老师(能者为师!),在点阵屏的C语言源码上改;
使用的是"KeilV4编译软件",基本成功了,能正常运行。

本月,请坛里另一位老师(能者为师!),在数码管的ASM语言源码上改;
可能改编中有些问题,老是运行不正常……
为了分析原因,把我"传过去的源程序"、重新编译,和还在正常运行的原固件校验……
结果,编译出来的新固件、居然和原固件不"完全一致";同时,运行也不像原固件一样"正常"!
使用的编译软件,就是上面的"KeilV4编译软件"应该没有问题啊?
究竟是什么原因???

今天醒得早。下载了昨晚坛友给我电邮來的同一种老的源程序,修改IO端口,进行测试。
因为这个"老的源码",原来就是用"KeilV2编译软件"编译的;
所以,我就"沿用"电脑中安装后尚未使用的V2软件、进行编译了。
编译后,成功写入芯片,运行和我原来的"原固件"一样正常!
囬过头,我无意中,把我前面"传过去的源程序"、重新用V2编译……
结果……现在,编译结果"恢复正常"了!!

上面,我可能表达得毫无章法?
那么,简单归纳一下,就是以下两个"亊实":
其一、一个51-C语言源码,使用KeilV4进行编译……结果正常;说明,源码和编译软件都正常。
其二、一个51-ASM汇编源码,使用KeilV2进行编译……结果正常;同样说明,源码和编译软件都正常。
但是,上面的51-ASM汇编源码,使用上面的KeilV4进行编译,结果却不正常?!
为什么?


哪位坛友,可以指教我?
谢谢先!



发表于 2015-4-5 20:38 | 显示全部楼层
是不是编译设置的原因?瞎猜
发表于 2015-4-5 20:39 来自手机 | 显示全部楼层
手边目前没电脑使用keil,回去我试试看看哩
发表于 2015-4-5 20:42 | 显示全部楼层
这个最好把c51和a51的工程提供出来,
还有就是你的机器上u4,u2共存着?
具体共存细节也要说一下,

这样一来,搞大了……
 楼主| 发表于 2015-4-5 22:17 | 显示全部楼层
手头同时有A51软硬件的朋友,
不妨试试看……
发表于 2015-4-5 22:53 | 显示全部楼层
k2,k4好像对同一个源文件编译出来的代码有很小的字节上的出入,(怀疑是不是初始化有细微的不同,对c文件而言),如果优化等级不一样,那字节上的出入就很大了。一般编译8位的51单片机自己感觉用k2比较好一些。
 楼主| 发表于 2015-4-6 09:43 | 显示全部楼层
fxhfxh 发表于 2015-4-5 22:53
k2,k4好像对同一个源文件编译出来的代码有很小的字节上的出入,(怀疑是不是初始化有细微的不同,对c文件而 ...

谢谢!
我偶尔修改一下IO端口安排什么的……
A51,使用V2版,编译结果、好像从來没有发現"问题"。
V3版,上面已经说起,编译可以通过、但是总行出问题!
V4版,没有想到,也会出"问题"……

发表于 2015-4-6 13:12 | 显示全部楼层
是不是头文件之类的啊

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-5-10 12:58 , Processed in 0.068552 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表