这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » KEIL 请教各位大侠,KEIL C出现如下信息

共2条 1/1 1 跳转至

KEIL 请教各位大侠,KEIL C出现如下信息

院士
2006-09-17 18:14:16     打赏
KEIL 请教各位大侠,KEIL C出现如下信息



关键词: 请教     各位     大侠     出现     如下     信息    

院士
2006-12-22 22:43:00     打赏
2楼
问 出现如下信息
*** WARNING L15: MULTIPLE CALL TO SEGMENT
    SEGMENT: ?PR?GETKEY?KEY
    CALLER1: ?C_C51STARTUP
    CALLER2: ?PR?CLK_INT?MAIN

说重复调用。我的程序里有几个*.c文件,每个文件都有各自的*.h文件,为什么会提示这个信息?谢了先! 1: 可能是你在不同函数中调用了同一函数估计你把那个同一函数定义成再入的应该就可以了.
不过一般WARNING没有什么关系 2: 编译器发现GETKEY函数可能同时被两个或以上的程序同时调用。定义成为可重入函数吧 3: 调用时产生了嵌套,不理会的话很可能会导致堆栈溢出或其他后果 4: 不定义的话,有时会不行的. 5: 函数被中断处理函数和非中断函数同时调用!强烈建议处理这些警告,否则程序运行起来很可能出现各种莫名奇妙的错误。
处理方法:
第一种:将被警告的函数代码在中断处理函数中重写一遍。
第二种:将被警告的函数定义为可重入函数。
第一种方法最简单,只是代码量大一点而已。第二种方法,本人不建议采用,可能会占用较多的RAM。

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]