keil编译提示错误
㈠ keil中出现编译错误,错误信息如下,各位大哥大姐给看看是什么原因谢谢。十分紧急,跪等答案。
你的程序中没有xdata 变量,说明在Keil设置中,内存模式的设置你选择了“small”,只能使用内部RAM,造成你的变量定义超过128Byte(其实除去工作寄存器组和堆栈,实际能使用的RAM少于128字节),这种错误一般应该在链接时出现。方法有两个:1、减少变量定义,2、更改内存模式设置。
㈡ keil编译中出现错误怎么办
1、打开软件project-new project创建一个工程,并为其选择一个存放目录。
2、对工程进行一些配置(project-options for target ‘target 1’)在output选项下的“create HEX file”前打上对号,工程编译之后能够输出一个可以下载的“HEX”文件。
3、为工程添加.C,.h文件,右键单击“source group 1”,应该就可以了。
㈢ keil 编译时出现这样的错误,怎么回事
这个问题分别是重复定义了么,怎么能是没注册呢!!!
对于比较小的程序,一般只有一个c文件和一个头文件,全局变量我们通常会直接定义在c文件中,在程序之前加int i定义。如果要在头文件中定义有以下两种方法:用extern来声明:extern int i;这一句只是对变量i进行声明,在c文件的程序之前必须加上int i进行定义。extern int i=0;这一句声明和定义都做了。
对于大一点的程序,有很多c文件和头文件,这个时候全局变量就必须在头文件中声明(不需要初始化),然后在一个c文件中定义(该初始化的要初始化)。如果在头文件中定义,则编译的时候会出现重复定义的错误。如果只有头文件中声明就会出现没有定义有警告。
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: K
MODULE: 222.obj (222)
出现上述错误则是因为变量k重复定义,把你的头文件中的变量定义前加extern(只是变量声明不用初始化),再在某一个你要调用该变量的c文件的程序之前再定义(注意第一个调用的c文件要负责附带初始化该变量,其他调用的c文件就不需要初始化过程啦)
㈣ 在keil中编译时出现以下问题,希望大虾给予解释。必有重谢
内存空间不够,可能是你程序中定义了太多的变量占用了大量的空间。
拓展:
1、Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。
2、运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。
㈤ keil5,编译出现错误,提示是段太大,怎么办
keil5,编译出现错误,提示是段太大,怎么办?如果是51单片机的话,因为RAM资源很小,所以要尽量节约每一个字节RAM,如果是常量数组就定义成常量,例如 code char datastr[2]={1,2};
如果有外部RAM,则定义到XRAM中,例如:xdata char datastr[2];
能用BIT就不要用char,能用char 就不要用Int。做单片机的话, 还是必须要了解一下其存储结构, 最起码得知道data idata xdata所指的存储区域
idata 指向的片内ram ,大小范围为256字节,所以你一个数组定义在idata段内,不能超过256字节,超过就会报错。
xdata指向的片外ram,大小范围为64KB,你可以将你需要的大容量数组定义在该段内
㈥ 安装的keil软件编译时出错:—错误:无法执行'D:\keil\c51\BIN\A51.exe' 是兼容问题吗要怎么解决呀
不是兼容问题,因为Keil 在执行命令时无法识别中文,所以地址必须是英文。还有,安装目录下找到tools,找到这个命令[C51] PATH="D:\keil\C51\" Path 后面改为 你自己的安装位置就可以 PATH="你安装的位置\C51\"
㈦ 用Keil编程序时编译有错误,怎么才能知道错误是什么呢
每个错误都有自己的标号,你可以根据标号在keil提供的帮助文件中搜索有关的详细内容,按下F1会弹出帮助文档,文档都是英文写的。
另外你双击错误时光标会自动跳到keil认为的错误行,实际错误就在那一行的附近
或者你可以把你的错误放在网络里面搜一搜,一般都会得到答案
㈧ keil编译出现错误 点阵2.c(11): error C231: 'RCLK': redefinition
RCLK重复定义了,在reg52.h文件中已经定于过了RCLK
sbit RCLK = T2CON^5; //定时器2,接收时钟允许位。
㈨ 在keil中,编译时出现错误:Error:fail to execute‘ C:\keil\C51\
在任务栏中有一个品字样的彩色图案,点击它然后在选择Folders/Extensions在Toll Base Folder:后面有一个路径把他改成你自己keil安装路径下C51文件夹的路径就行了!
㈩ 请问各位,keil编译的时候总是提示 错误A15 MISSING FACTOR 是怎么回事啊 跪求了 ,小弟真的着急了。
语法错误,小逗号用错了位置。 比如 jnb p1.3,chuli2 是对的。如果写成jnb ,p1.3,chuli2就多了一个逗号了。 就会missing factor
