人人范文网 范文大全

基于ARM的嵌入式Linux平台研究

发布时间:2020-03-03 15:15:50 来源:范文大全 收藏本文 下载本文 手机版

基于ARM的嵌入式Linux平台研究

摘要: 介绍基于ARM的嵌入式Linux系统平台的系统硬件系统构架,软件系统的组成和主要功能模块的实现。由于本系统采用的S3C2440 ARM9芯片具有较高性能和丰富的外围接口资源,因此具有控制能力强,硬件结构简单,方便功能扩展等优点,在控制系统中有较高的实用价值。

关键词: 嵌入式系统;Linux;S3C2440

中图分类号:TP3文献标识码:A文章编号:1671-7597(2010)0610166-01

0 引言

随着计算机技术的发展,嵌入式系统已成为计算机领域的一个重要组成部分。由于嵌入式系统应用的场合日趋复杂,只使用嵌入式控制器控制将难以满足要求,所以嵌入式操作系统得到了飞速的发展。

本文拟采用RISC体系结构的ARM处理器扩展外设及存储器等作为硬件平台;采用功能强大,易于移植的嵌入式Linux作为系统软件平台便于有效管理内存、实现多任务编程,是对市面上较多以8位、16位机为主控CPU的控制器的发展进步。

1 嵌入式Linux系统的特点

Linux是一套类Unix的操作系统,具有Unix系统的程序接口和操作方式,也继承了Unix稳定和高效率的特点。目前内核已发展到2.6版本。

Linux内核遵循开放系统互连(OSI:OpenSystem Interconnect)国际标准,凡遵循该标准开发的硬件和软件,都能彼此兼容,方便程序移植到其它系统平台。其次,Linux具有良好的用户界面。传统用户界面是基于文本的命令行界面,有很强的程序设计能力,系统调用是给用户提供编程时使用的界面,用户可以在编程时直接使用系统提供的系统调用命令。完善的内置网络是Linux的一大特点,Linux在通信和网络功能方面优于其他操作系统,为用户提供了完善的、强大的网络功能,这一点也是继承了UNIX的优良传统。

2 嵌入式Linux系统硬件架构及开发平台

本文采用的硬件平台是基于ARM9构架的嵌入式芯片S3C2440A,主频533MHz,支持Linux,Wince等操作系统。此外,外接了64M RAM,64M Flash,

以太网控制芯片CS8900A。外围接口配有以太网口、RS232,USB等以便为建立交叉开发环境做好通讯、调试等方面的准备;配置LCD,触摸屏等以便实现人机交互系统。

硬件设计分为系统电路和功能电路两部分,系统电路为S3C2440A运行操作系统提供最小系统;功能电路提供各种接口实现控制器功能需求。

系统电路主要包括:电源电路、复位电路、时钟电路、存储器扩展和JTAG接口。为了流畅运行操作系统,本文在存储器扩展部分选用2M NOR Flash存储启动代码和操作系统,64M NAND Flash存储文件系统和应用程序代码。前者选用AMD公司的AM29LV160DB(1Mb×16),后者用三星的K9F1208U0A(64Mb×8)。

功能电路主要包括:液晶、触摸屏电路、以太网接口电路、USB Host

接口电路等。主要提供人机交互系统,网络链接,usb设备链接的功能。

3 嵌入式Linux系统软件的设计

在开发系统前,必须安装Linux操作系统。然后在宿主机即PC机上建立交叉开发环境,安装交叉编译器cro_2.95.3.tar.bz2。然后编译ARM Linux 内核,在Linux的终端下,先进入ARM Linux内核源代码的目录下,执行make menuconfig命令就会出来内核配置主界面。在配置内核的时候可以静态的把CS8900A芯片、LCD、触摸屏以及U盘支持的驱动加入内核。保存对内核的设置后退出,然后在命令行下输入:

#make dep 建立整个内核程序间的依赖关系

#make zImage编译内核为zImage模式

编译完成后,在arch/arm/boot 目录下将生成ARM Linux 内核映像文件zImage。这就是要下载到硬件系统的内核映像文件。此内核包含了上述的以太网、LCD等模块,为下面设计提供了必需的系统软件功能。上位机软件的具体实现功能:通过以太网口可以实现远程控制,LCD、触摸屏提供人机交互界面,通过USB接口实现U盘读取数据等。

在应用程序开发上,系统的软件模块主要实现U盘读写、键盘和触摸屏控制、液晶屏图形驱动显示、断电数据保护、内存管理和串口通讯,以太网通讯等。操作系统的移植以及扩展,辅助开发平台上已有完备的软件平台,无须做过多修改就可移植到我们的平台上。可以将各功能模块编制成独立的任务,通过操作系统提供的API,有效的调度任务,实现任务之间的同步与通信,更好的完成工作。以下便是各功能的简单介绍和具体实现过程。

4 网络系统的设计

TCP和UDP是TCP/IP协议中的两个传输层协议,它们使用IP路由功能把数据送到目的地。TCP提供的是面向连接的、可靠的数据流传输,而UDP提供的是非面向连接的、不可靠的数据流传输,对数据不进行重传和确认。当要求传输的数据完整、可控、可靠时,应该选择TCP协议。当强调传输的实时性而不是完整性时,例如传输音视频信号时,应选择UDP协议。

CS8900A是CIRRUS LOGIC公司生产的16位以太网控制器,芯片内嵌片内RAM,10BASE-T收发滤波器,直接ISA总线接口。该芯片的突出特点是使用灵活,其物理层接口、数据传输模式和工作模式等都能根据需要而动态调整,通过内部寄存器的设置来适应不同的应用环境。发送过程中,首先添加以太网帧头(包括先导字段和帧开始标志),然后生成CRC校验码,最后将此数据帧发送到以太网上。接受时,他将从以太网收到的数据帧在经过解码、去掉帧头和地址检验等步骤后缓存在片内。通过CRC校验后,它会根据初始化配置情况,通知主机CS8900A收到了数据帧,最后用上面介绍的某种传输模式传到主机的存储区中。

5 液晶显示系统设计

本设计采用Linux为显示设备提供的帧缓冲(framebuffer)接口,把显存抽象后的一种设备,他允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。这种操作是抽象的,统一的。用户不必关心物理显存的位置、换页机制等等具体细节。这些都是由Framebuffer设备驱动来完成的。

6 结束语

解决方案采用先进的基于ARM的32位先进处理器,并移植扩展好的嵌入式实时操作系统构成我们的开发平台,提出了一种新的思路,做出了大胆的尝试,相信随着工作的进一步深化、进展,定能取得另人满意的控制效果。

参考文献:

[1]孙天泽、袁文菊,嵌入式设计及Linux驱动开发指南-基于ARM9处理器(第2版)[M].北京:电子工业出版社,2006.

[2]杨宗源、黄海涛(译),Unix/Linux编程实践教程[M].北京:清华大学出版社,2008年5月.

嵌入式linu学习心得

arm嵌入式学习心得

嵌入式系统ARM实验报告

ARM与嵌入式实验报告

实习总结嵌入式ARM

ARM嵌入式技术复习总结

基于嵌入式ARM平台的远程IO数据采集系统的研究和开发.

基于嵌入式ARM平台的远程I O数据采集系统的研究和开发

电子秒表式计数器 ARM嵌入式

linux嵌入式学习流程及ARM学习大纲

基于ARM的嵌入式Linux平台研究
《基于ARM的嵌入式Linux平台研究.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档