一個簡單的MCU內(nèi)存管理模塊(附源碼)
2023-06-09 15:26 作者:補(bǔ)給站Linux內(nèi)核 | 我要投稿
現(xiàn)在非常多的的MCU性能都還不錯,同時用戶也會去擴(kuò)展一些外部RAM,那么如何高效便捷的管理這些內(nèi)存是一個重要話題。
今天給大家分享一份源碼:基于無操作系統(tǒng)的STM32單片機(jī)開發(fā),功能強(qiáng)大,可申請到地址空間連續(xù)的不同大小的內(nèi)存空間,且用戶接口簡單,使用方便。
源碼說明
源碼包含memory.h 和 memory.c 兩個文件(嵌入式C/C++代碼的“標(biāo)配”),其源碼中包含重要的注釋。memory.h文件 :包含結(jié)構(gòu)體等定義,函數(shù)API申明等;memory.c文件 :是實現(xiàn)內(nèi)存管理相關(guān)API函數(shù)的原型。頭文件memory.h
頭文件是相關(guān)的定義和申請:
這里的代碼比較簡單,也是常規(guī)的寫法,重點(diǎn)是要理解結(jié)構(gòu)體成員的含義。
源文件memory.c
源文件主要就是實現(xiàn)內(nèi)存管理的函數(shù),源碼比較多,這里才分為三部分。1、相關(guān)的定義
【文章福利】小編推薦自己的Linux內(nèi)核技術(shù)交流群:【749907784】整理了一些個人覺得比較好的學(xué)習(xí)書籍、視頻資料共享在群文件里面,有需要的可以自行添加哦?。。。ê曨l教程、電子書、實戰(zhàn)項目及代碼)? ? ?


2、內(nèi)存分配函數(shù)DynMemGet
3、內(nèi)存釋放函數(shù)DynMemPut
代碼中包含注釋,注釋描述的比較清楚,也比較容易理解。
原文作者:一起學(xué)嵌入式

標(biāo)簽: