在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

編譯PIC程序時RAM使用

麥辣雞腿堡 ? 來源:Microchip微芯 ? 作者:Microchip微芯 ? 2023-01-22 16:33 ? 次閱讀

(1)問:當我在編譯一個PIC的程序時得到這樣的報錯:

::Can't find space for psect rbss_0 in segment BANK0 (error)

這究竟是什么意思?

答:它說明你已經用完了RAM bank0的空間,而且空間還不夠(由rbss_0名稱得出)。在不同的情況下,這樣的報錯也可能是提到class COMBANK的。出現這種報錯,你可能需要做的是,要移動一些變量到bank1,2或3。

你可以在一些全局變量的聲明前加上一個前綴限定符,像bank1,例如:

bank1 int fred;

當然,你應該把會經常訪問的變量歸為一組,并且放置到同一個bank。你不能夠對局部變量、函數的參數來使用bank限定。對于位變量使用bank限定也是可以的。但是,對指針使用bank限定一定要當心,例如:

bank2 char * p;

這是一個指向bank2內char型數據的指針,這個指針本身(p)還是在bank0里的。

下面這個聲明:

bank2 char * bank1 p;

這是一個指向bank2內char型數據的指針,但指針本身是位于bank1里的。

(2)問:為什么編譯器不會自動地開始使用bank1、2、3呢?

答:因為你可以把各自獨立編譯的目標文件鏈接到一起,在鏈接之前是不太可能知道所有的東西是否在存儲空間里放得下,到鏈接時再來重新分配變量到其他bank已經為時太晚了。如果代碼產生器是用不假定某一個變量位于哪個bank的方式來產生代碼,那么它將不得不在每一個RAM訪問之前和之后,都要產生設置和重設 bank選擇位的指令,這將是一個完全不能接受的編譯結果。

即使是嘗試對bank0是否溢出做最好的猜測,對于一個將被編譯的模塊來說也是近乎不可能的——函數調用圖的一點點微小的變化就可能很大程度地改變變量分配的需求。

基于這些原因,我們總結出,除了要求用戶指定bank之外暫時沒有可行的替代方案。(譯者注:這里基本都是針對PICC STD版本而言的,對于PRO版本,因為編譯模式根本改變,前面提到的(1)(2)問題都得到了解決。)

(3)問:我讀了手冊還是不能確切地知道什么東西去了哪里。你能告訴我究竟RAM是怎么來組織的嗎?

答:Bank0是給非const變量使用的,它們有:

1) 局部變量;
    2) 靜態或者全局的變量,沒有用限定符指定到其他bank的;
    3) 中斷寄存器保護;
    4) 臨時位置(它們將盡可能地被放置到common RAM)。

明確地用bankx限定的東西(不包括局部變量和函數參數)會被放到相應的bank。局部變量(例如:函數內部的不是靜態的變量)是不能夠被分配到其他bank去的。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • RAM
    RAM
    +關注

    關注

    8

    文章

    1369

    瀏覽量

    115025
  • 編譯器
    +關注

    關注

    1

    文章

    1642

    瀏覽量

    49291
