精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

你知道嗎? 51單片機(jī)也有動(dòng)態(tài)內(nèi)存分配

朱老師物聯(lián)網(wǎng)大講堂 ? 2024-04-26 08:10 ? 次閱讀

一、簡(jiǎn)述

其實(shí)在51單片機(jī)中也可以使用動(dòng)態(tài)內(nèi)存,動(dòng)態(tài)內(nèi)存其實(shí)就是劃出一塊內(nèi)存區(qū)域,將這塊內(nèi)存進(jìn)行管理,稱為內(nèi)存管理。51單片機(jī)可以使用c語言自帶的標(biāo)準(zhǔn)內(nèi)存管理API:malloc、calloc、realloc、free。他們的頭文件在中,所以使用內(nèi)存管理必須包含該頭文件。

二、使用方法

51單片機(jī)需要使用內(nèi)存管理API必須要手動(dòng)調(diào)用初始化堆內(nèi)存管理函數(shù):init_mempool

ARM32單片機(jī)在MDK5開發(fā)環(huán)境中,由“__main”函數(shù)進(jìn)行堆內(nèi)存管理初始化,__main函數(shù)執(zhí)行完之后才會(huì)執(zhí)行main函數(shù)(這里不細(xì)講),所以開發(fā)32單片機(jī)可直接使用內(nèi)存管理API進(jìn)行內(nèi)存申請(qǐng)和釋放。

init_mempool函數(shù)說明在keil安裝目錄下的“C51\Hlp\c51.chm”,在索引“Library Reference/Library Files/Source Code”下,如下圖:

68f0680c-0361-11ef-9118-92fbcf53809c.png

  • 函數(shù)原型講解
  • p:表示用來做動(dòng)態(tài)內(nèi)存區(qū)域的首地址
  • size:表示動(dòng)態(tài)內(nèi)存區(qū)域的大小,單位byte

6913784c-0361-11ef-9118-92fbcf53809c.png

  • 函數(shù)使用
  • 建議51單片機(jī)動(dòng)態(tài)內(nèi)存區(qū)域的范圍使用xdata區(qū)域,因?yàn)槠瑑?nèi)RAM只有256字節(jié)可用,所以chm手冊(cè)給的示例代碼也是使用的xdata區(qū)域。
  • init_mempool函數(shù)建議在main函數(shù)開始進(jìn)行初始化。

