帶著問題去學習:這些數據是什么?分別放在哪里,
是什么:我個人的理解 code 和RO-data 分別是代碼和只讀數據,RW-data以及ZI-data分別是讀寫數據和初始化數據。
code+RO-data的大小正好是所占用ROM的大小,ROM在這里我認為是單片機的flash
RW-data+ZI-data是占用RAM的大小,RAM這里我認為是單片機的SRAM
帶著案例去學習 代碼gd32_TranHareIdentify
先看keil5 編譯結果
查看map文件
?圖1 update區的map文件
圖2 update區起始地址和大小?
很巧妙的是Code+Ro-data=135908+10108=146016 =0x0002 3A60 ,0x08020000+0x00023A60=0x0804 3a60
RW-data+ZI-data =1132+746860 =747992=0x000B 69D8 ,正好從0x200b69d8
參考鏈接:全網最詳細解釋Keil-MDK中Code、RO-data、RW-data、ZI-data的含義_code ro-data rw-data zi-data-CSDN博客