嵌入式Linux的风力发电监控系统开发平台的构建.docVIP

嵌入式Linux的风力发电监控系统开发平台的构建.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式Linux的风力发电监控系统开发平台的构建

基于嵌入式风力发电   0引   为了适不同的应用场合,同时考虑到计算机系统的灵活性、可伸缩性以及可裁剪性,一种以应用为中心、以计算机技术为基础、软硬件可裁剪的嵌入式操作系统随之诞生。这种嵌入式系统能适用于对功能、可靠性、成本、体积、功耗要求严格的应用系统。而在众多嵌入式操作系统中,Linux以其体积小、可裁减、运行速度快、网络性能优良、源码公开等优点而被广泛采用。特别是2.6内核版本的Linux更是在实时性能方面有了很大的提高,因此在工业控制场合得到了越来越多的重视和应用。   本文正是在这一背景下,为基于S3C2410的嵌入式平台(扩充了多种外围设备,包括:LCD、A/D、网络芯片等等)构建出一个基于Linux2.6.16内核的嵌入式系统开发平台,以满足风力发电监控系统开发的需求。   1系统构架   本系统的硬件平台是以32位高性能嵌入式处理器S3C2410A作为系统的CPU,其工作频率最高为203 MHz,具有强大的处理能力。另外,还扩展有多种外围设备,如:分辨率为640×480的26万色TFT液晶显示屏、串口、USB口、网口、64MB Flash、64MB SDRAM等等。可以充分满足风力发电监控系统开发的需求。   本硬件平台的软件构架主要分为以下几个部分:BSP层、操作系统层以及应用层,图1所示是其软件构架图。本系统的硬件平台是由嵌入式微处理器及其外围设备所构成的。硬件抽象层(BSP)是存储在硬件平台ROM或Flash上的负责与硬件底层交流的硬件驱动程序,主要负责对系统进行初始化,并将收集的硬件信息传递到接下来运行的操作系统内核中去。操作系统内核通过BSP来管理系统硬件资源,并为上层软件提供进程调度、内存管理、文件系统、设备驱动等服务。应用层主要负责与用户进行交流。   在完成系统的构架设计以后,就可以针对硬件平台进行具体的构建了,其工作主要包括以下几个部分:BootLoader移植、内核移植以及文件系统的建立等,其中内核移植包括网络设备、LCD和USB等驱动的移植。文中针对本系统的设计给出了相关程序的移植。   2 BootLoader移植   BootLoader (引导加载程序)是系统加电后运行的第一段代码。这段小程序用于初始化硬件设备和建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。   目前,较流行的BootLoader主要有U-boot和Vivi等。本设计主要是以S3C2410为控制器的硬件平台,因此可以选用带有网络功能的Vivi作为系统的BootLoader。作为引导程序的Vivi一般分为stage1和stage2两大部分。stage1主要是根据CPU的体系结构进行设备初始化等工作,通常都用短小精悍的汇编语言来实现,而stage2则通常用C语言来实现,这样可以实现更加复杂的功能,且代码会具有更好的可读性和可移植性。为了使Vivi更适合本系统的硬件平台,设计时需要对其进行部分修改。   (1)修改编译器   首先要把Vivi中Makefile的有关编译的选项指向安装好的3.4.1版本的交叉编译工具链,将编译所需的Linux文件夹“UNUX-INCLUDE-DIR=”指向交叉编译器所在的文件夹“LINUX-INCLUDE-DIR=/usr/local/arm/3.4.1/include”,并将“CROSS-COMPILE=”项修改为“CROSS-COMPILE=/usr/local/arm/3.4.1/bin/arm-linux-”。   (2)修改启动参数   接着根据硬件平台的实际情况要修改Vivi中Flash分块情况。本系统将Flash划分成四个部分:第一部分用来存放系统的Vivi:第二部分用来存放Vivi以及Linux操作系统的启动参数;第三部分用来存放嵌入式Linux操作系统;最后一部分用来存放文件系统。具体的地址及块大小分配如表1所列。   修改完以上两项就可以对Vivi进行编译了,之后通过JTAG将生成的二进制代码烧写到Flash的第一部分,即完成了Vivi的移植。   3内核移植   内核移植和BootLoader移植一样要根据设计的硬件平台来进行。根据本嵌入式系统硬件平台的设计,需修改内核Makefile文件、设置Flash分区、配置与编译内核等,并完成网络设备、LCD以及USB等驱动的移植,下面简单介绍一下针对本硬件平台的相关移植工作。   (1)内核编译与移植   在交叉编译内核之前,要先对编译选项进行配置。执行“make menuconfig”指令,进人Syetem Type选项,选择对S3C2410系统板的支持,然后配置File System和Block device,接下来使用“make dep”指令设置依赖关系,之

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档