位置:51电子网 » 技术资料 » 嵌入式系统

基于S3C2410的Windows CE 5.0 BSP移植

发布时间:2008/8/27 0:00:00 访问次数:704

  摘要 嵌入式开发中一个重要的环节是板级支持包(bsp)的开发,实际开发过程更倾向于移植bsp而不是重新开发bsp。本文先介绍了samsung公司的s3c2410微处理器和嵌入式操作系统windows ce 5.0 特性,分析bsp结构,在此基础上,通过bootloader, oal, 触摸屏驱动的移植来具体探讨bsp移植过程。

  1 引言

  在当今后pc时代,嵌入式系统应用得越来越广泛,嵌入式产品充斥着许多领域,日常生活的手机,mp4,pda等都属于典型的嵌入式系统。在嵌入式系统中,微处理器和操作系统是进行应用开发的基础。在微处理器方面,s3c2410是samsung公司推出的一款基于arm920t内核的16/32位risc嵌入式cpu,主要面向手持设备以及高性价比、低功耗的应用。在操作系统方面,windows ce 5.0是由微软提供的一款嵌入式操作系统,在windows ce 4.2基础上,它又加入了一些新特性以满足市场需求。板级支持包 (board support package,bsp)是操作系统的一个组成部分,提供对硬件的支持。bsp的开发在整个产品开发时间上占了很大比例,快速的移植满足产品需求的bsp在竞争激烈的市场环境里显得很重要。目前已有许多关于s3c2410、windows ce以及bsp相关的研究报道,文献[1]研究基于s3c2410的gps通信技术及实现,文献[2]中详尽分析windows ce的结构,文献[3]中归纳了windows ce 4.2专用操作系统的定制和裁剪方法,文献[4]则探讨基于dsp嵌入式多媒体应用系统板级支持包的开发。目前关于windows ce的应用主要采用windows ce 4.2及以下版本,本文研究基于s3c2410的windows ce 5.0 bsp移植技术。

  2 windows ce 5.0及bsp结构分析

  移植基于s3c2410的windows ce 5.0 bsp,需要分析windows ce 5.0 及bsp结构。windows ce 5.0是一款开放的、可升级的32位嵌入式操作系统,具有高可靠性,是一种硬实时嵌入式操作系统,它可以在多种处理器架构(如x86、mips、arm和sh4)上运行,windows ce支持arm体系结构,这是基于s3c2410 处理器进行bsp移植的前提条件。windows ce 5.0 bsp通常包含以下几部分:bootloader,oal(oem adaptation layer),设备驱动程序,配置文件等。www.51kaifa.com

  bootloader是加电即运行的一段程序,它初始化硬件,建立系统的内存空间映射,为最终调用系统内核做准备。在windows ce 5.0系统中,它主要用于下载和启动镜像nk.bin,也就是两种工作模式:启动加载模式:用户最终使用的产品即为该模式;下载模式:镜像首先被bootloader下载到目标机的ram中,然后被固化到flash。

  设备驱动程序按照导出的接口不同可分为:本机驱动程序以及流接口驱动程序.本机驱动程序有gews.exe加载的鼠标,键盘,触摸屏,显示驱动等。而流接口驱动程序使用一组流函数来实现,通常由device.exe加载,如网卡,声卡,usb等。

  oal是逻辑上驻留在windows ce内核与目标设备之间的代码层,在物理上oal与内核库连接来产生内核可执行文件。oal简化了操作系统与目标代码之间的通信,oal代码用来处理中断,记时器,电源管理,通用i/o控制等[5]。

  configuration file里面包含的是与生成的镜像相关的配置信息。www.51kaifa.com

  移植windows ce下s3c2410对应的bsp,就是修改windows ce自带的bsp或者修改硬件平台以前版本的bsp的几个主要组成部分,使得bsp能有效支持硬件系统。

  3 bsp移植

  如果从零开始开发widows ce 5.0 bsp,则需要相当长的时间。通常的做法是:⑴将自己硬件平台基于windows ce 4.2及以前版本的bsp移植到windows ce 5.0系统上;⑵从windows ce 5.0 bsp中寻找与硬件平台最接近的作为模板,然后再从自己的硬件平台上入手做相应的修改,从而得到可以在自己系统上使用的bsp。本文探讨的bsp移植属于第一种情况。

  本次移植平台采用的是深圳英蓓特公司的edukitiii实验箱,微处理器是s3c2410,外带64m nand flash芯片等相关硬件资源。软件资源有:edukit2410包(windows ce 4.2版本下的bsp)。

  3.1 bootloader移植

  bootloader的执行流程如下:

  ⑴ 执行startup.s:对cpu,内存控制器,cache等做一些基本的初始化。

  ⑵ 初始化串口:调用函数oeminitdebugserial()来完成。

  ⑶ 初始化平台:调用函数oemplatforminit(),主要对所需硬件资源进行初始化,通常包括:以太网控制器(cs8900a)、系统时钟、存储设备以及其他一些外围设备。

  ⑷ 调用函数oempredownload():做一些准备工作如获取ip地址,初始化tftp连接等。

  ⑸ 执行函数downloadimage():下载镜像到sdram中。www.51kaifa.com

  ⑹ 调用oemlaunch()函数启动操作映像。

  其中startup.s,oeminitdebugserial()可以与oal共享使用,两函数的修改在oal移植过程中叙述。

  bootloader移植主要过程有:

  ⑴

  摘要 嵌入式开发中一个重要的环节是板级支持包(bsp)的开发,实际开发过程更倾向于移植bsp而不是重新开发bsp。本文先介绍了samsung公司的s3c2410微处理器和嵌入式操作系统windows ce 5.0 特性,分析bsp结构,在此基础上,通过bootloader, oal, 触摸屏驱动的移植来具体探讨bsp移植过程。

  1 引言

  在当今后pc时代,嵌入式系统应用得越来越广泛,嵌入式产品充斥着许多领域,日常生活的手机,mp4,pda等都属于典型的嵌入式系统。在嵌入式系统中,微处理器和操作系统是进行应用开发的基础。在微处理器方面,s3c2410是samsung公司推出的一款基于arm920t内核的16/32位risc嵌入式cpu,主要面向手持设备以及高性价比、低功耗的应用。在操作系统方面,windows ce 5.0是由微软提供的一款嵌入式操作系统,在windows ce 4.2基础上,它又加入了一些新特性以满足市场需求。板级支持包 (board support package,bsp)是操作系统的一个组成部分,提供对硬件的支持。bsp的开发在整个产品开发时间上占了很大比例,快速的移植满足产品需求的bsp在竞争激烈的市场环境里显得很重要。目前已有许多关于s3c2410、windows ce以及bsp相关的研究报道,文献[1]研究基于s3c2410的gps通信技术及实现,文献[2]中详尽分析windows ce的结构,文献[3]中归纳了windows ce 4.2专用操作系统的定制和裁剪方法,文献[4]则探讨基于dsp嵌入式多媒体应用系统板级支持包的开发。目前关于windows ce的应用主要采用windows ce 4.2及以下版本,本文研究基于s3c2410的windows ce 5.0 bsp移植技术。

  2 windows ce 5.0及bsp结构分析

  移植基于s3c2410的windows ce 5.0 bsp,需要分析windows ce 5.0 及bsp结构。windows ce 5.0是一款开放的、可升级的32位嵌入式操作系统,具有高可靠性,是一种硬实时嵌入式操作系统,它可以在多种处理器架构(如x86、mips、arm和sh4)上运行,windows ce支持arm体系结构,这是基于s3c2410 处理器进行bsp移植的前提条件。windows ce 5.0 bsp通常包含以下几部分:bootloader,oal(oem adaptation layer),设备驱动程序,配置文件等。www.51kaifa.com

  bootloader是加电即运行的一段程序,它初始化硬件,建立系统的内存空间映射,为最终调用系统内核做准备。在windows ce 5.0系统中,它主要用于下载和启动镜像nk.bin,也就是两种工作模式:启动加载模式:用户最终使用的产品即为该模式;下载模式:镜像首先被bootloader下载到目标机的ram中,然后被固化到flash。

  设备驱动程序按照导出的接口不同可分为:本机驱动程序以及流接口驱动程序.本机驱动程序有gews.exe加载的鼠标,键盘,触摸屏,显示驱动等。而流接口驱动程序使用一组流函数来实现,通常由device.exe加载,如网卡,声卡,usb等。

  oal是逻辑上驻留在windows ce内核与目标设备之间的代码层,在物理上oal与内核库连接来产生内核可执行文件。oal简化了操作系统与目标代码之间的通信,oal代码用来处理中断,记时器,电源管理,通用i/o控制等[5]。

  configuration file里面包含的是与生成的镜像相关的配置信息。www.51kaifa.com

  移植windows ce下s3c2410对应的bsp,就是修改windows ce自带的bsp或者修改硬件平台以前版本的bsp的几个主要组成部分,使得bsp能有效支持硬件系统。

  3 bsp移植

  如果从零开始开发widows ce 5.0 bsp,则需要相当长的时间。通常的做法是:⑴将自己硬件平台基于windows ce 4.2及以前版本的bsp移植到windows ce 5.0系统上;⑵从windows ce 5.0 bsp中寻找与硬件平台最接近的作为模板,然后再从自己的硬件平台上入手做相应的修改,从而得到可以在自己系统上使用的bsp。本文探讨的bsp移植属于第一种情况。

  本次移植平台采用的是深圳英蓓特公司的edukitiii实验箱,微处理器是s3c2410,外带64m nand flash芯片等相关硬件资源。软件资源有:edukit2410包(windows ce 4.2版本下的bsp)。

  3.1 bootloader移植

  bootloader的执行流程如下:

  ⑴ 执行startup.s:对cpu,内存控制器,cache等做一些基本的初始化。

  ⑵ 初始化串口:调用函数oeminitdebugserial()来完成。

  ⑶ 初始化平台:调用函数oemplatforminit(),主要对所需硬件资源进行初始化,通常包括:以太网控制器(cs8900a)、系统时钟、存储设备以及其他一些外围设备。

  ⑷ 调用函数oempredownload():做一些准备工作如获取ip地址,初始化tftp连接等。

  ⑸ 执行函数downloadimage():下载镜像到sdram中。www.51kaifa.com

  ⑹ 调用oemlaunch()函数启动操作映像。

  其中startup.s,oeminitdebugserial()可以与oal共享使用,两函数的修改在oal移植过程中叙述。

  bootloader移植主要过程有:

  ⑴

相关IC型号

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!