在MPC8250的船只上航向Linux嵌入式系统的海洋开发技术之旅
摘要:本文深入探讨了基于PowerPC处理器MPC8250的嵌入式Linux系统开发技术,以实现飞机外场维护与故障诊断系统之间的高效通信。该系统采用Motorola公司的MPC8250处理器和嵌入式Linux操作系统,结合了网络功能和设备支持,为飞机维护提供了一套实时通讯平台。
关键词:嵌入式Linux系统、PowerPC处理器、MPC8250
一、引言
本文旨在展示如何利用Motorola公司的PowerPC处理器——MPC8250,以及其强大的网络支持功能,为飞机外场维护与故障诊断提供一个实时通讯平台。本平台采用了简洁、高效且具有良好扩展性的设计,使得维修过程更加迅速和准确。
二、MPC8250构架与系统硬件平台简介
MCP8250是一款面向通信领域的小型化、高性能微控制单元,其内核频率可达150-200MHz,而最高PCI频率为133MHz。该芯片集成了G2内核以及多种常用外围通信组件,可用于各种复杂通信任务。在我们的应用中,硬件核心采用了这样的配置,并配备有8MB闪存存储内核镜像文件及其他必要数据,64MBSDRAM作为运行空间,以及RS232串口、10/100Mbps以太网口等接口。
三、基于MPC8250的嵌入式linux系统开发
编译环境定制
为了适应不同目标板,我们需要进行交叉编译。这通常涉及到安装交叉编译工具,如GNU C,它包含gcc/g++编译器以及glibc/newlib等C库。我们选择使用德国denx软件中心提供的一套针对PowerPCEmbedded Linux移植而设计的地图(Embedded Linux Development Kit),以ELDK3.0版本作为基础。
目标系统资源分配
由于目标设备没有磁盘驱动,我们必须精心规划每个硬件地址。在我们的案例中,我们按照表1所示进行了地址分配:
表1 - 目标设备地址分配
调试环境建立
为了调试目标设备,我们通过JTAG仿真器BDI2000跟踪代码执行状态。这包括两部分:
网卡1#直接连接到目标机,用来下载内核镜像。
网卡2#连接至BDI2004,然后再通过JTAG端口连接至目标机。
串口用于命令传输及返回信息接收。
Linux引导模块U-Boot移植
U-BOOT是一个开源项目,可以在多种处理器上工作,如ARM系列、PowerPCH系列等。我们首先生成可执行文件,然后根据自己的需求修改编辑U-BOOT包下的文件。此过程包括修改寄存器值、新定义物理端口设置BCSR等参数,以及根据TQM826ADS定义物理端口并添加相应代码段以支持我们的特定硬件配置。
内核裁减与移植:
a) 内核裁减:去除不必要模块,将余下的模块调整以符合小型化要求。
b) 内核移植:主要是更改arch/ppc/826Io下相关宏定义,以匹配合适硬件;在arch/ppc/kernel/m826Setup.C中设置总线频率;修改MTD 设置使其符合Flash 的实际情况;最后反复调试无误后将内核镜像下载至目的地板,并重启测试启动是否成功。
文件
(待补充)