当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]1 引言当今时代设备网络化是当今科技发展的趋势。如何使用嵌入式系统将设备的远程控制、数据的远程传输数据转发到网络上呢?嵌入式网关使用嵌入式Linux操作系统,数据存储芯

1 引言

当今时代设备网络化是当今科技发展的趋势。如何使用嵌入式系统将设备的远程控制、数据的远程传输数据转发到网络上呢?嵌入式网关使用嵌入式Linux操作系统,数据存储芯片SDRAM、FLASH,网络控制芯片DM9161等,实现网络通讯的传输方案便是基于这种思想而设计的。

2 硬件设计

本系统采用ATMEL公司生产的微处理器AT91RM9200T 。其处理速度可达200MIPS,同时它也具有USB、Earthnet、支持RS485的红外串口、IIC、SPI、SSC等丰富的片内资源。网口控制芯片DM9161, SDRAM和Flash接口。系统的硬件结构框架如图1所示。

 

2.1 AT91RM9200T简介

AT91RM9200T是英国ATMEL公司出品的一款工业级ARM9微处理器,处理速度可达200MIPS。其集成了USB 2.0 全速主机和设备端口及与10/100 Base-T 以太网媒体访问控制器(MAC)。此外,它还提供一系列符合工业标准的外设。

2.2存储器接口电路

存储器接口电路包括两个方面:一是RAM接口,主要存储数据,采用PCI接口方式;二是Flash接口,主要存储操作系统及应用软件,采用并口形式与CPU相连。

2.2.1 Flash 存储器接口电路

Flash 在系统中通常用于存放程序代码、常量表以及一些系统掉电后要保存的数据。Flash存储器是一种集成度高的、非易失存储器。本系统采用Intel 公司生产的NOR flash,与NAND flash 相比,它的优点是可以直接从flash中运行程序,但工艺复杂,价格比较贵。

2.2.2 SDRAM 接口电路

SDRAM 是高速的动态随机存取存储器,在系统中主要用作程序的运行空间、数据及堆栈区。与Flash 存储器相比较,SDRAM 不具有掉电保持数据的特性,但其存取速度大大高于Flash 存储器,且具有读/写的属性。

本系统采用两片HY57V641620 并联构成32 位的SDRAM 存储系统,其中一片为高16 位,另一片为低16位。两片HY57V641620 的CLK 端接的SDCLK 端、CLE 端接AT91RM9200的 CLE 端。

2.2.3 以太网接口控制器DM9161接口

本设计使用DM9161作为以太网的物理层接口。DM9161是一款低功耗、高性能的CMOS芯片,支持10M和100M的以太网传输,编码、译码输入和输出数据。它通过RMII与AT91RM9200相连,经过一个隔离器件(H1012),提供了RJ45接口。

3 软件设计

本系统采用Linux 作为操作系统。Linux的是一套免费的32位的多任务操作系统, Linux系统稳定与网络功能非常强大。与其它操作系统相比,Linux还具有以下特色:

(1)采用阶层式目录结构,文件归类清楚、容易管理;

(2) 支持多种文件系统,如FAT16,FAT32,NTFS等;

(3)具备高度移植性。

3.1 网络程序的设计

3.1.1 Linux 下的网络编程协议分析

Linux 下的TCP/IP 网络协议栈的各层之间的通讯是通过一系列互相连接层的软件来实现的,结构层次如图2 所示。

 

AT91RM9200T的嵌入式网络接口" />

其中,socket 层由专门用来处理Socket 的通用套接字管理软件处理。Socket 为基于IP 的协议TCP 和UDP 管理传输端点。UDP(用户数据报协议)是一个无连接协议, 传输UDP 包的时候,不关心是否它们安全到达了目的。而TCP(传输控制协议)是一个可靠的端对端协议。本系统采用可靠性连接的TCP网络协议。

网络程序是由客户端和服务器端两部分组成。服务器端建立步骤为 socket-->bind-->listen-->accept。客户端socket-->connect。Linux通过套结字socket和其他函数的调用进行网络通讯。返回的文件描述符,可以看成普通文件的描述符。通过向描述符读写操作实现网络的数据通讯,体现了 linux 的设备无关性。以下是网络程序部分函数:

 

3.2 Linux中网络通信编程的实现

 

