文档介绍:摘  要:本文从软硬件两方面介绍了构建嵌入式系统开发平台的基本思路,并给出了一套实现方案。该平台硬件部分低成本、扩展性强、升级方便;软件部分功能丰富,操作系统内核基于开放源代码的mClinux系统,成熟稳定,GUI支持中文。关键词:嵌入式系统;mClinux;交叉编译调试我们从硬件/软件协同设计的角度出发,构建和实现了一套基于Linux系统的嵌入式系统开发平台,包括硬件设计平台和软件开发平台两部分。利用该平台可以方便地进行有关嵌入式系统的研发,是一套廉价而全面的解决方案。硬件设计平台硬件平台由基本系统(包括CPU和存储器)加上外围接口电路模块构成。基本系统为操作系统内核提供一个最小的调试和运行环境,外围接口模块包括目前应用较为广泛的多种硬件接口电路,如LCD液晶显示模块、触摸屏模块、CF卡模块、USB模块、以太网模块、IC卡模块等,可以方便地根据开发者的需求进行选择使用。硬件设计平台基本框架如图1所示。目前,硬件平台基于摩托罗拉公司的DragonBallEZ328(16MHz)微处理器,主要配置包括8MBEDODRAM、4MBFLASH、320×240像素单色LCD、6个输入按键、一路RS232接口、一路10M以太网接口等。EZ328是一款得到了广泛应用的32位嵌入式微处理器,内部集成了大量的功能模块,并且具有较强的扩展能力。EZ328取消了内存管理单元(MMU),降低了硬件成本及运行功耗。EZ328所支持的引导模式也极大地方便了系统的调试。在我们的开发板上,只要驱动EZ328的EMUBRK引脚为低电平并执行系统复位,就可使EZ328进入引导模式,其内建的引导程序就会开始运行,初始化芯片上集成的UART控制器并准备接收数据。这样开发者就可以通过UART控制器写寄存器来初始化开发板,然后下载程序到开发板的RAM和FLASH中运行调试。同时,硬件平台CPU可方便地升级到VZ328(主频33MHz,EZ328的后续产品)。而且,在EZ328硬件平台上开发的软件几乎不需要修改就能使用在VZ328和ColdFire系列微处理器上,具有很广的适用面。ColdFire微处理器主要应用于互联网设备、LAN电话技术、低端网络控制、工业控制、图像和存储等等。图1 硬件设计平台基本框架图2软件开发环境软件开发平台软件平台由嵌入式Linux操作系统、嵌入式图形用户界面(GUI)、GNU交叉编译调试工具组成。其中嵌入式Linux操作系统包括嵌入式Linux内核,ROM/RAM文件系统。选用Linux是因为Linux高度模块化,容易定制,具有很高的可移植性。软件平台所实现的嵌入式Linux系统内核是在mCLinux系统的基础上移植而来的。它是专门面向没有MMU的CPU的Linux操作系统,并且专为嵌入式系统做了许多小型化的工作,得到了广泛的应用,新型的蓝牙网络设备也采用了mClinux操作系统。mCLinux作为一个高度优化的、代码紧凑的嵌入式Linux,虽然体积很小,但仍然保留了Linux的大多数优点:稳定、良好的移植性,优秀的网络功能,完备的对各种文件系统的支持,以及标准丰富的API。在我们的开发平台上,移植的操作系统内核大小约400KB,提供了通用LinuxAPI和完整的TCP/IP协议栈,实现了对NFS、ext2、ROMfs、JFFS文件系统的支持。GUI采用了Micr