stm32內(nèi)存結(jié)構(gòu)
這個是板載的SRAM,屬于外部的SRAM,起始地址是0x68000000,為什么這個地址我也沒懂。
這個是核內(nèi)部的SRAM,分為兩個部分:普通內(nèi)存,起始地址0x20000000,共128KB,這部分的內(nèi)存任何外設都可以訪問,CCM內(nèi)存,起始地址是0x10000000,共64KB,但是只能由CPU訪問。
在內(nèi)存管理的實驗中,我們主要是用了malloc和free兩個函數(shù)來進行內(nèi)存的申請和釋放。在使用了malloc申請內(nèi)存之后,返回的值是在申請之后的首地址。同時,在申請了地址之后,并且將指針指向該地址時,使用過一次之后就要將該申請free掉,不然會造成所謂的“內(nèi)存泄露”。時間長了會影響內(nèi)存的使用。
我使用的是原子哥的程序,關于內(nèi)存的最終定義原子哥使用了3個數(shù)組,來分別表示起始地址和大小,看的頭暈,不過一步一步的往回看還是能看得懂的。