stm32中 map檔案的分析和學習

2021-09-01 20:46:02 字數 968 閱讀 6248

在stm32專案工程中,可以通過.map檔案,來觀察自己的**中所用空間的大小,以及一些引數的所處的儲存位置。搜尋相關資料,做了一下筆記。

code:指**的大小;

ro-data:指除了內聯資料(inlinedata)之外的常量資料;

rw-data:指可讀寫(rw)、已初始化的變數資料;

zi-data:指未初始化(zi)的變數資料;

code、ro-data:位於flash中;

rw-data、zi-data:位於ram中;

關係如下:

1.symbol name:符號名稱

0x0800***x指儲存在flash裡面的**、變數等。

0x2000***x指儲存在記憶體ram中的變數data等。

3.ov type:符號對應的型別

符號型別大概有幾種:number、section、thumb code、data等;

全域性、靜態變數等位於0x2000***x的記憶體ram中。

4.size:儲存大小

這個容易理解,我們懷疑記憶體溢位,可以檢視**儲存大小來分析。

這裡是詳細的講解

stm32啟動檔案分析

這篇文章主要是分析stm32啟動檔案,啟動檔案是由彙編編寫的,檔名為startup stm32f40 41 s。啟動檔案最主要的功能就是初始化堆疊指標sp,執行復位程式進入c語言main函式 1.初始化堆疊空間大小,定義棧頂位置 堆起始位置等等 2.定義中斷向量表,初始化sp指標 3.reset h...

STM32啟動檔案分析

1.啟動檔案主要作用 a.初始化指標大小 b.初始化堆指標大小 c.初始化中斷向量表 d.初始化系統時鐘 e.呼叫 main,實現堆疊的初始化,最終跳轉到c的main當中 2.棧主要儲存程式的變數,當程式變數較多時,可以將棧分配的更大,但不能超過內部sram的大小 mdk中,全域性變數和區域性變數都...

STM32韌體庫檔案分析

1 彙編編寫的啟動檔案 startup stm32f10x hd.s 設定堆疊指標 設定pc指標 初始化中斷向量表 配置系統時鐘 對用c庫函式 main最終去到c的世界 2 時鐘配置檔案 system stm32f10x.c 把外部時鐘hse 8m,經過pll倍頻為72m。3 外設相關的 stm32...