标题: 在Keil软件中出现Target not created [打印本页]

作者: wanngfengyun123    时间: 2016-4-20 14:30
标题: 在Keil软件中出现Target not created
调试没错误,但是出现这个

作者: admin    时间: 2016-4-20 14:53
把你的工程文件打包上传过来看一下
作者: wanngfengyun123    时间: 2016-4-20 18:04
admin 发表于 2016-4-20 14:53
把你的工程文件打包上传过来看一下

我的程序吗?
作者: zxc5230    时间: 2016-4-20 19:13
之前好像遇到过这种情况,重启下软件看看,之前我重启后就好了
作者: wanngfengyun123    时间: 2016-4-20 20:42
zxc5230 发表于 2016-4-20 19:13
之前好像遇到过这种情况,重启下软件看看,之前我重启后就好了

还是不行啊
作者: zxc5230    时间: 2016-4-20 20:45
你程序怎么样?发出来给大家看看。不然就是软件问题了
作者: wc86110    时间: 2016-4-20 21:02
在 C51选项那里点击 9 应该能通过,如果原来是默认选8的话。这个与选用的单片机有关。
作者: liuyimao485812    时间: 2016-4-20 22:29
应该是全局变量用的太多,data已经到120,内存超了,应该多用局部变量。
作者: 暗光    时间: 2016-4-21 09:07
用的什么芯片?错误的原因是代码溢出了,也就是太多了,data够,但是code不够,那个WARNING不用管他,主要是下面的那个ERROR提示code尺寸超出,最后的TARGET.......意思是编译未通过。解决办法,如果你的芯片确实用的存储是够的(比如用的STC12,15系列的,一般都买大的了)就在程序设置中改一下编译的模式,如果你用的AT89C52或者传统的51单片机,那储存的ROM是不够的,就算编译通过下载时也会因为不够而代码溢出,程序没办法执行。具体方法再搜索或者再问我吧
作者: 暗光    时间: 2016-4-21 09:07
admin 发表于 2016-4-20 14:53
把你的工程文件打包上传过来看一下

这个问题在于选择编译的芯片ROM不够引起的,不用上传工程文件吧
作者: 1678    时间: 2016-4-21 09:12
程序问题   不会是软件 的  我最开始学得时候经常写错 就不能编译
作者: wanngfengyun123    时间: 2016-4-21 09:39
暗光 发表于 2016-4-21 09:07
这个问题在于选择编译的芯片ROM不够引起的,不用上传工程文件吧

应该就是这个问题,rom 不够,但是不知道要怎么弄? 求支招,谢谢
作者: wanngfengyun123    时间: 2016-4-21 09:42
liuyimao485812 发表于 2016-4-20 22:29
应该是全局变量用的太多,data已经到120,内存超了,应该多用局部变量。

这个问题可以在软件上修改吗?  程序是同学帮忙修改的,在他那边没问题,发给我运行就出现这情况。  并且 我打开其他项目都好着,就这个不行。
作者: wanngfengyun123    时间: 2016-4-21 09:44
暗光 发表于 2016-4-21 09:07
用的什么芯片?错误的原因是代码溢出了,也就是太多了,data够,但是code不够,那个WARNING不用管他,主要 ...

我用的是芯片是 stc89c52,.这个问题可以在软件上修改吗?  程序是同学帮忙修改的,在他那边没问题,发给我运行就出现这情况。  并且 我打开其他项目都好着,就这个不行。
作者: wanngfengyun123    时间: 2016-4-21 09:45
1678 发表于 2016-4-21 09:12
程序问题   不会是软件 的  我最开始学得时候经常写错 就不能编译

  程序是同学帮忙修改的,在他那边没问题(他也是用stc89c52),发给我运行就出现这情况。  并且 我打开其他项目都好着,就这个不行。
作者: wanngfengyun123    时间: 2016-4-21 09:46
暗光 发表于 2016-4-21 09:07
用的什么芯片?错误的原因是代码溢出了,也就是太多了,data够,但是code不够,那个WARNING不用管他,主要 ...

用stc89c52  程序是同学帮忙修改的,在他那边没问题(他也是用stc89c52),发给我,运行就出现这情况。  并且 我打开其他项目都好着,就这个不行。
作者: wanngfengyun123    时间: 2016-4-21 09:52
wc86110 发表于 2016-4-20 21:02
在 C51选项那里点击 9 应该能通过,如果原来是默认选8的话。这个与选用的单片机有关。

改成9 就好了  太感谢了
作者: wc86110    时间: 2016-4-21 12:11
超过一点选9可以通过,一般软件默认是8.
优化或删除部分源码,也可以通过更换单片机型号来解决。
作者: 暗光    时间: 2016-4-21 13:13
wanngfengyun123 发表于 2016-4-21 09:44
我用的是芯片是 stc89c52,.这个问题可以在软件上修改吗?  程序是同学帮忙修改的,在他那边没问题,发给 ...

