单片机 code RO-data RW-data ZI-data以及OTA学习
带着问题去学习:这些数据是什么?分别放在哪里,
是什么:我个人的理解 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博客