论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
④ 系统配置文件:Config.h和Board.h 。
Config.h
设定板上处理器类型和其它模块功能。
Board.h
设定板上各参数信息,如片外Flash和SDRAM大小、类型、数据宽度和地址范围、划分板上内存空间范围、系统时钟大小、系统总线速率以及一些其它要用到的系统常量。
⑤ 连接配置文件:Flash.lcf。
设定连接时各函数空间地址及内存分配。
⑥ 预包含头文件:mxxxx_mwerks.h和mwerks.h。
两函数被所有的C语言和汇编语言函数包含,它们设定CodeWarrior 预处理器所用到的常量和编译器编译选项。
2 bootloader运行流程简介
bootloader启动流程如图2所示。
系统上电复位后,跳到Boot ROM的最低地址处。Boot ROM的开始空间FFE00000~FFE00400为vector.s中的中断矢量表。将表中第一个32位字传给5307的SP,将第二个32位字传给PC,即完成复位中断跳转。
该复位中断跳转到vector.s中的start处。此处仅初始化sr,然后跳转到mcf5307_lo.s中的asm_startmeup。该段代码首先进行部分初始化和真正初始化前的准备工作:禁止Cache、禁止中断和地址转换、初始化用户指定的内部模块(MBAR)和内部SRAM(RAMBAR)起始地址。然后,将SP指向内部SRAM空间,即当调用真正的初始化程序时用内部SRAM的一段地址空间作为临时堆栈。接下来,调用sysinit.c文件中的外围电路和系统配置的初始化程序mcf5307_init()。