keil 4编51程序,出现target not created,怎么办?
之前从网上查了下,说可能是没有添加到工程,但是我觉得我应该不是这个问题,因为我写了个简单的P0=0xff;就能编译,是不是我写的太长了?该怎么改啊?多谢多谢这是我写的程序...
之前从网上查了下,说可能是没有添加到工程,但是我觉得我应该不是这个问题,因为我写了个简单的P0=0xff;就能编译,是不是我写的太长了?该怎么改啊?多谢多谢
这是我写的程序:http://pan.baidu.com/s/1i3tAn8D
多谢多谢啊~~~
主要是没分了,要不然肯定再多加分 展开
这是我写的程序:http://pan.baidu.com/s/1i3tAn8D
多谢多谢啊~~~
主要是没分了,要不然肯定再多加分 展开
2个回答
展开全部
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的基础上,增加了更多大众化的功能。
多显示器和灵活的窗口管理系统。
系统浏览器窗口的显示设备外设寄存器信息。
调试还原视图创建并保存多个调试窗口布局。
展开全部
target not created 是说目标无法创建,只要是程序有误导致编译连接出错,一般都是无法生成目标文件(比如HEX)的。
从你的图片来看,能看出2个问题:
1 ERROR L105,说你使用或参考引用了一个被KEIL(优化)忽略的代码段叫ZUIZHONG
2 data=258.0,51的data最大也只有256或128,你用了258,显然有问题;
但是这问题可能不是孤立的,就是说如果你解决了第一个问题,那么这个问题也就随之没有了;比如你的函数段或代码段ZUIZHONG里面声明了很多个局部变量,然而这个段又被KEIL忽略了,但是KEIL忽略的只是代码段,数据段没有忽略,而这个数据段因为代码段的忽略而丢失覆盖分析树的信息,导致KEIL认为该数据段的所有局部数据都是全局数据,不能参与覆盖分析,这样一下子就爆到258了
不知道我有没有说清楚
从你的图片来看,能看出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自动忽略,但是函数内部局部变量包括传递的参数变量的内存占用是不会被忽略的,当然如果你内存充足那就无所谓,但这毕竟不是好习惯。
实在不行,降低设计要求,别用那么多的灯
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询