692746d8-0361-11ef-9118-92fbcf53809c.png

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    1484

    瀏覽量

    61814
  • 51單片機(jī)
    +關(guān)注

    關(guān)注

    273

    文章

    5697

    瀏覽量

    123186
  • 動(dòng)態(tài)內(nèi)存

    關(guān)注

    1

    文章

    24

    瀏覽量

    7961
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    動(dòng)態(tài)內(nèi)存管理模塊的設(shè)計(jì)原理與實(shí)現(xiàn)

    Fense 通過設(shè)立一個(gè)雙向鏈表(struct Head *stHead)來保存所有被分配動(dòng)態(tài)內(nèi)存塊的信息。鏈表中的每個(gè)節(jié)點(diǎn)對(duì)應(yīng)一個(gè)動(dòng)態(tài)內(nèi)存塊,節(jié)點(diǎn)中包括此內(nèi)存大小、
    的頭像 發(fā)表于 06-30 08:05 ?2331次閱讀
    <b class='flag-5'>動(dòng)態(tài)內(nèi)存</b>管理模塊的設(shè)計(jì)原理與實(shí)現(xiàn)

    C語言知識(shí)總結(jié):動(dòng)態(tài)內(nèi)存分配

    動(dòng)態(tài)內(nèi)存分配就 是指在程序執(zhí)行的過程中動(dòng)態(tài)分配或者回收存儲(chǔ)空間的分配內(nèi)存的方法。
    發(fā)表于 10-24 15:52 ?839次閱讀

    詳解單片機(jī)內(nèi)存分配

    對(duì)于初學(xué)者而言,對(duì)單片機(jī)內(nèi)存分配往往最讓人頭疼,很多人學(xué)了單片機(jī)幾年 都不知道單片機(jī)內(nèi)部的
    發(fā)表于 11-07 10:42 ?2272次閱讀

    C語言程序設(shè)計(jì)中動(dòng)態(tài)內(nèi)存分配如何實(shí)現(xiàn)

    C語言程序設(shè)計(jì)中,動(dòng)態(tài)內(nèi)存分配如何實(shí)現(xiàn),需要注意哪些問題?
    發(fā)表于 09-28 16:53 ?1282次閱讀

    內(nèi)存動(dòng)態(tài)內(nèi)存分配實(shí)現(xiàn)

    第27章 STM32H7的TCM,SRAM等五塊內(nèi)存動(dòng)態(tài)內(nèi)存分配實(shí)現(xiàn)本章教程為大家分享一種DTCM,SRAM1,SRAM2,SRAM3和SRAM4可以獨(dú)立管理的動(dòng)態(tài)內(nèi)存管理方案,在實(shí)
    發(fā)表于 08-03 07:14

    如何在單片機(jī)上也可正常使用動(dòng)態(tài)內(nèi)存分配

    51單片機(jī)內(nèi)存動(dòng)態(tài)分配序言最近玩51單片機(jī)碰到一個(gè)問題,51中malloc函數(shù)并不能像在PC上一
    發(fā)表于 11-19 07:36

    請(qǐng)問使用動(dòng)態(tài)內(nèi)存分配安全嗎?

    想在C語言程序員之間開始一個(gè)激烈的,或者說有爭(zhēng)議的討論很簡(jiǎn)單,只需要問:“使用動(dòng)態(tài)內(nèi)存分配安全嗎?”使用動(dòng)態(tài)內(nèi)存分配安全嗎?在C語言程序開發(fā)中,動(dòng)態(tài)
    發(fā)表于 12-15 06:10

    使用動(dòng)態(tài)內(nèi)存分配安全嗎

    [導(dǎo)讀]想在C語言程序員之間開始一個(gè)激烈的,或者說有爭(zhēng)議的討論很簡(jiǎn)單,只需要問:“使用動(dòng)態(tài)內(nèi)存分配安全嗎?”想在C語言程序員之間開始一個(gè)激烈的,或者說有爭(zhēng)議的討論很簡(jiǎn)單,只需要問:“使用動(dòng)態(tài)內(nèi)存
    發(fā)表于 12-15 07:44

    動(dòng)態(tài)內(nèi)存分配是什么意思

    所謂動(dòng)態(tài)內(nèi)存分配(Dynamic Memory Allocation)就是指在程序執(zhí)行的過程中動(dòng)態(tài)分配或者回收存儲(chǔ)空間的分配
    發(fā)表于 12-17 08:17

    RTThread的動(dòng)態(tài)內(nèi)存空間該如何去分配

    關(guān)于rtt的動(dòng)態(tài)內(nèi)存空間分配,想問一下以下我的幾點(diǎn)理解是對(duì)的嗎1、我看RTT NANO和MASTER版本的動(dòng)態(tài)內(nèi)存分配好像不太一樣,我的理解是MASTER版本的
    發(fā)表于 08-31 14:34

    51單片機(jī)能實(shí)現(xiàn)動(dòng)態(tài)內(nèi)存管理嗎?

    怎么用51單片機(jī)實(shí)現(xiàn)動(dòng)態(tài)內(nèi)存管理
    發(fā)表于 10-15 12:43

    單片機(jī)系統(tǒng)進(jìn)行動(dòng)態(tài)內(nèi)存分配和任務(wù)調(diào)度思想的資料和代碼實(shí)例說明

    內(nèi)存分配設(shè)計(jì)思想:我們?cè)O(shè)置動(dòng)態(tài)內(nèi)存分配的初衷在于:有些單片機(jī)系統(tǒng)內(nèi)存資源比較少,便顯得特別珍貴,
    發(fā)表于 09-30 17:13 ?4次下載
    <b class='flag-5'>單片機(jī)</b>系統(tǒng)進(jìn)行<b class='flag-5'>動(dòng)態(tài)內(nèi)存</b><b class='flag-5'>分配</b>和任務(wù)調(diào)度思想的資料和代碼實(shí)例說明

    51單片機(jī)如何使用動(dòng)態(tài)內(nèi)存

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)如何使用動(dòng)態(tài)內(nèi)存的詳細(xì)資料免費(fèi)下載。
    發(fā)表于 06-14 17:44 ?0次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>如何使用<b class='flag-5'>動(dòng)態(tài)內(nèi)存</b>

    51單片機(jī)內(nèi)存動(dòng)態(tài)分配

    51單片機(jī)內(nèi)存動(dòng)態(tài)分配序言最近玩51單片機(jī)碰到一個(gè)問題,51中malloc函數(shù)并不能像在PC上一
    發(fā)表于 11-12 14:36 ?11次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)內(nèi)存</b><b class='flag-5'>動(dòng)態(tài)分配</b>

    關(guān)于stm32 MCU申請(qǐng)動(dòng)態(tài)內(nèi)存malloc的認(rèn)識(shí)

    首先,malloc( )屬于標(biāo)準(zhǔn)C語言函數(shù),當(dāng)然可以在單片機(jī)上使用,如STM32可以先在啟動(dòng)文件中設(shè)置heap的大小,再使用動(dòng)態(tài)內(nèi)存分配: Heap_Size EQU 0x00000200 \\也就
    發(fā)表于 11-18 16:21 ?14次下載
    關(guān)于stm32 MCU申請(qǐng)<b class='flag-5'>動(dòng)態(tài)內(nèi)存</b>malloc的認(rèn)識(shí)