keilkeil5 编译慢总是有警告,不知道是哪里的问题

KEIL编译时有一个警告,有问题吗?_百度知道
KEIL编译时有一个警告,有问题吗?
Build target 'Target 1'compiling Text1.c...linking...*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?_VOIDERROR_DS?TEXT1creating hex file from &dodo&...&dodo& - 0 Error(s), 1 Warning(s).
我有更好的答案
这个警告不会影响你的运行结果,没问题,只是因为有子程序你没有用到而已。
那怎样调用 那个子程序?
不调用也可以,删除就好了,调用方法跟其他子程序一样,函数名(参数)
高级工程师
程序中,有多余的、你并没有使用的函数。
为您推荐:
其他类似问题
keil的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。各位大神,为什么keil编译AT指令的时候显示出错_百度知道
各位大神,为什么keil编译AT指令的时候显示出错
我有更好的答案
编译错误,与AT指令无关,是因为你的语法错误。发送AT指令要用字符串,要用双引号表示AT指令。
采纳率:92%
来自团队:
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Keil编译错误汇总
\Objects\mystm32.axf: Error: L6218E: Undefined symbol assert_param (referred from stm32f10x_flash.o).
打开stm32f10x_conf.h知:
/* Exported macro
The assert_param macro is used for function's parameters check.
expr: If expr is false, it calls assert_failed function which reports
the name of the source file and the source line number of the call
that failed. If expr is true, it returns no value.
* @retval None
/* Exported functions
void assert_failed(uint8_t* file, uint32_t line);
这个意思就是说如果定义了 USE_FULL_ASSERT,那么就接着定义assert_param(expr)这个函数,也就是当expr为真时空语句操作,不用管,为假时执行assert_failed((uint8_t *) FILE, LINE)),表示函数的作用在库函数中有解释,用来指示出错的行数和文件。但没有定义 USE_FULL_ASSERT的话无操作。
void assert_failed(u8* file, u32 line) {
while (1) { } }
故assert_param(expr):检查参数expr是否有效
USE_FULL_ASSERT在这里只是一个宏开关,跟STM32F10X_MD,USE_STDPERIPH_DERIVER他们是一样的,可手动添加(将stm32f10x_conf.h里面相应的注释去掉),或者直接添加(options里面的c/c++ define)
..\..\Libraries\CMSIS\stm32f10x.h(298): error: #67: expected a "}"
ADC1_2_IRQn = 18, /*!& ADC1 and ADC2 global Interrupt */
..\..\Libraries\CMSIS\stm32f10x.h(472): warning: #12-D: parsing restarts here after previous syntax error
在C/C++选项卡里,把STM3210X_HD从prepocessor symbol define 里面删掉`(∩_∩)′
这么做的原因:在老版本的官方STM32F10X.H文件里,这句话不是这么写的,若没记错的话,是
…&&!defined(STM32F10X_HD) && …
原来是有括号的,不做标识符来处理,而新版的,如图,直接说明了出来,那就没有必要,可以根据C/C++知识自己去推断;
具体可以看搜“[STM32系列贴-初级]之STM32F10X工程建立详细过程及问题解决”
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!怎么忽略KEIL的警告_百度知道
怎么忽略KEIL的警告
我有更好的答案
keil编译时,有警告,说明有问题,但可以编译生成HEX代码文件。如果要忽略就直接使用HEX代码文件好了,想下载到单片机里就下载,想仿真就运行程序。总之,就是不考虑警告就行了。不过,有些警告,还是要查找原因的,不然,虽然编译了,但因程序有问题,运行后可能不是想用的结果。
采纳率:92%
本回答被提问者采纳
用了几年的Keil,有时候会很烦那些编译时的警告,类似WARNING L16:UNCALLED SEGMENT、WARNING L15:MULTIPLE CALL,写程序的我们如果知道这些是没有问题的,就可以把这些警告给忽略掉,从而可以更专注的去解决其它地方出现的问题!如上图,打开工程的Option for Target,在BL51 Misc下面有一个Warnings:Disable Warning Numbers输入框,在框里输入需要被忽略警告的编号,如WARNING L15则输入15,如有多个则用逗号隔开,如此编译器在链接时便不会再提示这个警告!上图所用Keil版本:
KEIL的警告你可以直接无视就可以啊,编译完成后会显示错误数和警告数以及是否编译成功等信息,你只要知道没有发现error就行了
其他1条回答
为您推荐:
其他类似问题
您可能关注的内容
泡泡的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Keil 51编译问题! 用Keil 51编译程序时,出现警告: MISSING DEVICE(SECURITY KEY NOT FOUND) 不知道怎_百度知道
Keil 51编译问题! 用Keil 51编译程序时,出现警告: MISSING DEVICE(SECURITY KEY NOT FOUND) 不知道怎
望给点有水准的答案,谢谢
我有更好的答案
LL TO SEGMENT这个问题必须注意,可能引起程序冲突,假设你用于自动化领域,则可能导致信号产生尖峰。 产生这一警告的一个根源是:你在主循环里调用了一个函数(如aaa),而在中断服务函数里,你用调用了这个函数(如aaa)。这样当主循环运行到该函数中是,一旦产生中断,则在中断里又再次调用该函数!这时,很可能出错! 避免这种情况的方法很多:如,在进中断的时候置需调用该函数的标志,而在主循环中调用该函数你可以在中断函数设置标志 FLAG_Display = 1; 在主函数里判断这个标志:
if(FLAG_Display)
ValueDisplay(); 更新后,清除显示标志:
FLAG_Display = 0;
很不幸,正确的答案是和proteus联调设置出了点小问题,现在好了。还是很谢谢你的大力支持哈。我就是积分少,不然分你点,嘿嘿
采纳率:21%
按照Keil官方论坛的说法,你可能在用评估版吧,或者是没有合法的License。评估版的部分功能是受限的。找个License激活或者找个破解版的。
使用的是非破解版的吧!
你是怎样调的会来的,我也出现了问题啊???????????
其他1条回答
为您推荐:
其他类似问题
编译程序的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 keil5 编译慢 的文章

 

随机推荐