基于AT91RM9200的嵌入式ARM开发平台的设计

基于AT91RM9200的嵌入式ARM开发平台的设计,第1张

嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可以裁剪来适应系统对功能、可靠性、成本、体积、功耗要求严格的专用计算机体系。随着各种微处理器功能的完善以及软件上 *** 作系统的支持,使得嵌入式系统有了完整的体系架构。

  在专用的嵌入式板上运行 *** 作系统需要利用Bootloader来引导加载内核和系统程序。Bootloader主要实现初始化硬件设备、建立内存空间的映射图,从而把嵌入式硬件和嵌入式 *** 作系统很好地衔接起来。

  根据IEEE(电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”(devices used to control, monitor, or assist the operaTIon of equipment, machinery or plants)。从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统对功能,对可靠性、成本、体积、功耗有严格要求的。与目前常见的嵌入式 *** 作系统如Vxworks,QNx,Windows CE,Palm Os等相比,嵌入式Linux *** 作系统以价格低廉、功能强大而且易于移植被广泛地使用到各种嵌入式设备当中。

  AT91RM9200处理器,是由Atmel公司开发的基于ARM920T内核的微处理器,带有MMU,CPU时钟最高可达240 MHz,有着丰富的标准接口、EBI接口,内部集成了静态存储控制器、SDRAM控制器、Burst Flash控制器等。SDRAM采用两片hy57v651620b芯片,组成32 bit通道,大小一共16 MB,Flash采用Intel Js28f128芯片,容量为16 MB。网络芯片采用dm9161a。系统硬件平台的原理,如图1所示。

 基于AT91RM9200的嵌入式ARM开发平台的设计,第2张

  1 U-Boot移植

  对于AT91RM9200,系统上电时,通过检测BMS来选择系统的启动方式,如果BMS为高电平,则系统从片内ROM启动,如果BMS为低电平,则从片外的Flash启动。在没有移植U-Boot到Flash之前,只能选择片内ROM启动。AT91RM9200的ROM固化了一个Bootloarder程序,这个Bootloader主要完成一些相应的初始化工作,并且运行Xmodem协议等待接收Loader.bin映像。其中Boot.bin主要实现的任务是把Flash中的U-Boot拷贝到内存中执行。AT91RM9200应用于数据采集传输,自动控制,工业应用,微型嵌入式终端等

  U-Boot的源代码可以到官方网站下载。文中所用的版本是U-Boot-1.1.1,对AT91RM9200的芯片完全支持,由于具体硬件的不同,需要做一定的修改。支持AT91RM9200代码在BOARD/AT91RM9200 目录下面,主要有AT91RM9200DK.c,Flash.c,U-Boot.lds,Con-fig.mk几个文件。主要做的修改如下:

  (1)修改Config.mk中的Tex_base为0x20f00000,和前面的boot地址保持一致;

  (2)修改Flash.c文件,使其支持Intel JS28F128芯片。由于官方使用支持的是AMD Flash,需要在代码里添加对本系统芯片的支持。在U-Boot的代码中Strong ARM架构里的xm250,它的代码是支持Intel Flash的,可以参考相应代码实现移植;

  (3)修改头文件 include/Configs/AT91RM9200dk.H,主要修改的是针对SDRAM以及Flash的参数配置:将phys_sdram设置成0x20000000,这个是SDRAM的起始地址,phys_flash_sdram_size设置为0x1000000,SDRAM容量为16 MB。扇区的总数cfg_max_flash_sect相应设置为128。

  最后在Linux里安装交叉编译器,笔者用的交叉编译器的版本是2.95.3,编译代码,生成U-Boot.bin文件。U-Boot启动后显示,如图2所示。

 基于AT91RM9200的嵌入式ARM开发平台的设计,第3张

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2713589.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-17
下一篇 2022-08-17

发表评论

登录后才能评论

评论列表(0条)

保存