*** ERROR L107: ADDRESS SPACE OVERFLOW
我編譯的一個C語言程式出現了這樣的錯誤,不能生成HEX檔案,請問是什麼原因,該怎麼解決,謝謝!
*** WARNING L15: MULTIPLE CALL TO SEGMENT
SEGMENT: ?PR?LCD_WRITE?1001
CALLER1: ?PR?INT_0?1001
CALLER2: ?C_C51STARTUP
*** ERROR L107: ADDRESS SPACE OVERFLOW
SPACE: DATA
SEGMENT: _DATA_GROUP_
LENGTH: 0031H
Program Size: data=126.2 xdata=0 code=2838
Target not created
我使用的晶片是89S52
解決方案:
1.右鍵單擊Target選擇“Options for Target'Target1'”就會出來一個框,在memory model中選擇
compact:variables in pdata 就可以了。
“Keil Cx51編譯器提供三條編譯模式控制命令:SMALL,COMPACT,LARGE,它們對變數儲存器空間的影
響如下。
SMALL:所有變數都被定義在8051微控制器的片內RAM中,對這種變數的訪問速度最快。另外,堆疊也必
須位於片內RAM中,而堆疊的長度是很重要的,實際棧長取決與不同函式的巢狀深度。採用SMALL編譯
模式與定義變數時指定data儲存器型別具有相同效果。
COMPACT:所有變數被定義在分頁定址的片外XRAM中,每一頁片外XRAM的長度為256位元組。這時對變數
的訪問是通過暫存器間接定址(MOVX @R0,MOVX @R1)進行的,變數的低8位地址由R0和R1確定,變數
的高8位地址由P2口確定。採用這種模式時,必須適當改變配置檔案STARTUP.A51中的引數:PDATASTART
和PDATALEN;同時還必須對uVision2的“Options選項/BL51 Locator 標籤頁/Pdata框”中鍵入合適的
地址引數,以確保P2口能輸出所需要的高8位地址。採用COMPACT編譯模式與定義變數時指定pdata儲存器
型別具有相同效果。
LARGE:所有變數被定義在片外XRAM中(最大可達64KB),使用資料指標DPTR來間接訪問變數
(MOVX @DPTR),這種編譯模式對資料訪問的效率最低,而且將增加程式的程式碼長度。採用LARGE
編譯模式與定義變數時指定xdata儲存器型別具有相同效果。”
*** WARNING L15: MULTIPLE CALL TO SEGMENT
SEGMENT: ?PR?LCD_WRITE?1001
CALLER1: ?PR?INT_0?1001
CALLER2: ?C_C51STARTUP
*** ERROR L107: ADDRESS SPACE OVERFLOW
SPACE: DATA
SEGMENT: _DATA_GROUP_
LENGTH: 0031H
Program Size: data=126.2 xdata=0 code=2838
Target not created
我使用的晶片是89S52
解決方案:
1.右鍵單擊Target選擇“Options for Target'Target1'”就會出來一個框,在memory model中選擇
compact:variables in pdata 就可以了。
“Keil Cx51編譯器提供三條編譯模式控制命令:SMALL,COMPACT,LARGE,它們對變數儲存器空間的影
響如下。
SMALL:所有變數都被定義在8051微控制器的片內RAM中,對這種變數的訪問速度最快。另外,堆疊也必
須位於片內RAM中,而堆疊的長度是很重要的,實際棧長取決與不同函式的巢狀深度。採用SMALL編譯
模式與定義變數時指定data儲存器型別具有相同效果。
COMPACT:所有變數被定義在分頁定址的片外XRAM中,每一頁片外XRAM的長度為256位元組。這時對變數
的訪問是通過暫存器間接定址(MOVX @R0,MOVX @R1)進行的,變數的低8位地址由R0和R1確定,變數
的高8位地址由P2口確定。採用這種模式時,必須適當改變配置檔案STARTUP.A51中的引數:PDATASTART
和PDATALEN;同時還必須對uVision2的“Options選項/BL51 Locator 標籤頁/Pdata框”中鍵入合適的
地址引數,以確保P2口能輸出所需要的高8位地址。採用COMPACT編譯模式與定義變數時指定pdata儲存器
型別具有相同效果。
LARGE:所有變數被定義在片外XRAM中(最大可達64KB),使用資料指標DPTR來間接訪問變數
(MOVX @DPTR),這種編譯模式對資料訪問的效率最低,而且將增加程式的程式碼長度。採用LARGE
編譯模式與定義變數時指定xdata儲存器型別具有相同效果。”
相關文章
- ERROR L107: ADDRESS SPACE OVERFLOW keil錯誤的解決方法Error
- HPUX Error 23 File table overflowUXError
- An internal error has occurred. Java heap spaceErrorJava
- InnoDB: Error: space id and page n:o stored in the page?Error
- openGauss 出現-Error-No-space-left-on-device-提示Errordev
- kernel 中WiFi模組報錯:device not accepting address .error -71WiFidevError
- [ERROR]Space id in fsp header but in the page header一列ErrorHeader
- ORA-00600: internal error code, arguments: [729], [4280], [space leak]Error
- Linux-x86_64 Error: 28: No space left on device問題LinuxErrordev
- bind (ERROR 502): bind(0.0.0.0:8811) failed. Error: Address already in use [98] (埠被佔用)ErrorAI
- CSS overflowCSS
- ORA-27102: out of memory Linux Error: 28: No space left on deviceLinuxErrordev
- Error 945 Database cannot be opened due to inaccessible files or insufficient memory or disk spaceErrorDatabase
- 如何不使用 overflow: hidden 實現 overflow: hidden
- CSS text-overflowCSS
- CSS overflow-wrapCSS
- Hilbert Space
- ORA-27102: out of memory Linux-X86_64 Error: 28: No space left on deviceLinuxErrordev
- bdump下量trc檔案,NS Primary Error: TNS-12533: TNS:illegal ADDRESS parametersError
- 神奇的overflow屬性
- startup ORA-27102: out of memory Linux-x86_64 Error: 28: No space left on deviceLinuxErrordev
- No space left on devicedev
- Tablespace Space Script
- Golang cannot take the address ofGolang
- 相容所有瀏覽器overflow-x:hidden或者overflow-y:hidden瀏覽器
- CSS3 text-overflowCSSS3
- CSS---text-overflow屬性CSS
- 170420-css-overflow-relatedCSS
- CSS3 overflow-wrapCSSS3
- time wait bucket table overflowAI
- CSS文字:text-overflow(轉)CSS
- Understanding Buffer Overflow Bugs
- show_space.sqlSQL
- Oracle DBMS_SPACEOracle
- space.itpub印象
- Java Get local IP addressJava
- 組播地址Multicase address
- Mac address setting For RedhatMacRedhat