论文部分内容阅读
随着嵌入式系统在消费电子、工业控制、汽车电子、医疗仪器等领域中被日益广泛的应用,对嵌入式系统关键技术的研究也成为了当前的研究热点。并且,随着微处理器及片上技术的发展,嵌入式系统的硬件部分逐渐被业界稳定下来并且可方便的裁剪,因此对嵌入式系统研究的难点就突出表现在了软件部分。本文以基于嵌入式的手持终端为研究对象,结合嵌入式软件系统开发的关键技术,论述了基于嵌入式Linux和MiniGUI的手持终端的设计与实现。论文的主要内容包括:首先,在分析嵌入式手持终端在国内外研究状况及发展趋势的基础上,介绍了嵌入式手持终端的总体设计思想。通过分别对当前流行的几种嵌入式处理器、嵌入式操作系统、GUI图形支持系统优缺点的讨论,结合手持终端的特点选择了以ARM9为核心的S3C2410为本系统的硬件平台,Linux和MiniGUI为本系统的软件平台。其次,在分析内核启动引导程序BootLoader工作原理的基础上,详尽阐述了基于S3C2410的U-Boot的移植思想及方法。依据本系统中所选硬件平台的特点,成功将U-Boot1.1.4移植到了S3C2410上,实现了从NandFlash启动U-Boot,实现了PING命令,为后续正确引导Linux启动做好了准备。接着,根据本系统的实际需求,阐述了对Linux2.4.18内核的裁剪和移植、CRAMFS及NFS两种文件系统的制作方法,开发了LED指示灯、矩阵键盘、串口设备、红外设备及USB设备的驱动程序。最后,在对MiniGUI系统分析的基础上,建立了MiniGUI在PC机上的开发环境。以无线抄表系统为例,开发了一套基于MiniGUI的具有友好界面的无线抄表的应用层软件系统。并通过向交叉编译器添加支持MiniGUI的字体及图片库文件,将无线抄表应用层软件系统成功移植到硬件系统上,通过红外设备实现了无线接收数据的抄表功能,通过串口及USB设备实现了手持终端与PC的数据传输功能。