基于Intel PXA270的Windows CE5.0下Boot Loader实现
进行接收。
(3)初始化平台函数OEMPlatformInit(),其作用是初始化目标板上的的设备如实时时钟,显示屏、Flash、网卡等。
(4)预下载函数OEMPreDownloade(),主要任务是完成以太网下载前的一些准备工作,如通过DHCP获得IP地址或者初始化TFTP服务等。
(5)下载映像函数DownloadeImage(),该函数完成从远程开发机上下载操作系统映像。
(6)启动映象函数OEMLaunch。
在实际开发中,本方案利用同属Intel Xscale 270 CPU的MainstoneII开发板进行克隆,这样使得大量的代码可以共享,只需修改少许的OEM代码和实现一些可选的OEM函数即可完成开发,减少未知错误。
Boot Loader通过对以上函数的调用,完成了对操作系统的映像的加载控制,函数的流程及其代码位置如图3所示。
图3 Boot Loader函数调用流程
● Boot Loader的配置
BootLoader程序可以通过PB的集成编译环境编译链接,控制文件为.bib文件,.bib文件主要完成以下工作。
(1)配置目标设备上的内存分配信息,如目标设备上的物理内存起始地址、长度以及用途等;
(2)包含ROM信息,如起始位置、宽度等,这样就可以正确的生成可以在ROM上运行的映像文件;
(3)需要打包文件列表。
对于Boot Loader文件的下载,可以通过仿真器下载,也可以通过其他调试程序下载,本方案采用的是直接烧写到Flash中,因此要得到纯二进制格式的映像以便烧写进Flash。Boot Loader是系统启动后第一个运行的程序,因此它必须放在CPU 上电和复位后立即运行的地址处。Xscale在上电和复位后是从物理地址0x00000000(片选0 Boot Flash的起始地址)开始运行的。
结束语
作为Windows CE操作系统的启动部分,Boot Loader负责把Windows CE操作系统加载到内存中,然后开始执行。虽然最终的产品中可能不含Boot Loader,但是在开发和调试的时候Boot Loader是不可或缺的。只有得到一个稳定工作的Boot Loader程序,才能够更进一步开发Windows CE的BSP,直至最后整个系统的成功。
PXA270 BootLoader WindowsCE5 0 相关文章:
- 嵌入式多功能信息交互系统的设计(05-17)
- XScale PXA270在Linux下的FPGA设备驱动(04-12)
- 一种嵌入式可视倒车装置的设计(08-14)
- 基于FPGA的PXA270外设时序转换接口设计方案(06-05)
- 基于AT89S52的智能家居门禁系统的设计(10-08)
- 基于嵌入式系统的彩色液晶显示驱动控制(05-21)