可以,点project》options for.....》target》code rom size 改成large模式。如果还是这个问题在问我,一般就是这个问题了
作者: wanngfengyun123    时间: 2016-4-21 17:29
wc86110 发表于 2016-4-21 12:11
超过一点选9可以通过,一般软件默认是8.
优化或删除部分源码,也可以通过更换单片机型号来解决。

谢谢大神
作者: wanngfengyun123    时间: 2016-4-21 17:31
1678 发表于 2016-4-21 09:12
程序问题   不会是软件 的  我最开始学得时候经常写错 就不能编译

我把 C51选项  那里改为 9 就通过,原来是默认选8
。谢谢了  现在可以正常运行了
作者: wanngfengyun123    时间: 2016-4-21 17:31
暗光 发表于 2016-4-21 13:13
可以,点project》options for.....》target》code rom size 改成large模式。如果还是这个问题在问我,一 ...

我把 C51选项  那里改为 9 就通过,原来是默认选8
。谢谢了  现在可以正常运行了
作者: 暗光    时间: 2016-4-21 23:52
wanngfengyun123 发表于 2016-4-21 17:31
我把 C51选项  那里改为 9 就通过,原来是默认选8
。谢谢了  现在可以正常运行了

嗯,那个地方是优化代码编译的,但是你的原因是代码太长了,这是根本原因,与是8是9都没有关系,改成9要注意的是,原来你写P0=0XFF,然后写P0=0X00,编译器为了优化代码,就会默认为直往P0寄存器谢了0X00,前面写0XFF的认为是操作同一个寄存器的代码是无用代码,这样有时候会在运行上出错,请注意中间加一个_nop_();
作者: liuzhaoxin1020    时间: 2017-1-2 15:21
问题解决了吗,应该是程序问题
作者: liuzhaoxin1020    时间: 2017-1-2 15:22
感谢分享经验
作者: ArthurKing    时间: 2017-1-19 22:19
wc86110 发表于 2016-4-20 21:02
在 C51选项那里点击 9 应该能通过,如果原来是默认选8的话。这个与选用的单片机有关。

太感谢了,改成9就解决了
作者: metosco    时间: 2017-1-20 16:10
我的这个问题,还是没有解决

作者: 11046722369    时间: 2017-1-21 10:54
可能是你的程序有错误,不能生成hex文件,也有可能是版本的问题 我的keil,如果工程文件太大,就容易出现这个毛病,玄学。
作者: 199419zzq    时间: 2017-1-25 21:01
全局变量用的太多了
作者: 卮酒    时间: 2017-4-17 19:33
请问把C51改成9要怎么改?
作者: HxFor51    时间: 2017-4-17 20:27
也有可能是你的软件MDK没有破解
作者: baoenjiasi5    时间: 2017-4-17 20:53
通常重新启动就好
作者: kiyt    时间: 2017-4-17 21:15
程序问题

作者: 51黑51    时间: 2017-8-17 13:11
ArthurKing 发表于 2017-1-19 22:19
**** 作者被禁止或删除 内容自动屏蔽 ****

在 C51选项那里点击 9 应该能通过,如果原来是默认选8的话。这个与选用的单片机有关。
这个方法我试了,不行啊,怎么办
作者: 51黑51    时间: 2017-8-17 13:12
暗光 发表于 2016-4-21 13:13
可以,点project》options for.....》target》code rom size 改成large模式。如果还是这个问题在问我,一 ...

这个方法也试了,还是不行,可怎么办好
作者: 51黑51    时间: 2017-8-17 18:06
新建个工程,一步一步来,代码一个函数一个函数验证,
作者: 氺魔尊丿    时间: 2017-8-17 19:16
复制内容重建工程,这个是警告,里面你可能定义了不允许的东西
作者: 氺魔尊丿    时间: 2017-8-17 19:18
重建工程,或者是你里面定义了不允许的东西,仔细查看一下
作者: 沉沦之枫叶    时间: 2017-8-17 21:36
这个改一下 xdata,就行了
作者: 宏图物业2011    时间: 2017-8-17 21:43
从下面的错误描述,你这个Keil没有注册,代码大小受限制。另外一方面你这很有可能是工程文件没有建对,要关闭原有的项目文件,然后新建,然后选择芯片型号,然后新建源程序,注意保存为对应文件格式,最后要添加进来。
作者: wumiao    时间: 2017-8-17 23:07
可能是你代码里面数据太多,你把一些数据存储到外部RAM里面去,可以在数据变量定义前面加一个xdata.
作者: liuxueuestc    时间: 2017-8-18 17:04
keil的版本限制了
作者: bao321    时间: 2018-10-17 18:19
暗光 发表于 2016-4-21 13:13
可以,点project》options for.....》target》code rom size 改成large模式。如果还是这个问题在问我,一 ...

我原本的设置就是这样的,还是不行啊
作者: 1051979438    时间: 2020-1-17 16:53
我也出现了这个问题但不知道怎么回事只有18行代码




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1