1 什么是BSP: 1. 在通电后,初始化硬件(bootrom) 2. 支持VxWorks和硬件驱动通信(Image的底层驱动) 3. 本质上是硬件驱动、初始化的合集; 2 研究 BSP 内容: 1. 系统 image的生成和image的种类 2. image的download下载过程 3. 系统的启动顺序和过程 4. 调试环境的配置及远端调试的方式和方法 5. 相应 BSP设置文件的修改(网络,串口..) 6. BSP各文件的组成和作用. 7. 要对系统底层驱动清楚,也就是对 CPU及相关的硬件有所了解.主要是32微处理器(上电启动过程, download image的方式方法,读写 ROM,地址空间分配,MMU,寄存器,中断定义,..).参照硬件资料,多读一些源码会有所帮助. 3 BSP 主要文件目录的组成及主要文件的作用: 3.1 目录 target/config/All: 这个目录下的文件是所有 BSP文件共享的,不是特别需要不要更改里面的任何文件. configAll.h: 缺省定义了所有VxWorks的设置.如果不用缺省的设置,可在BSP目录下的config.h文件中用#define或#undef方式来更改设置. bootInit.c: 在romInit.s后,完成Boot ROM的第二步初始化.程序从romInit.s中的romInit()跳到这个文件中的romStart().来执行必要的解压和ROM image的放置. bootConfig.c: 完成Boot ROM image的初始化和控制. usrConfig.c: VxWorks image的初始化代码. 3.2 目录target/config/comps/src: 涉及系统核心的components,主要由target/config/All中usrConfig.c中函数调用 3.3 目录target/config/bspname: 包含系统或硬件相关的BSP文件. Makefile 一些命令行控制images的生成,参见 BSP设置部分及生成下载 README BSP发布纪录,版本,总的文档 config.h 包括所有涉及CPU主板的设置及定义(includes,definations),参见 BSP设置文件及生成下载 configNet.h 网络驱动的主要设置文件,主要对 END驱动设置. romInit.s 汇编语言文件,是 VxWorks Boot ROM和ROM based image的入口,参见 系统启动部分 sysALib.s 汇编语言文件,程序员可以把自己的汇编函数放在这个文件里,在上层调用.VxWorks image的入口点_sysInit在这个文件里,是在RAM中执行的第一个函数. sysLib.c 包含一些系统相关的函数例程,提供了一个board-level的接口,VxWorks和应用程序可以以system-indepent的方式生成.这个文件还能包含目录target/config/comps/src的驱动. sysScsi.c 可选文件用于 Scsi设备设置和初始化. sysSerial.c 可选文件用于所有的串口设置...