为什么Keil C51编译的2051程序总是大于2k

作者&投稿:柏蝶 (若有异议请与网页底部的电邮联系)
Keilc51程序大于2K不能调试怎么办~

没有注册,把你的CID贴出来,有注册机的可以帮你弄个注册码
CID在File------License Management...弹出的对话框的右上角 有个Computer ID

0800H之后是用户程序
之前是单片机的特殊用途(具体记不得了)

应该不会,我写了一个小程序,程序如下:

#include"reg51.h"

void main()

{while(1);

}

编出来是1K



如果你用汇编写程序,更改主函数的org入口。
如果你用C语言写程序,更改startup.a51中的函数入口,或干脆把启动文件删掉重新导入。

我也是,不过注册破解后,就好了。

有2k限制,证明你使用的demo版的keil,要接触2k限制,有两个方法:
1、你找一个解密版的keilc重装
2、你买一个正版的keilc重装
否则,你只能编译一些较小的小于2k的程序。


崇州市19442083359: 为什么keil c51程序编译从0800开始 -
师亲安利: 手动修改startup.a51,更改main段的起始地址.

崇州市19442083359: 为什么keil 编译超慢 -
师亲安利: 编译速度慢,是因为你的系统中开了一些比较占CPU的进程. 打开“任务管理器”,把一些不必要的进程全部结束,编译的速度就会非常快.我家那P4_1.8的CPU,在平时的时候编译都非常快,前提是我开的进程一般比较少. Good Luck

崇州市19442083359: 在keil中,编译时出现错误:Error:fail to execute' C:\keil\C51\ -
师亲安利: 在任务栏中有一个品字样的彩色图案,点击它然后在选择Folders/Extensions在Toll Base Folder:后面有一个路径把他改成你自己keil安装路径下C51文件夹的路径就行了!

崇州市19442083359: 为什么用keil 软件编译程序的时候,会出现如下显示: -
师亲安利: 你的Keil没有破解,还只是只能生成2K长度代码的评估版.0800H=2048=2K,意思是你的代码超过的2K字节的限制,不给生成.你在下载keil的,其中有文件说明破解的方法吧?你仔细看看.

崇州市19442083359: Keil C51软件编译出现 NEW5.C(273): warning C209: ' - WriteLCD1602': too few actual parameters -
师亲安利: WriteLCD1602('0'+W/10); //写入年高位 WriteLCD1602('0'+W%10); 都只有一个参数啊

崇州市19442083359: 在keil中,编译时出现错误:Error:fail to execute' C:\keil\C51\BIN\C51.EXE'是怎么回事.急! -
师亲安利: 查查编译器路径设置,如果设置没错的话就可能感染病毒了

崇州市19442083359: 编译出现 - - - Error: can't execute 'D:\keil\C51\BIN\C51.EXE' -
师亲安利: 编译出现--- Error: can't execute 'D:\keil\C51\BIN\C51.EXE'是设置错误造成的,解决方法为: 1、双击错误跟踪到报错的地方我们可以看到这里就是type定义的地方. 2、到新版的库文件中,注意要消除只读的设置. 3、然后在这个定义的上方补充定义这个宏. 4、#47-D: incompatible redefinition of macro "SCS_BASE" ,问题解决了.

崇州市19442083359: keil c51 的问题 我这样写为什么编译时"led" - 0 Error(s), 2 Warning(s). -
师亲安利: 你的程序编译显示0个错误2个警告,但是没有看出警告在那里,这个程序应该没有问,但是我把代码复制到的我工程文件里面便于了一下没有发现警告,你在看看是不是你编译问题,下面是我的编译输出:compiling Media.c...linking...Program Size: data=9.0 xdata=0 code=160creating hex file from "Media"..."Media" - 0 Error(s), 0 Warning(s).

崇州市19442083359: keil c51已经破解,编译时为什么还出现RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT ? -
师亲安利: 前两个警告( WARNING L16)是指LCD_DSP_CHAR、YUNSUAN这两段子程序没有被调用最后一个(FATAL ERROR L250)是指你程序生成的代码已经超过了芯片的容量了根据以上提示你写的程序基本上没有错误,建议把前两个警告提示的程序注释或删除掉,再试下看生成的代码(就最后code=xxxx那一段)是否已经超出你选择芯片的FLASH大小,看以上提示你选择的芯片应该是4K大小的,也就是说最大容量为4096,如果是STC的话芯片号还要占用几字节的空间,第一行code=5840很显然已经超出容量了.如果确实是芯片选择错误的话可以将芯片型号修改一下,把警告的代码注释掉,再编译就会通过了

崇州市19442083359: 安装的keil软件编译时出错:—错误:无法执行'D:\keil\c51\BIN\A51.exe' 是兼容问题吗?要怎么解决呀? -
师亲安利: 你把KEIL装到它的默认目录试试,就时C:\keil,有可能是这个原因

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网