久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
    分享

    IAR MSP430設(shè)置合理堆棧大小

     心不留意外塵 2016-04-11
     2012-12-22 22:01:52
    from http://blog./uid-9112803-id-3447923.html

     (solve "the stack pointer for stack is outside the stack range")

    摘要:

        本文給出IAR設(shè)置堆棧合理大小的詳細方法,并分享一些好博文(icf及map講解)。


        最近在MSP430-169LCD(MSP430F169,RAM為2KB)調(diào)試一些ucos演示例子,IAR for MSP430默認的堆棧大小是80字節(jié),編譯可以通過,運行結(jié)果不確定性,調(diào)試過程會提示"the stack pointer for stack is outside the stack range",堆棧溢出。那么,到底設(shè)置多大的堆棧夠用且不浪費呢。

    一、合理設(shè)置堆棧大小

    首先,查看程序共需要多大的堆棧,生成map文件,方法如下:

    圖1 生成map文件

        生成的map文件在項目目錄下的/Debug/List,打開map文件在CALL GRAPH找到找到棧的最大使用量(我的理解是main主函數(shù),用棧最多,所以直接拉到文件末尾,靠近SEGMENTS IN ADDRESS ORDER的地方),如下圖所示:

    圖2 最大棧使用

        由上圖可知,最大棧使用量是00000076(注意這里是16進制),即118字節(jié)。

    接著,設(shè)置堆棧大小,方法如下,可以設(shè)置比最大棧稍微大一些:-)

    圖3 設(shè)置棧大小


    二、一點小心得

    通過上述方法,設(shè)置堆棧后,再編譯有可能會報如下連接錯誤(受限的內(nèi)存遠不夠使用):

    圖4 內(nèi)存不夠用鏈接錯誤

    此時,唯一的辦法就是重新設(shè)計程序了。在單片機上跑uC/OS,可以通過以下方法來減少內(nèi)存使用:

        (1)如果是跑uC/OS,可以在os_cfg.h文件配置系統(tǒng),如將最大任務(wù)數(shù)(OS_MAX_TASKS)設(shè)小一些,關(guān)掉一些擴展功能(以EN結(jié)尾的變量)

        (2)將一些局部變量數(shù)組設(shè)成全局變量(我就遇到這個問題,我想在MSP430-169LCD完成類似printf功能,難免需要一些字符數(shù)組)


    三、我的疑問

        在實際調(diào)試過程中,盡管我把堆棧設(shè)得比查看map文件堆棧要大得多(map文件是0x76,即118,我設(shè)成250),調(diào)試的時候,依然有這個問題,如下:

    1. Sat Dec 22, 2012 22:23:21: The stack pointer for stack 'Stack' (currently Memory:0x55A) is outside the stack range (Memory:0x906 to Memory:0xA00)

        很費解,求指點Jelline@126.com


    四、一些好資料

    [1] 博文《IAR常見段名含義

    [2] 博文《深入剖析之通過IAR MAP文件查看目標文件內(nèi)存分配

    [3] 博文《寫在"五一"之解析IAR的ILINK鏈接器icf配置文件

    [4] 博文《IAR堆棧分配原則

      本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
      轉(zhuǎn)藏 分享 獻花(0

      0條評論

      發(fā)表

      請遵守用戶 評論公約

      類似文章 更多

      主站蜘蛛池模板: 潮喷失禁大喷水无码| 香蕉EEWW99国产精选免费| 美女黄18以下禁止观看| 久久亚洲精品无码AV| 无码精品人妻一区二区三区免费看| 在线观看免费人成视频播放| 丰满爆乳一区二区三区| 最近中文字幕国产精品| 亚洲国模精品一区二区| 亚洲人妻一区二区精品| 国产午夜福利小视频合集| 国产成人午夜福利在线观看| 国产精品无码不卡一区二区三区| 无码中文人妻视频2019| 国产精品免费中文字幕| 亚洲欧美卡通另类丝袜美腿| 色8久久人人97超碰香蕉987 | jizzjizz少妇亚洲水多| 翘臀少妇被扒开屁股日出水爆乳| 国产成人久久精品流白浆| 国产AV激情久久无码天堂| 亚洲日韩精品无码一区二区三区| 人人人澡人人肉久久精品| 天干天干天啪啪夜爽爽色| 国内极度色诱视频网站| 无遮挡拍拍拍免费观看| 黑巨茎大战俄罗斯美女| 亚洲成av人片无码天堂下载| 亚洲欧美日韩愉拍自拍美利坚| 成人无码影片精品久久久| 色屁屁WWW免费看欧美激情| 亚洲精品成人福利网站| 亚洲精品无码久久久久SM| 日韩大片高清播放器大全| 中文字幕久久国产精品| 精品无码国产自产拍在线观看| 又爽又黄又无遮掩的免费视频| 亚洲中文字幕久久精品无码喷水| 强行无套内大学生初次| 免费国产一区二区不卡| 99精品国产99久久久久久97|