收藏 人收藏

    評論

    相關推薦

    PIC單片機程序設計的基本結構框架

    為了快速掌握PIC單片機源程序的基本結構,這里給出一個典型的程序結構框架。建立源程序時首先用偽指令TITLE提供程序的標題,接著給出整個
    發表于 11-04 17:18 ?1609次閱讀

    編譯程序時遇到問題

    小弟單片機新手在編譯程序時遇到下列問題,求高手指教!問題截圖在圖片中,源代碼再壓縮文件中
    發表于 10-12 17:27

    如何解決編譯led_on程序時出現的錯誤?

    我在編譯led_on 程序時出現以下錯誤,麻煩大家解答一下
    發表于 07-12 01:14

    如何解決使用MPLAB開發PIC無法通過編譯的問題

    序用PIC18F46K80作為處理器,MPLABX為IDE,在寫完程序時編譯無法通過,會報大量的warning、error。經查閱資料和反復安裝IDE,得出結果是交叉編譯環境安裝不對。
    發表于 11-25 06:08

    kendryte編譯程序時報錯是為什么?

    kendryte編譯程序時報錯
    發表于 09-14 06:18

    PIC系列單片機WINDOWS版反編譯軟件

    PIC系列單片機WINDOWS版反編譯軟件
    發表于 04-14 15:06 ?0次下載

    程序時間控制電路圖

    程序時間控制電路圖
    的頭像 發表于 05-08 15:18 ?1983次閱讀
    <b class='flag-5'>程序時</b>間控制電路圖

    如何選擇PIC單片機的C編譯

    PIC單片機的C編譯器只有HI-TECH公司出品PICC編譯器,和CCS公司的CCS編譯器。還有PIC的生產商Microchip公司自行生產
    發表于 03-29 14:09 ?5442次閱讀

    PIC單片機源程序的模擬仿真設計

    要用C語言開發PIC單片機和模擬仿真調試程序,必須有相應的編譯器,PICC與PICC18的C編譯器是優化的PIC單片機C
    發表于 09-26 15:29 ?2578次閱讀
    <b class='flag-5'>PIC</b>單片機源<b class='flag-5'>程序</b>的模擬仿真設計

    在處理PIC單片機的中斷服務程序時需要注意哪些問題

    PIC與51系列單片機一個顯著的區別就是:PIC只有一個中斷入口地址(為04H),而51有多個中斷源。這樣對PIC來說,無論發生何種中斷程序將自動轉移執行04H處的
    發表于 10-28 16:45 ?2709次閱讀
    在處理<b class='flag-5'>PIC</b>單片機的中斷服務<b class='flag-5'>程序時</b>需要注意哪些問題

    PIC單片機】2.編譯器下載

    PIC單片機】2.編譯器下載
    發表于 11-16 11:51 ?8次下載
    【<b class='flag-5'>PIC</b>單片機】2.<b class='flag-5'>編譯</b>器下載

    使用MPLAB開發PIC無法通過編譯的問題

    序用PIC18F46K80作為處理器,MPLABX為IDE,在寫完程序時編譯無法通過,會報大量的warning、error。經查閱資料和反復安裝IDE,得出結果是交叉編譯環境安裝不對。
    發表于 11-16 19:21 ?31次下載
    使用MPLAB開發<b class='flag-5'>PIC</b>無法通過<b class='flag-5'>編譯</b>的問題

    關于Stm芯片,keil編譯后輸出的信息,查看程序所占用的Flash、RAM空間大小

    ????根據keil編譯輸出的信息code:表示程序代碼部分RO_data:表示程序已經定義的常量(如用const修飾的變量......)RW_data :表示已經初始化的全局變量(已初始化的和未
    發表于 12-02 09:21 ?8次下載
    關于Stm芯片,keil<b class='flag-5'>編譯</b>后輸出的信息,查看<b class='flag-5'>程序</b>所占用的Flash、<b class='flag-5'>RAM</b>空間大小

    關于Stm芯片,keil編譯后輸出的信息,查看程序所占用的Flash、RAM空間大小

    ????根據keil編譯輸出的信息code:表示程序代碼部分RO_data:表示程序已經定義的常量(如用const修飾的變量......)RW_data :表示已經初始化的全局變量(已初始化的和未
    發表于 12-02 09:36 ?9次下載
    關于Stm芯片,keil<b class='flag-5'>編譯</b>后輸出的信息,查看<b class='flag-5'>程序</b>所占用的Flash、<b class='flag-5'>RAM</b>空間大小

    keil編譯之后占用flash、ram大小

    keil編譯之后占用flash、ram大小
    發表于 12-02 11:06 ?11次下載
    keil<b class='flag-5'>編譯</b>之后占用flash、<b class='flag-5'>ram</b>大小
    主站蜘蛛池模板: 国产大片91精品免费观看不卡 | 欧美一级片免费观看 | 国产va免费精品高清在线观看 | 永久黄网站色视频免费观看 | 全部免费a级毛片 | 久草6| 天天怕夜夜怕狠狠怕 | 国产片在线观看狂喷潮bt天堂 | 久久久噜噜噜久久中文字幕色伊伊 | 午夜视频在线观看视频 | 你懂的国产精品 | 天天免费 | 99久热成人精品视频 | 天天久久综合 | 国产成人影视 | 免费看三级黄色片 | 在线a人片免费观看不卡 | 亚洲国产高清人在线 | 视频在线观看网站 | 人人添 | 日韩亚洲欧美日本精品va | 五月天婷婷激情 | 四虎影院永久网站 | 中文字幕在线看精品乱码 | 亚洲免费视频在线观看 | 美女黄网站人色视频免费国产 | 欧洲不卡一卡2卡三卡4卡网站 | 手机成人在线视频 | 免费伦费一区二区三区四区 | 亚洲国产成a人v在线观看 | 国产精品黄页网站在线播放免费 | 免费一区在线观看 | 三级网在线 | 久久在线播放 | 免费大片av手机看片 | 免费黄色大片在线观看 | 老师叫我下面含着精子去上课 | 午夜伦y4480影院中文字幕 | 国产午夜视频在线观看 | 在线观看视频一区二区 | 国产精品久久免费观看 |