keil 4编51程序,出现target not created,怎么办?

之前从网上查了下,说可能是没有添加到工程,但是我觉得我应该不是这个问题,因为我写了个简单的P0=0xff;就能编译,是不是我写的太长了?该怎么改啊?多谢多谢
这是我写的程序:http://pan.baidu.com/s/1i3tAn8D
多谢多谢啊~~~

主要是没分了,要不然肯定再多加分

keil要求的C文件名里不能有空格,删掉工程中的C程序,关掉C程序,把你的C程序文件名中的空格去掉,重新加到工程中再编译。

Build target 'Target 1'

compiling 123.c...

SYMBOL: MAIN

MODULE: D:\PROGRAM FILES\KEIL\C51\LIB\C51S.LIB (?C_INIT)

ADDRESS: 0010H

Program Size: data=9.0 xdata=0 code=144

"oiuuo" - 0 Error(s), 2 Warning(s).

新特征

最新的Keil uVision4 IDE,旨在提高开发人员的生产力,实现更快,更有效的程序开发。

uVision4引入了灵活的窗口管理系统,能够拖放到视图内的任何地方,包括支持多显示器窗口。

uVision4在μVision3 IDE的基础上,增加了更多大众化的功能。

多显示器和灵活的窗口管理系统。

系统浏览器窗口的显示设备外设寄存器信息。

调试还原视图创建并保存多个调试窗口布局。

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-04-17
target not created 是说目标无法创建,只要是程序有误导致编译连接出错,一般都是无法生成目标文件(比如HEX)的。

从你的图片来看,能看出2个问题:
1 ERROR L105,说你使用或参考引用了一个被KEIL(优化)忽略的代码段叫ZUIZHONG

2 data=258.0,51的data最大也只有256或128,你用了258,显然有问题;
但是这问题可能不是孤立的,就是说如果你解决了第一个问题,那么这个问题也就随之没有了;比如你的函数段或代码段ZUIZHONG里面声明了很多个局部变量,然而这个段又被KEIL忽略了,但是KEIL忽略的只是代码段,数据段没有忽略,而这个数据段因为代码段的忽略而丢失覆盖分析树的信息,导致KEIL认为该数据段的所有局部数据都是全局数据,不能参与覆盖分析,这样一下子就爆到258了

不知道我有没有说清楚追问

说的好专业啊,不过不大理解,能知道些大概。要参加个学校的比赛,想用51编程做个彩色的led点阵,好不容易写出来了结果出这个问题,比较崩溃。。。

敢问这个怎么改才行啊?能留个联系方式吗?

追答

终于看见了你的程序,zuizhong不是函数,而是个数组,这样的话那就是内存不足的问题,内存不足无非以下个方案:
1 换个芯片,只要这个芯片有一定的XDATA或者EEPROM就可以
2 优化程序,仔细斟酌,看看哪里可以优化内存的使用
比如你的i j k变量,竟然用int,用unsigned char 就可以了,你太奢侈了,这样不仅浪费内存而且耗费CPU时间

3 重新设计程序架构或思路,往大了说就是代码重构

另外,你的程序里有两个函数没有调用,最好把没有用的注释掉,就像我开始讲的,不用的函数虽然会被KEIL自动忽略,但是函数内部局部变量包括传递的参数变量的内存占用是不会被忽略的,当然如果你内存充足那就无所谓,但这毕竟不是好习惯。

实在不行,降低设计要求,别用那么多的灯

本回答被提问者采纳

Keil uvision4出现Target not created什么原因?
一、Keil中出现Target not created,原因主要有:1、编译时出错,比如语法错误,变量未定义等等 2、连接时出错,比如调用外部函数,而由缺少相应的OBJ文件等等 3、其他原因,比如你用Demo版,限制是程序不能大于4K,结果你超过了4K等。二、解决方案:在target1 目录下C51选项 设置\\SiLabs\\MCU\\INC ...

Keil中出现Target not created,怎么办?
最后,尝试清理和重建项目。在Keil中,清理项目会删除所有编译生成的文件,包括目标文件。然后,重新编译项目,看是否还会出现“Target not created”错误。有时候,之前的编译过程可能留下了一些不一致的状态,导致后续编译失败。清理和重建项目可以消除这些不一致状态,从而解决问题。综上所述,解...

Keil中出现Target not created,怎么办?
再次,清理并重新构建项目。在Keil中,可以通过“Project”菜单下的“Clean”选项来清理项目,这会删除所有中间文件。清理完成后,尝试重新构建项目。有时候,旧的中间文件或配置可能会干扰新的构建过程,导致“Target not created”等错误。最后,如果以上步骤都无法解决问题...

Keil中出现“ Target not created”怎么办?
3. **更新或重新安装Keil**:有时候,软件本身的问题可能导致编译失败。尝试更新到最新版本的Keil或重新安装Keil软件。4. **检查代码**:确认代码中没有未定义的变量、函数或类型,确保所有引用的库和头文件都已正确包含。5. **清理项目**:在Keil中执行清理(Clean)操作,以删除旧的编译文件和依赖...

Keil中出现Target not created,怎么办?
Keil中出现“Target not created”错误时,通常的解决方案是检查项目设置、确认目标芯片型号选择正确,并确保所有必需的文件都已正确添加到项目中。当在Keil开发环境中遇到“Target not created”错误时,这通常意味着项目配置存在问题。首先,用户应该检查项目的目标设置。在Keil中,每个...

Keil中出现Target not created怎么办?
首先,这个错误可能源于项目设置不当。在Keil中,每个项目都需要正确配置其目标设备、编译器和链接器等选项。如果这些设置不正确,Keil将无法生成目标文件。例如,如果你选择了一个与你的实际硬件不匹配的目标芯片型号,或者编译器配置有误,就可能导致“Target not created”错误。因此,检查并...

Keil中出现Target not created是什么问题呢?
Keil中出现“Target not created”通常意味着在Keil开发环境中未能成功创建目标工程或编译目标文件。这个问题可能由几个原因导致。首先,检查是否已经正确设置了工程配置,包括选择了正确的微控制器型号、配置了必要的编译选项以及指定了正确的包含路径等。如果配置有误,Keil可能无法正确生成目标文件...

keil中出现targetnotcreated是怎么回事儿啊?求解答,急用啊!
答案:Keil中出现"Target Not Created"错误通常表示无法创建目标设备或仿真环境。这可能是由多种原因导致的,包括但不限于项目配置错误、硬件连接问题或软件安装不完整等。详细解释:1. 项目配置问题:在Keil中,每个项目都是针对特定的目标设备进行的配置。如果项目配置与目标设备不匹配,就可能出现"Target ...

Keil中出现Target not created是什么原因?
在Keil中出现“Target not created”通常意味着编译或链接过程中遇到了问题,导致目标文件无法被成功创建。详细解释如下:1. 编译错误:最常见的原因是源代码中存在编译错误。这可能包括语法错误、类型不匹配、缺少包含文件或库文件等。当编译器试图编译源代码时,如果遇到这些问题,它将停止编译并...

Keil中出现Targetnotcreated怎么办
当在Keil环境中遇到“Target not created”错误时,这通常指示编译器或链接器未能成功生成目标文件(如.hex或.bin文件)。解决这一问题可以从以下几个方面入手:1. **检查项目设置**:确保项目设置中的芯片型号与你的硬件相匹配。错误的芯片型号可能导致编译器无法找到正确的库文件或配置。2. **查看...

相似回答