在编写网络应用程序时,需注意计算机中的数据存储有两种字节优先顺序:高位字节优先和低位字节优先。在互联网上,是以高位字节优先顺序传输数据的。所以,对于在内部以低位字节优先方式存储的数据想在互联网上传输需要进行转换。

 

下面给出部分Linux下网络通信应用程序的源代码实例。

int main() 函数中部分代码如下:

 

其中,使用库函数inet_pton()将输入的字符串IP转换为connect函数可识别的整数uiip。

4结束语

本设计已在ARM9开发板上实现了基于嵌入式网关的嵌入式系统网络通讯。它结合目前飞速发展的32位嵌入式技术,采用嵌入式Linux操作系统,源代码开放,应用丰富,内嵌嵌入式Web服务器,用于远程控制、设置、和监视设备的状态。通过以太网实现嵌入式系统与网络服务器的信息传递以及音频、视频等占用大量带宽的数据的传输,将以前单片机时代的低速传输模式升级为使用100M带宽的TCP/IP网络进行通信。开发者只须根据实际情况编写上层应用软件,即可解决大多数的工控设备和通讯设备的网络通讯问题,实现“嵌入式Internet”。

本文作者创新点:设计提出了基于ARM9嵌入式网络技术,采用嵌入式技术和Linux 实时多任务操作系统应用于远程控制和监视等数据的网络传输,能充分利用现有网络硬件设施,节约了开发成本,缩短了开发周期。本设计模式是工业控制网络通讯的一个发展趋势。若现有煤矿监控系统采用本模式,项目经济效益至少在30万元以上。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

电力线通信(Power Line Communication,英文简称PLC)技术是指利用电力线传输数据和媒体信号的一种通信方式 [1] 。该技术是把载有信息的高频加载于电流然后用电线传输接收信息的适配器再把高频从电流中...

关键字: 电力线通信 网络接口

摘 要:随着嵌入式技术的广泛应用,ARM9平台上的嵌入式Linux操作系统成为一个焦点。在诸多嵌入式操作系统中,Linux凭借其低成本开发,可应用于多种硬件平台,可定制内核,性能优异,良好的网络支持等优势成为嵌入式系统...

关键字: ARM9 嵌入式Linux 操作系统 移植

CNI简介容器网络的配置是一个复杂的过程,为了应对各式各样的需求,容器网络的解决方案也多种多样,例如有Flannel,Calico,Kube-OVN,Weave等。同时,容器平台/运行时也是多样的,例如有Kubernet...

关键字: 网络接口

摘 要:利用ARM9嵌入式系统设计了一款草坪自动浇水系统,该系统以温湿度传感器DHT11为感应部件来采集草坪区域内空气温湿度值,并将数值传送给ARM9,ARM9再根据收集到的数据与程序设定的浇水上下限值相比较,当低于下限...

关键字: ARM9 LCD DHT11 自动浇水系统

以低功耗微型电容式三轴向加速度传感器作为传感部件,采用基于ARM9的嵌入式系统并定制Linux作为总控系统,选择符合802.11b标准的无线通讯技术作为仪器的网络接入方式。

关键字: IPv6 ARM9 地震烈度仪

计算机多媒体技术和网络技术飞速发展使得基于流媒体的多媒体应用也被运用在多种领域,特别是网络可视电话、远程监控、视频点播领域。

关键字: ARM9 媒体播放器 TQ2440

随着社会的发展,人们的医疗保健意识越来越强,所以医生的培训也就成为非常重要的环节。心电除颤技术作为医生培训的一个主要方面,若操作规范,动作熟练,往往在紧急关头可以救人于危难之间。

关键字: ARM9 心电除颤 模拟发生系统

指纹门禁系统是基于生物特征识别技术的一项高科技安全设施,近年来在国内外得到了广泛的应用,并已成为现代化建筑智能化的标志之一。

关键字: ARM9 指纹识别 门禁系统

网络接口代表操作系统中的网络硬件设备,网络接口通常使用Linux操作系统中的工具进行配置,接下来小编将为大家介绍一下网络配置的工具。

关键字: Linux 网络接口 eth0

大家都知道无线网桥是用来传输信号的设备,由发设备端和接收端组成。但是信号是一个统称,可以包含很多类型的信号,无线网桥在应用当中都可以传输哪些信号呢?下面我们就来了解下。 1、传输音视频

关键字: 信号 无线网桥 网络信号 网络接口
关闭
关闭