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

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

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

3天內不再提示

STM32CubeIDE實用技巧之配置Heap空間

jf_pJlTbmA9 ? 來源:STM32單片機 ? 作者:STM32單片機 ? 2023-10-31 17:30 ? 次閱讀

問題描述

近日接到一客戶需求,其欲在 STM32CubeIDE 中指定堆(Heap)的地址到某一專用的RAM 中。

問題分析

STM32CubeIDE 生成的工程中,默認的堆棧配置示意圖如圖 1 所示:

wKgaomUD4ciAXRBlAADddNVIirg587.png

解決方法

通過 STM32CubeIDE 生成的工程中,會默認生成 sysmem.c。這個文件中的

__sbrk_heap_end 指針默認賦值為 NULL,我們只需要更改這個指針為目標地址即可達到期望。

例如:默認配置是“static uint8_t *__sbrk_heap_end = NULL;”我們希望將堆的地址分配到 0x20001000 為起始的空間上,可以這樣做:

“static uint8_t *__sbrk_heap_end = (uint8_t*)0x20001000;”

注意:由于堆(heap)向上增長,棧(stack)向下增長,所以在手動更改堆的起始地址時,如果定義的堆和棧空間存在重疊區域,STM32CubeIDE 無法識別這種情形,用戶應當避免這樣的設置。

驗證

在 STM32CubeIDE 生成的串口打印的工程,然后按照上面示例修改 sysmem.c 中的__sbrk_heap_end 參數。

wKgZomUD4cuAO0nvAACsjQXEThg382.png
wKgZomUD4c2AXBrGAABlsW52NXc575.png

可以看到 heap_pointer 指針通過 malloc 申請到的地址,已經指向了目標 RAM 范圍內了。

注意,這里我們在 0x20001000 開始的位置申請了 10 個字節的空間,理論上heap_pointer 應當從 0x20001000 開始計算,但是由于 malloc 在申請的地址時,會占用 8個字節用來存儲狀態等信息,所以 heap_pointer 指針從 0x20001008 開始。這是STM32CubeIDE 使用了 newlib 庫來實現 malloc 的機制所致,不影響用戶的使用。

來源:STM32單片機

