在线观看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

    文章

    1368

    瀏覽量

    114701
  • STM32
    +關注

    關注

    2270

    文章

    10900

    瀏覽量

    356044
  • 串口
    +關注

    關注

    14

    文章

    1554

    瀏覽量

    76522
  • 指針
    +關注

    關注

    1

    文章

    480

    瀏覽量

    70564
收藏 人收藏

    評論

    相關推薦

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

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

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

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

    STM32CubeIDE SWV功能介紹

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

    STM32CUBEIDE(1)----安裝

    概述 STM32CubeIDE是一體式多操作系統開發工具,是STM32Cube軟件生態系統的一部分。 STM32CubeIDE是一種高級C/C++開發平臺,具有STM32微控制器和微處
    的頭像 發表于 11-22 09:52 ?1293次閱讀
    <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 ?1008次閱讀
    巧用 <b class='flag-5'>STM32CubeIDE</b> <b class='flag-5'>之</b>編譯警告

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

    電子發燒友網站提供《STM32CubeIDE實用技巧仿真帶外擴FLASH的工程.pdf》資料免費下載
    發表于 09-19 16:55 ?7次下載
    <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鏈接文件
    主站蜘蛛池模板: free chinese 国产精品| 黄色片链接| 成人网在线看| 国内久久精品| 国产亚洲第一| 麻豆色哟哟网站| 国产亚洲高清在线精品不卡| 失禁h啪肉尿出来高h受| 亚洲一区二区在线| 日本在线视频www色| 国产亚洲欧美视频| 国产在线精品香蕉综合网一区| 种子搜索在线| 精品啪啪| 国产高清在线精品| 一级做受毛片免费大片| 色婷婷久久免费网站| 国产精品成人四虎免费视频| 国产精品嫩草影院人体模特| 亚洲婷婷国产精品电影人久久| 狠狠干亚洲色图| 最新黄色免费网站| 最好看的最新中文字幕2018免费视频| 久青草国产手机在线观| 五月停停| 国产精品免费一级在线观看| 寄宿日记免费看| 五月天色网址| 日本三级电影在线观看| 手机看片国产高清| 亚洲特黄大黄一级毛片| 成人a毛片高清视频| 奇米网狠狠干| 亚洲色图欧美色| 在线看片福利| 黄视频在线免费看| 国产精品欧美一区二区三区不卡 | 久久99热精品这里久久精品| 精品国产成人系列| 淫五月| 欧美一级特黄啪啪片免费看|