色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

    瀏覽量

    114879
  • 編譯器
    +關注

    關注

    1

    文章

    1642

    瀏覽量

    49229
收藏 人收藏

    評論

    相關推薦

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

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

    編譯程序時遇到問題

    小弟單片機新手在編譯程序時遇到下列問題,求高手指教!問題截圖在圖片中,源代碼再壓縮文件中
    發表于 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 ?1966次閱讀
    <b class='flag-5'>程序時</b>間控制電路圖

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

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

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

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

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

    PIC與51系列單片機一個顯著的區別就是:PIC只有一個中斷入口地址(為04H),而51有多個中斷源。這樣對PIC來說,無論發生何種中斷程序將自動轉移執行04H處的
    發表于 10-28 16:45 ?2690次閱讀
    在處理<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>大小
    主站蜘蛛池模板: 动漫美女搞鸡| 野花影院手机在线观看 | 精品无码久久久久久动漫| 内射气质御姐视频在线播放| 无码国产欧美日韩精品| 最新国产在线视频| 国产中文字幕乱码免费| 肉动漫3D卡通无修在线播放| 60岁老年熟妇在线无码| 国产一区二区不卡老阿姨| 欧美视频 亚洲视频| 亚洲中文字幕一二三四区苍井空 | 亚洲 欧美 制服 视频二区| gayxxxxgay呻吟受日本| 久久99国产视频| 亚洲 欧美 国产 综合久久| 草莓视频在线免费观看| 麻豆精选2021| 亚洲三级在线看| 国产精品免费观看视频| 日本电影护士| 啊好大好厉害好爽真骚| 男生jj插入女生jj| 中文字幕精品AV内射夜夜夜| 果冻传媒MV免费播放在线观看| 桃花在线观看播放| 成a人片亚洲日本久久| 暖暖 免费 高清 日本视频5| 中文字幕国产在线观看| 九九热最新视频| 亚洲一区二区三区免费看| 果冻传媒视频在线播放| 亚洲成人国产| 海角社区在线视频播放观看| 亚洲精品免费在线| 果冻传媒视频在线播放 免费观看| 亚洲成人三级| 国产在线自天天人人| 亚洲精品AV无码重口另类| 国产女高清在线看免费观看| 无码人妻丰满熟妇区五十路久久|