CCP文件夹
CANDRV文件夹
- can_ccp文件是CAN与CCP协议的接口文件以及介绍文档
SAMPLES文件夹
- 主要是两个移植完成后的模板
DOC文件夹
- 文件夹里面是各种介绍文件
- Integration_of_the_Vector_CCP_Driver_with_a_free_CAN_Driver文件主要是CCP如何与CAN驱动集成
- CCP Driver文件是对他的源码进行介绍
MAP文件
- 其中关键的是变量名称、变量长度、变量地址
- 该文件一般存放在32工程下的Listings文件夹
- 要通过map文件生成A2L文件
CCP官方文件
CCP.C文件
- 各种命令实现代码
CPPRAR.H文件
- 主要是各种宏定义和少量接口,以及各种条件编译宏定义
MAP文件
缩写含义
- RO:Read-Only的缩写,包括RO-data(只读数据)和RO-code(代码)。
- RW:Read-Write的缩写,主要是RW-data,RW-data由程序初始化初始值。
- ZI:Zero-initialized的缩写,主要是ZI-data,由编译器初始化为0。
- .text与RO-code同义。
- .constdata与RO-data同义。
- .bss 与ZI-data同义。
- .data与RW-data同义
段的意义
第一部分:Section Cross References(模块、段的交叉引用关系)
第二部分:Removing Unused input sections from the image(移除未使用的段)
第三部分:Image Symbol Table(映射符号表,列出了各个段所存储的对应地址)
-
**Local Symbols:**记录了用static声明的全局变量地址和大小,C文件中函数的地址和用static声明的函数代码大小,汇编文件中的标号地址(作用域限本文件)
-
**Global Symbols:**记录了全局变量的地址和大小,C文件中函数的地址及其代码大小,汇编文件中的标号地址(作用域全工程)
-
其中主要的是Global Symbols,标定需要修改的变量,主要在这找到变量名,变量地址,变量长度
第四部分:Memory Map of the image(映像的内存分布)
- 主要分为加载域和运行域
- 加载域就是程序在Flash中的实际存储,而运行域是芯片上电后的运行状态,因为MCU没上电时RAM中没有数据,所以此时所有的东西(包括代码、变量、初始值等)都是存放在flash中的,当上电后又要把变量等复制到RAM中才能正常运行。
- RW区未上电之前存储在ROM/Flash里面。在执行映像之前,必须将已初始化的RW数据从ROM中复制到RAM中的执行地址并创建ZI Section(初始值为0的变量区)
- CCP协议就是读取和修改运行域中的变量,然后观察修改后运行状态,如果满意再将该变量写入Flash中,达到标定的效果。
第五部分:Image component sizes(映像组成大小)
- 主要是各种空间占的大小