c语言编译器error,KEIL C编译器常见警告与错误信息的解决办法
对于函数的自变量、局部变量和全局变量声明如果没有指定内存类型,则内存模式将成为内定的内存类型。如果
指定了内存类型的变量,则不理会内存模式,完全有所指定的内存类型为主。
SMALL模式:小模式
所有的变量,局部变量或全局变量都指定存在内部RAM的 0—0x7F 的地址范围,此模式如同将所有的
变量都定义成 data 类型的内存。
COMPACT模式:压缩模式
所有的变量将被指定到其地址范围为 0—0xFF 的外部数据存储器,此模式如同将所有的变量都定义
成 pdata 类型的内存。
LARGE模式:大模式
所有的变量将被指定到其地址范围为 0—0xFFFF 的外部数据存储器,此模式如同将所有的变量都定义
成 xdata 类型的内存。
Re: Bank Switch無法編譯後的訊息
[QUOTE]原發表者是 Vic
1.*** WARNING L15: MULTIPLE CALL TO SEGMENT
SEGMENT: ?PR?SD_INITIALIZE?DRVSD
CALLER1: ?C_C51STARTUP
CALLER2: ?PR?TIMER0_ISR?INTERRUPT
這表示SD_INITIALIZE這個函式被C_C51STARTUP和中斷服務函式
TIMER0_ISR呼叫到。
這樣會有什麼問題?
若是SD_INITIALIZE被呼叫時,TIMER0_ISR中斷發生而再呼叫
SD_INITIALIZE就會有reentrant(重入)的問題。
Keil C51 一般的函式的區域變數是放在同一個地方的,所以不能被
重入。如果程式保證這樣的情況不會發生(例如呼叫之前先disable
interrupt)可以不理會這個警告。
2.*** ERROR L107: ADDRESS SPACE OVERFLOW
SPACE: XDATA
SEGMENT: ?XD?DRVMS
LENGTH: 0515H
XDATA 使用過量囉!減減肥吧!
3.*** WARNING L17: INTERRUPT FUNCTION IN BANKS NOT ALLOWED
SYMBOL: INT0_ISR
SPACE: BANK0
不可以把中斷函式放在 bank area
4.*** WARNING L4: DATA SPACE MEMORY OVERLAP
FROM: 003FH
TO: 0050H
某些data區被兩個器共用
5.*** ERROR L105: PUBLIC REFERS TO IGNORED SEGMENT
SYMBOL: MEM_POOL
SEGMENT: ?XD?MTM808
6.*** ERROR L118: REFERENCE MADE TO ERRONEOUS EXTERNAL
SYMBOL: SYSTEM_MODE
MODULE: .\debug\mtm808.obj (MTM808)
ADDRESS: 3A7CH
7.*** ERROR L118: REFERENCE MADE TO ERRONEOUS EXTERNAL
SYMBOL: ADPCM_STATE
MODULE: .\debug\SystemManager.obj (SYSTEMMANAGER)
ADDRESS: 358FH
參照到一個無法使用的記憶段(可為前面之over fllow錯誤引起)
13.*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL
SYMBOL: DATEI
MODULE: .\mtm809.LIB (CMDIF)
找不到external symbol的實體,所以無法連結
c语言编译器error,KEIL C编译器常见警告与错误信息的解决办法相关推荐
- ftp 查看不了图片_几个常见的ftp错误问题及解决办法
1.无法上传网页,提示"无法连接服务器"错误: 原因:FTP客户端程序设置问题,客户上网线路问题,ftp服务器端问题. 解决方法:使用CUTPFTP软件来上传客户的网页,在&quo ...
- error LNK2038: 检测到“RuntimeLibrary”的不匹配项的解决办法
error LNK2038: 检测到"RuntimeLibrary"的不匹配项的解决办法 原因:这是一个编译器错误,通常是由于链接器找不到所需的运行时库而导致的.需要检查编译器和链 ...
- 常见的Nginx 502 Bad Gateway解决办法
常见的Nginx 502 Bad Gateway解决办法如下: Nginx 502错误情况1: 网站的访问量大,而php-cgi的进程数偏少. 针对这种情况的502错误,只需增加php-cgi的进程数 ...
- 5 个 Android 开发中比较常见的内存泄漏问题及解决办法
Android开发中,内存泄漏是比较常见的问题,有过一些Android编程经历的童鞋应该都遇到过,但为什么会出现内存泄漏呢?内存泄漏又有什么影响呢? 在Android程序开发中,当一个对象已经不需要再 ...
- linux下hg无法运行_Linux 无法启动常见的几种原因及解决办法
导致 Linux 无法启动的原因有很多,下面良许小编就将常见的几种原因及解决办法进行详述,希望对大家有所帮助. 文件系统配置不当,如 /etc/inittab文件./etc/fstab 文件等配置错误 ...
- Keil MDK 工程输入中文汉字编译报错解决办法
Keil MDK 工程输入中文汉字编译报错解决办法 官方说明:https://www.keil.com/support/man/docs/armcc/armcc_chr1359124934197.ht ...
- java检测音频爆音_常见的爆音问题及其解决办法
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 常见的爆音问题及其解决办法一.什么情况下会出现爆音? 1.声卡的延迟(LATENCY)设置不当引起的爆音 2.Win98操作系统对设备.系统缓存等的管理不 ...
- VS2019遇见的常见错误之一及其解决办法( MSB803 找不到Windows SDK版本 10.0.18362.0.请安装所需版本的 Windows SDK,或者在项目属性页中或通过右键单击解决
VS 2019 遇见的常见错误之一及其解决办法( MSB803 找不到Windows SDK版本 10.0.18362.0.请安装所需版本的 Windows SDK,或者在项目属性页中或通过右键单击解 ...
- springboot项目报错:ERROR 9112 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] 的解决办法
启动springboot项目,访问页面后报错 报错信息如下: [nio-8087-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.ser ...
最新文章
- 11月第三周.COM增13.8万 ×××域名.XXX减9个
- BZOJ-1878: [SDOI2009]HH的项链(莫队算法)
- Android中状态栏的隐藏
- android 的命令行工具(dos命令)
- Android activity之间的滑入切换
- CORS 跨域-同源
- 币安Binance.client can‘t find the module client 解决办法
- 杭州云栖大会阿里云放大招,8K远程医疗会诊引关注
- python中的参数函数_python中函数与参数的简介
- 04737 c++ 自学考试2019版 第四章课后练习 	程序设计题 2
- java代码调用python_java调用python代码-阿里云开发者社区
- CentOS 7 Linux实时内核下的epoll性能分析后续 | 火焰图分析
- 三层交换和二层交换之间的端口聚合
- 最为完整的gdb调试
- 10_android打包的过程
- 10 个超棒的 jQuery 视频插件
- 数控铣削图案及编程_数控铣削编程与操作设计有全套图纸.doc
- win10 ISO文件下载
- 珊瑚橙怎么配色配色?橙色优学教你如何玩转2019年度流行色
- 苹果退款_教程:在 iTunes 申请 App Store 退款