嵌入式Internet的各种技术原理及连接方案概述

2019-11-02 03:21

  rnet的日益普及,信息共享程度的不断提高的今天,人们的工作和生活方式已经有了革命性的改变。家庭电器和工业设备中无处不在的充满了)。但目前大多数嵌入式系统还处于单独应用的阶段,而工业上也只是利用孤立于Internet以外的的控制通信网络(如,PROFIBUS等现场总线)实现MCU组网 。如果能将嵌入式系统连接到应用广泛的Internet上面,或者在现有网络的基础上利用 Internet为介质,则可以方便、低廉地将信息传送到几乎世界上的任何一个地方,从而进行远程

  嵌入式Internet技术,也就是将嵌入式系统与Internet结合起来实现系统网络化,涉及的两个关键问题即传送信息的媒质和采用的协议。与 Internet相联接的途径可以是以太网或者电话线等媒介。而在大多数工作场地都配有以太网,电子装置通过集线器(HUB)可以随时插接。在家庭中,也有电力线和电话线等载体可以利用。如果是与局域网连接,只需要为该装置设置硬的或软的IP地址就可。如果是利用电话线路,可以使用电话用户的ID。现在实现嵌入式电子装置的访问连通,几乎不成问题。所以嵌入式Internet技术的关键问题在于如何在MCU中实现Internet上被广泛使用的 TCP/IP通信协议。但是TCP/IP通信协议对于、运算速度等的要求比较高,普通单片机无法达到其要求。根据各种MCU自身的特性,实现 TCP/IP协议的方法可分以下几种:

  采用ARM内核的系列处理器或者386EX等高档MCU,其运算速度快,性能高,在芯片上可以运行实时操作系统(RTOS),同时也可以嵌入完整的TCP/IP协议。

  32位机也有足够的资源和能力运行TCP/IP协议和一些嵌入式操作系统。所以原则上讲,实现思路和高档机一样。

  由于8位和16位MCU的处理能力和存储问题,要实现TCP/IP协议是比较困难的。因此要根据其特点,对TCP/IP协议进行简化,保留其最基本的东西。同时,上层协议可不用或者简单实现。即将原来的TCP/IP协议转变成嵌入式TCP/IP协议,我们随后会具体介绍。

  由TCP/IP协议在MCU中的实现方法和嵌入式系统的要求,一般实现嵌入式Internet的方案有以下几种:

  1. 把标准网络协议(TCP/IP)一直扩展到嵌入式设备当中,由嵌入式系统自身实现联网功能,每个设备都可与Internet相连。这是解决问题的最佳方案及未来电器、设备的发展方向。例如Netscillon公司的ARM+NET系列芯片,将其嵌入到任何设备中既可实现上网。此方案对微处理器性能的要求较高。

  2. 通过专用的WEB服务器实现。 在现有的嵌入式系统中大量使用的是8位和16位MCU,并不要求每个设备都直接连到Internet上,用户可以通过Internet接近设备,然后再用轻量级网络扩展到多个设备上。如电力线C等 。专用WEB服务器可作为子网设备路由器来转换和实现嵌入式系统与外部网的通信。emWare公司专门为嵌入式微控制器设备设计的网络服务器。3. RS232/485,CAN, I2C通过嵌入式网关(emGateway)联接。嵌入式网关运行TCP/IP协议,与嵌入式设备轻量级网络(如RS-232,RS-485,现场总线等)相连接,提供与Internet或局域网的协议转换及路由功能。结构如图一所示。

  传输控制协议/网间协议 (TCP/IP)是构建Internet的标准协议,它最早是在PC机上实现的 。由于嵌入式系统与PC机的差别很大,因此在嵌入式系统中实现TCP/IP 协议与PC机操作系统中的实现有很大的不同。图二显示了嵌入式TCP/IP协议与TCP/IP协议各层详细的内容和协议和相对应的OSI模型关系。

  如图所示,TCP/IP通常采用一种简化的四层模型,分别为:应用层、传输层、网络层、网络

  实现的。接口层是由网络控制芯片实现的。由于嵌入式系统没有一个多任务的操作系统,而且又是直接面对硬件,所以嵌入式TCP/IP协议在应用层上要求简单。同时,不同嵌入式系统对嵌入式 Internet所采用的应用层协议要求不同,而且应用层的协议还要和链路层实现的协议相对应。因此,系统要根据自己的需要和链路层协议的实现来选择和简化应用层的协议。传输层主要为两台主机上的应用程序提供端到端的通信。传输层有两种不同的传输协议:面向连接的TCP(传输控制协议)和无连接的UDP(用户数据报协议)。TCP是面向接入即传输前必须先通过“三重握手”在主机间建立TCP接入,它所传数据流采用了顺序号和应答措施,可以发现数据的丢失、段的失序和对传输错误的排除,所以TCP协议提供的是数据流的可靠传输。但相对于UDP,它的可靠性是以复杂性为代价的,需要复杂庞大的程序来实现。UDP提供的是无连接的不可靠的服务,可能出现数据包的丢失,重复和连接失败等错误。但是正因没有接入机制,它可以实现高速发送,充分发挥物理传输设备的速度。UDP适合用在通信介质十分可靠的情况,例如以太网等。

  网络层处理分组在网络中的活动。其协议包括IP协议(网际协议)、ARP协议(地址解析协议)、ICMP协议(Internet互联网控制报文协议)以及IGMP 协议(Internet组管理协议)。IP协议是TCP/IP族的核心协议,它使异构网络之间的通信成为可能。因此如果嵌入式 Internet,需要跨越不同的网络进行通信就必须要实现IP协议。ARP协议实现将逻辑IP地址映射为物理地址。ICMP协议主要用来传递差错报文以及其他需要注意的信息。我们通常使用的应用程序

  网络的连通情况。对于普通的嵌入式Internet的应用而言,在 ICMP协议中能够测试网络的连通情况即可,因此只需实现ICMP中类型号为0、代码为0的PING应答协议即可。通常嵌入式Internet不考虑 IGMP。链路层主要作用是为其上层协议发送和接收数据包,根据物理层的不同,主要协议有以太网、令牌环网、FDDI(光纤分布式数据接口)及RS232串行线路协议等。可由选择的网络

  完成。3 设计实例应用普通8/16位MCU形成嵌入式网关是最具发展潜力的一大热点。而应用TCP/IP协议的以太网已经成为最流行的分组交换局域网技术,整个网络只有一种底层通讯协议,同时也具有开放的TCP/IP网络技术。它可满足控制系统各个层次的要求 。工业控制领域中常用的现场总线和串行通信可以通过嵌入式网关与以太网相连,从而方便的实现控制网络与Internet连接,目前基于以太网的工业控制网络已经成为未来的发展趋势。所以本设计采用在16位MCU 中嵌入“裁剪”后的TCP/IP协议栈及以太网控制芯片驱动程序,并通过以太网接入Internet网络。其硬件框图如图三所示。

  这种方案首先要求在链路层上,由于采用以太网的接人方式,系统必须要实现IEEE802.3标准,这可采用通用的

  芯片RTL8019AS来完成。其次,为了保证系统在以太网的通信,系统还需实现ARP应答协议。在网络层上要实现IP协议,为了能够测试系统与网络的连接,系统需要实现ICMP 协议中的ping应答协议。在传输层上我们选择UDP协议。应用层上单片机系统传递来自

  和数据终端的数据,应用层只对大的数据报作打包拆报处理。RTL8019AS是RealTek公司生产的一种全双工以太网控制器,符合Ethernet II 、IEEE802.3(10Base5、 10Base2、10BaseT)标准;与NE2000兼容;支持8位、16位数据总线KB的SRAM,用于收发缓冲,可降低对主处理器的速度要求。外部RAM使用PSD4135(512KB),从而为数据处理提供了很大的缓存,同时它也有地址

  存和地址译码功能。使用E2PROM— 93C46,可以将网卡物理地址和其他参数保存在里面。这里的RTL8019AS就是处理以太网协议(IEEE802.3)的。数据的流向为:请求信息从局域网中来,通过RJ45送到RTL8019AS,处理后的数据包送入80C196协议栈,由协议栈对数据包进行解析,得到原始请求信息。请求信息再经过80C196的处理,产生回复信息。回复信息到局域网的过程与上面正好相反。RJ45为此系统与局域网的接口。

  一个标准的IEEE 802.3数据帧由七部分组成,图四说明了标准的IEEE 802.3数据包与TCP/IP协议数据的关系。

  数据段的个数可从46Byte~1500Byte,不足46Byte时用零补足;超过1500Byte时,需要拆成多个帧传送。前导位、帧起始位和帧校验序列仅供控制器本身用,主处理器收到的数据帧的组成依次包括:接收状态、下一帧的页地址指针、目的地址、源地址、数据长度、数据段。 IEEE 802.3标准中的数据长度值小于或等于0x0600时,表示数据段的长度;反之,表示数据帧的类型。例如值为 0x0800,表示数据段为 IP包;值为0x0806,表示数据段为ARP包。

  在选定硬件,完成各芯片间地址线、数据线及状态线连接后,开始软件设计。软件设计主要包括:芯片初始化程序、以太网控制器驱动程序、TCP/IP协议栈程序、系统网络配置程序。芯片初始化程序用于设置MCU工作模式及外围芯片选择;以太网控制器驱动程序用于设置以太网控制芯片的工作状态及工作方式,分配收发数据的缓冲区;系统网络配置程序用于给监测系统分配IP地址及域名。

  当网络有数据时,RTL8019AS在接收和处理完以太网数据帧后传送给单片机,80C196对数据包进行分析,如果是ARP(物理地址解析)数据包,则程序转入ARP处理程序。如果是IP数据包且IP地址正确,则继续分析若是ICMP包,则调用ICMP处理程序。若是UDP数据包,则80C196 对数据解包后,将数据部分转存在PSD4135中或者通过串口输出。反之,当有数据要发送时,80C196将调用UDP打包程序来封装数据并送入 RTL8019的缓存中去。具体流程为:数据放到UDP的数据段-》生成UDP校验-》建立IP头-》(ARP地址解析)-》生成Ethernet头-》放到网卡发送缓冲区-》发送 。

  基于嵌入式Internet的工业以太网控制网络是未来新一代工业控制网络的发展趋势。本文阐述了嵌入式Internet的各种技术原理,并通过了以太网接口控制芯片和嵌入式TCP/IP协议实现了嵌入式网关的功能。相信随着嵌入式Internet技术的日益完善,这种可与现场总线等已有网络实现方便简单连接的方案,会得到更加广泛的应用。

  1. 李明。康静秋。 嵌入式TCP/IP协议栈的研究与开发。 计算机工程与应用 2002.16

  3. Kenneth D .Reed. 《协议分析》孙坦 张学锋等译 北京:电子工业出版社

  4. 陶波,丁汉等。 基于嵌入式Internet的工业控制。 测控技术, 2002.20.(8)

  5. 万静华,丁亚军 以太网控制器的嵌入式设备网络互连 单片机与嵌入式系统应用2001.12

  6. 杨志红。江汉红。 用嵌入式Internet技术构建远程监测系统。 电子产品世界。 2002.6

  注:已经报名的学员请添加班级群669626886————————————————————————————————————

  中星微“数字多媒体芯片技术”国家重点实验室在北京宣布,经过五年多努力,中国首款嵌入式神经网络处理器(....

  工作频率:压电晶片的共振频率,波长越长,频率越小,检测距离越大但是精度会降低。 &nb...

  1.写在前面   嵌入式开发,不同于PC、移动设备(手机、平板)以“GB”为单位的存储空间(ROM)和内存(RA...

  在经过两年的施工建设后,荷兰能源公司Eneco的Luchterduinen风电场正式投入运行。监测位....

  随着指纹识别在智能手机上面的普及,指纹识别技术在越来越多的场合中得到应用。除了手机应用之外,在移动支....

  AMD Zen架构横空出世以来,已经先后覆盖了消费级桌面/笔记本、商务级桌面/笔记本、服务器数据中心....

  近年来,嵌入式工控机在工控机的应用中日趋成熟,开始在一些领域取代传统工控机,比如从工业流水线,到智能....

  随着便携式智能设备的普及,用户对人机交互界面(GUI)的要求越来越高,而Qt的资源占用大等短板致使在....

  在数据化时代,各个零散城市信息系统的互联成为可能,数据资源的高度利用使得各个原本孤立的系统被打通,数....

  全球发展最快的可编程逻辑器件供应商—广东高云半导体科技股份有限公司(以下简称“高云半导体”)将于20....

  近年来,随着基于嵌入式微处理器和嵌入式操作系统的智能手机技术的飞速发展,基于Windows Mobile系统的嵌入式智能手...

  在Internet的日益普及,信息共享程度的不断提高的今天,人们的工作和生活方式已经有了革命性的改变。家庭电器和工业设...

  Altera公司的FPGA作为全定制芯片的一个代表正在得到日益广泛的应用。为了用户使用方便,Altera公司推出嵌入式软...

  数字硬盘录像机,英文名称为Digital Video Recorder,简称DVR,它是视频监控系统中重要的设备,用于替代早期的长...

  第1层次:以PCB CAD软件和ICE为主要工具的设计方法。 这是过去直至现在我国单片机应用系统设计人员一直沿用...

  单片机和嵌入式,其实没有什么标准的定义来区分他们,对于进行过单片机和嵌入式开发的开发者来说,都有他们自己的定义...

  随着我国经济的快速发展、城市化进程的日益加速、人们生活节奏的不断加快,越来越多的人们开始感到自己的健....

  本文以ARM核的32位嵌入式微处理器作为硬件平台,结合无线通信技术,通过移植嵌入式操作系统mClinux,并在其上开发...

  这些嵌入式系统必须长期使用相同的电源供电,才能降低反复出现的维护成本或避免最终用户频繁更换电源。

  从嵌入式运用方面来说,嵌入式系统是控制、监视或者辅助设备机器和车间运行的装置。

  随着当前社会的不断进步和科学技术的飞速发展,为电力系统的发展和进步提供了广阔的空间和新的技术手段,对....

  随着我们进入普及的物联网(IoT)世界,嵌入式设备的连接性是必不可少的。

  当我们试图在较小的嵌入式系统中使用更多的功能时,它们的安全性常常被忽略。本文讨论了过去的一些安全漏洞....

  嵌入式操作系统历史悠久、门类繁多、用途广泛,不仅包括嵌入式实时多任务操作者系统(RTOS)、开源的 ....

  Python是一种跨平台的计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化....

  ARM指令集32位,Thumb指令集是ARM指令集的一个子集,允许指令编码长度为16位。

  嵌入式工控机,更时髦的叫法是盒式电脑或无风扇工控机,英文全称Embedded Industrial ....

  ARMCortex™-M4处理器是由ARM专门开发的最新嵌入式处理器,在M3的基础上强化了运算能力,....

  人工智能仍然是一个新兴且快速发展的领域。神经网络的应用场景快速增加,例如目标识别、语音和声音分析、5....

  当我们谈及嵌入式处理器的体系架构时,一般都是想到Intel的X86架构和ARM公司的ARM架构。

  数据安全性(Security)是IC完整性的基石,当然还有信任、功能正确性和生命安全性(Safety....

  市场分析认为,由于Cortex-A32为了节省空间与电力使用,移除了对64位元应用的支援,因此最能发....

  现阶段半导体晶片商多采用ARM的处理器核心,来制造旗下处理器或微控制器等产品。ARM的核心可分为A、....

  嵌入式系统在通用计算机软件、电子商务、Internet和分布式计算环境中CBD技术已经得到了成熟的应....

  随着当前应用技术的不断深化,CF 卡(Compact Flsah Card)由于价格便宜、存储容量大....

  在线仿真器使用仿真头完全取代目标板上的 CPU ,可以完全仿真 ARM 芯片的行为,提供更加深入的调....

  语音识别技术就是能使计算机“听懂“人类的语言,然后根据其义来执行相应的命令,从而实现为人类服务。

  利用现代网络技术、通信技术与医疗相结合,开发基于嵌入式Internet技术的多生理参数网络监护系统,....

  在嵌入式开发过程中具有复杂性,通常不选择它用于嵌入式系统开发,而C语言是一种“低层次”的语言,已经成....

  随着逻辑资源的丰富和编程工具的改进,FPGA在机器学习和硬件加速上得到越来越多的重视,目前数据中心已....

  面向中低端的嵌入式操作系统,由于侧重于不同层次的硬件平台和应用领域,其体系结构和应用程序接口种类较多....

  嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM....

  嵌入式PC模块的结构,阐述了一种快速开发嵌入式计算机系统的思路,并详细描述了一种基于嵌入式PC的PI....

  音符的节拍我们能用定时器T0来控制,送入不一样的初值,就能产生不一样的定时时间。便如某歌曲的节奏为每....

  极低功耗、精准的远程检测绝对是可行的。本文的示例显示,将低功耗、高精度放大器与可编程片上系统无线Me....

  在嵌入式应用程序的硬件开发范围内,开发人员只需开发所谓的载体或基板,然后通过合适的插头连接器将其用于....

  常用的传感器有视觉传感器、超声波传感器、电弧传感器、接触式传感器等使机器人具备视觉、听觉和触觉等。

  掌握这些移植和开发技术,对于开发嵌入式Linux应用系统十分重要,同时对于开发其它类型的嵌入式系统也....

  最小系统实现了,那么就可以搭接各种传感器,往智能硬件方向走;或者移植一个操作系统,往人机界面(UI)....

  ARM处理器广泛使用在嵌入式系统设计,低耗电节能,非常适用移动通讯领域。

  总结而言,嵌入式视觉系统可以归纳为一种「轻量」视觉技术,可以用于包括OEM、系统集成商和标准相机厂商....

  在当代电能消耗是非常之大的,日常生活中LED作为高效、环保、节能、抗震的新型光源,已经越来越广泛的应....

  系统智能连接功能可以为用户带来很多好处,涵盖从产品制造到售后的整个生命周期,有助于降低产品的总体成本....

  各个领域都需要创新,都需要发展,同时随着产品越来越复杂,具有了更强大的处理能力和更高的速度,使得机器....

  在硬件系统中,嵌入式技术占据着举足轻重的地位,物联网应用技术中,嵌入式技术是至关重要的。

  返回数据就是把传入参数做了某一个运算后得到的结果;返回状态结果,主要指示函数是否正确执行。

  带有多个高分辨率摄像头的嵌入式360°视域视觉系统已经进入了各种应用中,如汽车传感器融合、视频监控、....

  格芯(GLOBALFOUNDRIES)今日宣布推出基于公司22纳米 FD-SOI (22FDX)平台....

  Arm Custom Instruction(客制化指令)让设计片上系统(SoC)的合作伙伴,透过特....

  获取嵌入式存储器设计的另一种方法是利用存储器编译器,它能够快捷和廉价地设计存储器物理模块。

  JTAG是串行接口,使用打印口的简单JTAG电缆,利用的是打印口的输出带锁存的特点,使用软件通过I/....

  CPU作为MCU的大脑,起到控制核心的作用,基本上决定了MCU的目标应用领域,因此CPU的选型是设计....

  ARM嵌入式和单片机学习有着密不可分的关系,在学习单片机的过程中积累必要的学习经验和知识是非常有必要....

  中断调试方面可以采用类似矢量中断动态处理方式,让中断对应的确定地址代码调转到RAM的固定地址处,定义....

分享到:
相关阅读
文章评论 · 所有评论
评论请遵守当地法律法规
点击加载更多
© 2016-2018 12小时新闻网 http://www.12hnews.com/ 中国互联网举报中心
违法和不良信息举报:lobtom@163.com