先介紹幾個詞匯:
code
ro-data 程序定義的常量
rw-data 已經初始化的全局變量
zi-data 未初始化的全局變量
ro size = ro-data + code
rw size = rw-data + zi-data
rom size = ro-data + code + rw-data
我們知道在燒寫程序的時候,燒寫到flash中!
stm32上電后,CPU根據boot0和boot1的硬件引腳決定從flash或ram中啟動,默認是從flash中啟動的;啟動之后,搬運rw-data到ram,但是不會搬運code;也就是說cpu執行的代碼是在flash中讀取的!
參考文章:https://blog.csdn.net/u012252959/article/details/80800559
https://blog.csdn.net/jj163zhuangzi/article/details/47088843