基于ARM9的嵌入式Linux网络通信系统设计与实现.docx

基于ARM9的嵌入式Linux网络通信系统设计与实现.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于ARM9的嵌入式Linux网络通信系统设计与实现

基于ARM9的嵌入式Linux网络通信系统设计与实现随着计算机技术的发展,嵌入式系统已经成为计算机领域的一个重要组成部分。Internet现已成为社会重要的基础信息设施之一,是信息流通的重要渠道,如何让嵌入式设备连接到Internet上,和其他通信系统进行信息交换是当前嵌入式技术领域研究的热点所在。本文结合实际应用需求,详细研究实现了一种基于S3C2410平台和Linux操作系统的嵌入式网络通信系统。1.嵌入式网络通信系统总体设计经过大量的资料收集比较,深入地研究分析并结合现有的实验条件,我们对系统的体系结构、硬件平台和软件系统做出了以下选择:1)目前嵌入式CPU很多,选择哪款CPU要根据自己产品的实际需要。一般而言,首先应尽量选择系统集成度高、外围电路简洁的CPU;其次,还应综合考察CPU的各项性能指标;最后,还应该考虑软硬件开发环境的建立、厂家的货源以及代理的软件支持力度。经过比较, 本设计采用三星的S3C2410微处理器。这是一款高性价比、低功耗、高集成度的CPU,基于ARM920T内核,主频最高为203MHz,专为手持设备和网络应用而设计,能满足嵌入式系统中的低成本、低功耗、高性能、小体积的要求。图1为硬件平台的总体设计[ 1 ] 。CPU S3C2410模块是开发板的核心部件。S3C2410 在包含ARM920T核的同时,增加了丰富的外围资源,主要包括1个LCD 控制器,支持STN 和TFT液晶显示屏; 3个通道UART; 4个通道DMA; 4个具有PWM功能的16位定时/计数器和1个16位内部定时器, 支持外部时钟源; 8通道10位ADC,最高速率可达500kB / s;触摸屏、IIS总线、SD 卡和MMC卡接口;117位通用I/O口和24位外部中断源。存储系统包括64MB的NAND Flash存储器模块和SDRAM存储器模块; Flash用于存放嵌入式操作系统、应用程序和用户数据等,并作嵌入式文件系统; SDRAM作为系统运行时的主要区域,用于存放系统及用户数据。通信模块包括串口和以太网接口模块;以太网接口为系统提供以太网接入的物理通道, UART接口则通过RS232可以和宿主机做串口通讯。JTAG调试接口用于系统的嵌入式调试。扩展总线扩展出了系统总线供今后继续开发使用。图1 硬件平台结构框图2)网络通信系统需要一个便宜、成熟并且提供高端嵌入式系统所必须特性的操作系统,嵌入式Linux操作系统以价格低廉、功能强大又易于移植而正在被广泛采用,成为嵌入式操作系统的首选。因此,在软件体系上采用L inux216版本作为操作系统内核,并使用GNU工具链,包括编译器、汇编器、库、调试器和相关实用程序等[ 2 ] 。根据以上,系统体系结构如图2所示:图2 系统体系结构2.基于S3C2410的以太网接口电路以太网芯片采用了Cirrus Logic公司生产的低功耗、性能优良的16位以太网控制器CS8900A[ 3 ] 。CS8900A包括片上RAM, 10Base2T传输和接受滤波器。该芯片的突出特点是使用灵活,其物理层接口、数据传输模式和工作模式等都可以根据需要而动态调整,通过内部寄存器设置来适应不同的环境。为了工艺简洁,采用内部带有变压器的RJ45。本系统选用的是中山汉任的HR901103A。网络接口硬件电路原理图如图3。数据的发送校验,总线数据包的碰撞检测与避免是由CS8900A自己完成的。信号的发送和接收端通过RJ45接口接入CS8900A,再传送给S3C2410,从而组成了以太网信号传输的硬件通道。3.嵌入式通信系统软件设计本文的软件系统设计采用C/S(客户机/服务器)模式,以S3C2410平台作为服务器,以PC作为客户端。服务器在得到客户端的请求时将信息通过网络传给客户端。下面讨论通信系统软件的具体设计与实现[ 4 ] 。3.1 建立宿主机开发环境本文以PC为宿主机,带有Fedora5系统,开发环境就建立在这个平台上。对于嵌入式系统的开发,由于没有足够的资源在目标板上运行开发工具和调试工具,所以通常采用交叉编译调试的方式。本文采用的交叉编译器为arm2linux2gcc,开发时使用宿主机上的交叉编译、汇编及连接工具生成可执行的二进制代码。然后,把可执行文件下载到目标机上运行。为了快速方便地下载,采用tftp方式,这就需要宿主机在宿主机上安装tftp 服务器,并进行配置。3.2 操作系统的移植嵌入式系统的存储空间往往很有限, 需要把Linux系统根据实应用需求进行裁剪。对Linux进行裁减需要对L inux系统有完全的了解,如启动过程、文件系统、目录结构、系统工具文件等[ 5 ] 。这一过程需要在空间和功能上加以权衡。其主要包括以下两部分工作:3.2.1 Linux内核的移植 针对系统的硬件,修改Linux2216内核

文档评论(0)

2017ll + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档