板级支持包(BSP)是介于主板硬件和操作系统中驱动层程序之间的一层,一般认为它属于操作系统一部分,主要是实现对操作系统的支持,为上层的驱动程序提供访问硬件设备寄存器的函数包,使之能够更好的运行于硬件主板。在嵌入式系统软件的组成中,就有BSP。BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形式的BSP,例如VxWorks的BSP和Linux的BSP相对于某一CPU来说尽管实现的功能一样,可是写法和接口定义是完全不同的,所以写BSP一定要按照该系统BSP的定义形式来写(BSP的编程过程大多数是在某一个成型的BSP模板上进行修改)。这样才能与上层OS保持正确的接口,良好的支持上层OS。
定义
BSP主要功能为屏蔽硬件,提供操作系统及硬件驱动,具体功能包括:
1. 单板硬件初始化,主要是CPU的初始化,为整个软件系统提供底层硬件支持
2. 为操作系统提供设备驱动程序和系统中断服务程序
3. 定制操作系统的功能,为软件系统提供一个实时多任务的运行环境
4. 初始化操作系统,为操作系统的正常运行做好准备。
作用
建立让操作系统运行的基本环境 1、初始化CPU内部寄存器
2、设定RAM工作时序
3、时钟驱动及中断控制器驱动
4、串口驱动
完善操作系统运行的环境 1、完善高速缓存和内存管理单元的驱动
2、指定程序起始运行位置
3、完善中断管理
4、完善系统总线驱动
开发流程一、验证硬件
了解上电后的电压和电流,连接调试器读写CPU内部寄存器,控制处理器的输出端口(GPIO)观察输出。以及检验时钟设置。
二、配置RAM
这一步包括RAM的初始化和测试。在初始化RAM的过程中需要填写与RAM相关的CPU寄存器。在测试过程中可分为:单元测试,整体测试,噪声测试三部分。
三、内存管理
需要规划内存的使用方法,开MMU等。
|