審核編輯:湯梓紅

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

    關注

    8

    文章

    1391

    瀏覽量

    116976
  • STM32
    +關注

    關注

    2291

    文章

    11019

    瀏覽量

    362998
  • 串口
    +關注

    關注

    14

    文章

    1586

    瀏覽量

    79325
  • 指針
    +關注

    關注

    1

    文章

    484

    瀏覽量

    71073
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    STM32CubeIDE入門教程 STM32CubeIDE安裝使用教程

    STM32CubeIDE是一個高級C / C ++開發平臺,具有用于STM32微控制器和微處理器的外設配置,代碼生成,代碼編譯和調試功能。它基于Eclipse??/ CDT框架和GCC工具鏈進行開發,并基于GDB進行調試。它允許
    的頭像 發表于 06-08 09:19 ?1.1w次閱讀
    <b class='flag-5'>STM32CubeIDE</b>入門教程 <b class='flag-5'>STM32CubeIDE</b>安裝使用教程

    STM32CubeIDE軟件實現STM32外部中斷實例

    本文用STM32CubeIDE軟件實現STM32外部中斷實例。
    的頭像 發表于 08-24 09:09 ?4826次閱讀

    STM32CubeIDE SWV功能介紹

    01 引言 STM32CubeIDE是ST官方推出的集成開發環境,集成了很多STM32的調試與開發工具。本文主要介紹如何使用SWV功能來打印輸出。 02 問題描述 客戶使用STM32CubeIDE
    的頭像 發表于 10-13 14:20 ?4133次閱讀
    <b class='flag-5'>STM32CubeIDE</b> SWV功能介紹

    Ubuntu 18.04 安裝 STM32CubeIDE 小記

    Ubuntu 18.04 安裝 STM32CubeIDE 小記
    發表于 11-18 17:36 ?9次下載
    Ubuntu 18.04 安裝 <b class='flag-5'>STM32CubeIDE</b> 小記

    STM32CubeIDE使用

    參考STM32CubeIDE屬于一站式工具,本文帶你體驗它的強大第一個STM32CubeIDE項目STM32CubeIDE使用記錄STM32CubeIDE使用筆記(03):使用ST-L
    發表于 12-02 17:21 ?29次下載
    <b class='flag-5'>STM32CubeIDE</b>使用

    STM32CubeIDE初識

    STM32CubeIDE初識
    發表于 12-02 18:36 ?23次下載
    <b class='flag-5'>STM32CubeIDE</b>初識

    STM32CubeIDE安裝-NSIS Error問題

    STM32CubeIDE安裝-NSIS Error問題
    發表于 12-03 21:06 ?18次下載
    <b class='flag-5'>STM32CubeIDE</b>安裝-NSIS Error問題

    STM32CubeIDE的MCU開發

    以前做stm32嵌入式開發均使用的是破解版的keil軟件,現在工作需要無法按照此步驟進行,最近針對ST官方免費軟件STM32CubeIDE進行了相關調研工作。1 STM32CubeIDE簡介目前主流
    發表于 12-05 12:21 ?25次下載
    <b class='flag-5'>STM32CubeIDE</b>的MCU開發

    STM32CubeIDE生成的工程

    近日接到一客戶需求,其欲在 STM32CubeIDE 中指定堆(Heap)的地址到某一專用的RAM 中。
    的頭像 發表于 07-27 09:40 ?2048次閱讀

    STM32CUBEIDE(1)----安裝

    概述 STM32CubeIDE是一體式多操作系統開發工具,是STM32Cube軟件生態系統的一部分。 STM32CubeIDE是一種高級C/C++開發平臺,具有STM32微控制器和微處
    的頭像 發表于 11-22 09:52 ?1669次閱讀
    <b class='flag-5'>STM32CUBEIDE</b>(1)----安裝

    STM32CubeIDE安裝指南

    電子發燒友網站提供《STM32CubeIDE安裝指南.pdf》資料免費下載
    發表于 08-01 15:44 ?6次下載
    <b class='flag-5'>STM32CubeIDE</b>安裝指南

    巧用 STM32CubeIDE 編譯警告

    巧用 STM32CubeIDE 編譯警告
    的頭像 發表于 10-25 16:33 ?1408次閱讀
    巧用 <b class='flag-5'>STM32CubeIDE</b> <b class='flag-5'>之</b>編譯警告

    STM32CubeIDE實用技巧仿真帶外擴FLASH的工程

    電子發燒友網站提供《STM32CubeIDE實用技巧仿真帶外擴FLASH的工程.pdf》資料免費下載
    發表于 09-19 16:55 ?8次下載
    <b class='flag-5'>STM32CubeIDE</b><b class='flag-5'>實用技巧</b><b class='flag-5'>之</b>仿真帶外擴FLASH的工程

    STM32CubeIDE實用技巧配置空間

    電子發燒友網站提供《STM32CubeIDE實用技巧配置空間.pdf》資料免費下載
    發表于 09-19 15:07 ?8次下載
    <b class='flag-5'>STM32CubeIDE</b><b class='flag-5'>實用技巧</b><b class='flag-5'>之</b><b class='flag-5'>配置</b>堆<b class='flag-5'>空間</b>

    STM32CubeIDE實用技巧ld鏈接文件

    電子發燒友網站提供《STM32CubeIDE實用技巧ld鏈接文件.pdf》資料免費下載
    發表于 09-20 10:31 ?2次下載
    <b class='flag-5'>STM32CubeIDE</b><b class='flag-5'>實用技巧</b><b class='flag-5'>之</b>ld鏈接文件
    主站蜘蛛池模板: 男女交性无遮挡免费视频 | 四虎免费影院4hu永久免费 | 免费 视频 | 手机在线看a | 免费黄视频网站 | 色婷婷激情| 天天摸天天操天天射 | 国模爱爱| 奇米影视亚洲狠狠色777不卡 | 午夜影剧院 | 四虎影酷 | 视频免费在线观看 | 91成人午夜性a一级毛片 | 国产成人av在线 | 亚洲一级免费毛片 | 亚洲精品国产自在久久出水 | 91md天美精东蜜桃传媒在线 | 免费日本黄色网址 | 国产精品7m凸凹视频分类大全 | 日日操夜夜爱 | 永久免费看的啪啪网站 | 天天干天天做天天射 | 欧美视频一区二区三区在线观看 | 日本三级日产三级国产三级 | 日韩精品免费一级视频 | 色多多污网站在线观看 | 久久看片网 | 色九| 青青青久97在线观看香蕉 | 天堂在线观看视频观看www | 97色在线视频 | 色综合久久综合 | 亚洲精品久久久久午夜三 | 性满足久久久久久久久 | 欧美午夜寂寞影院安卓列表 | 中文字幕精品一区二区2021年 | 天天做日日爱 | 欧美极品另类xxx | 6080午夜| 热99精品视频| 亚洲精品电影天堂网 |