单片机技术研究及应用Word文档格式.docx
- 文档编号:20529291
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:36
- 大小:405.46KB
单片机技术研究及应用Word文档格式.docx
《单片机技术研究及应用Word文档格式.docx》由会员分享,可在线阅读,更多相关《单片机技术研究及应用Word文档格式.docx(36页珍藏版)》请在冰豆网上搜索。
2.2.1嵌入式Internet概念及特点7
2.2.2单片机接入Internet方案8
第3章网络协议10
3.1TCP/IP分层模型10
3.2数据封装11
3.3数据帧分用12
3.4协议层简介13
3.4.1网际层协议13
3.4.1.1IP地址分配14
3.4.1.2地址解析协议15
3.4.1.4ICMP协议16
3.4.2传输控制协议16
3.4.2.1TCP连接和释放16
3.4.2.2用户数据报协议18
第四章系统总体设计19
4.1硬件设计19
4.2TCP/IP协议层选择及分析20
4.2.1链路层协议选择及分析21
4.2.2网络层协议选择及分析21
4.2.3传输层协议选择及分析21
4.2.4应用层协议选择22
第五章TCP/IP协议栈的实现24
5.1ARP协议的实现24
5.1.1ARP分组格式及数据结构24
5.1.2ARP协议软件实现24
5.2IP协议及其实现26
5.2.1IP数据报格式27
5.2.2IP软件实现27
5.3ICMP报文协议的实现29
5.4TCP协议的实现30
5.4.1TCP的报文段30
5.4.2TCP协议的实现31
5.4.2.1运输控制块TCB31
5.4.2.2处理传入数据模块32
5.4.2.3处理数据输出模块32
5.4.2.4定时管理器34
5.5SMTP协议的实现36
5.5.1客户机与服务器之间的交互36
5.5.2SMTP邮件协议的实现37
结束语39
致谢40
参考文献41
第1章引言
1.1论文选题的背景及意义
嵌入式Internet是本世纪计算机世界的一项热门技术。
目前,嵌入式系统已经成为我们生活的一部分,在家用电器、工业设备、医疗设备及汽车应用等领域的应用不断扩大。
嵌入式设备的联网已经开始。
但是,由于嵌入式系统资源有限,一些传统的Internet技术和设备无法直接应用。
这种趋势使着嵌入式Internet技术的产生和迅速发展。
嵌入式Internet(简称EI,EmbeddedInternet)通常可以理解为把TCP/IP协议作为一种嵌入式的应用,从而实现嵌入式设备Internet的技术。
近年来以单片机(MicroComputerUnit,MCU)为代表的嵌入式系统在工业探测系统、智能仪器、安防系统、智能家电和信息家电领域得到了广泛应用。
如果嵌入式系统能够连接到Internet上,则用户可以方便、快捷、低廉地通过网络进行远程控制、监测和信息传送。
Internet技术和嵌入式技术的相互融合,不仅为嵌入式系统的设计和开发带来了前所未有的发展空间和机遇,也使得Internet应用进入了嵌入式Internet时代。
据专家预测,未来在Internet上的新增业务和应用中,将有45%的增长来自于小型嵌入式系统。
因此,嵌入式系统的Internet接入技术,将会有极其广阔的应用前景。
如何利用单片机接入Internet网络成为未来最热门的技术之一。
鉴于8/16位单片机大量存在于嵌入式领域,在单片机上实现TCP/IP协议时嵌入式Internet的关键技术之一。
本文在这样的背景下,试图开展一些的研究。
1.2本文主要工作
本文主要工作是将TCP/IP协议嵌入低档单片机中。
通过89C51系列单片机和网卡芯片RTL8019AS在单片机上实现Internet接入,在对TCP/IP协议深入分析的基础上,对TCP/IP协议栈进行合理的简化后嵌入到单片机中。
具体的工作有:
1.将TCP/IP协议嵌入低档单片机的硬件系统的设计和实现。
2.对TCP/IP协议栈进行研究,并分析各协议,完成软件结构的总体设计。
3.对我们需要的协议进行必要的精简和修改,以达到软件的实现。
课题的难点在于要对TCP/IP协议熟悉,要对其有较为全面和深入的研究,由于低档单片机资源有限,就必须根据需求对TCP/IP协议进行精简,而不能完整的实现TCP/IP协议。
第2章嵌入式Internet系统组成
2.1嵌入式系统概述
2.1.1嵌入式系统的概念机特点
基于IEEE的定义,嵌入式系统是“控制、监视或者辅助设备、机器和车间运行的装置”。
这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体。
不过,这个定义还不能充分体现嵌入式系统的精髓。
目前,国内普遍认同的一个定义是:
以应用为中心、以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
可以从以下几个方面理解嵌入式系统的定义。
嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。
嵌入式系统是将先进的计算机技术、半导体技术和电子技术以及各个行业的具体应用相结合的产物。
嵌入式系统必须根据应用需求能够对软硬件惊醒裁剪,满足应用系统的功能、可靠性、成本、体积等要求。
从嵌入式定义可以看出嵌入式系统几个重要特征。
1.系统内核小。
2.专用性强。
3.系统精简。
4.高实时性。
2.1.2嵌入式系统的组成
一个嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成,如2-1所示。
.嵌入式计算机系统是整个嵌入式系统的核心,由硬件层、中间层、系统软件层和应用软件层组成。
执行装置也被称为被控对象,它可以接受嵌入式计算机系统发出的命令,执行规定的操作或任务。
嵌入式系统在功能及实现上都有很严格的限制,必须考虑实时性、体积、功耗及散热等,同时要满足可靠性及安全性。
嵌入式系统硬件层的核心是嵌入式微处理器。
目前全世界嵌入式处理器的品种已经有1000多种,体系结构有30多个系列,其中主流的体系有ARM、PowerPC、x86、SH和MIPS等。
图2-1嵌入式系统的典型组成
2.1.3嵌入式操作系统
嵌入式操作系统(EmbeddedOperatingSystem,EOS)是一种用途广泛的系统软件,以前主要用于工业控制和国防领域。
EOS负责嵌入系统的全部软硬件资源的分配、任务调度,控制、协调并发活动。
它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。
目前,已经有一些比较成功的EOS产品系列。
随着Internet技术的发展、信息家电的普及应用及EOS的微型化和专业化,EOS开始从单一的功能向高专业的功能方向发展。
嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固话以及应用的专用性等方面具有较为突出的特点。
EOS是相对于一般操作系统而言的,它具备了一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等外,还有如下特点:
1.可装卸性。
开放性、可伸缩性的体系结构。
2.强实时性。
EOS实时性一般较强,可用于各种设备控制中。
3.操作方便、简单、提供友好的图形GUI、图形界面。
4.统一的接口。
提供各种设备驱动接口。
5.提供强大的网络功能,支TCP/IP协议及其他协议,提供IP/TCP/UDP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口。
6.强稳定性、弱交互性。
固化代码。
7.更好的硬件适应性,也就是良好的移植性。
2.2嵌入式Internet
2.2.1嵌入式Internet概念及特点
嵌入式Internet(EmbeddedInternet)起源于把嵌入式系统与Internet结合起来的这种想法。
嵌入式Internet是指:
在嵌入式系统应用领域,以Internet技术为基础,使嵌入式系统与Internet相互连接,实现嵌入式系统与Internet之间的资源共享、信息通信和状态控制等功能,这种嵌入式系统与Internet之间的连接与应用就称为嵌入式Internet。
嵌入式Internet技术的诞生虽然不算久,但发展却相当迅速,我们还未适应它的时候,很多相关的技术已经出现了,很多大的芯片制造商开始研制功能更强大的嵌入式芯片,软件厂商则开发出了微型的Web服务器、TCP/IP协议栈。
由于出现了很多灵活的微控制器,现在可以为用户创造廉价的嵌入式Internet解决方案,8位和16位微控制器都可以接入Internet等大规模网络,例如emWare就已经为开发人员和生产商提供了8位和16位微控制器网络接入解决方案。
随着PC机时代的到来,21世纪将是嵌入式Internet的时代。
美国贝尔实验室总裁ArunNetravali的一批科学家对此做出了预测:
嵌入式Internet“将会产生比PC机时代多成百上千倍的瘦服务器和超级嵌入式瘦服务器”。
这些瘦服务器将与我们所能想到的各种物理信息、生物信息相联接,通过Internet网自动地、实时地、方便地、简单地提供给需要这些信息的对象。
嵌入式系统接入Internet同PC机接入Internet一样,必须通过相应的通信协议。
目前的Internet采用TCP/IP协议,因此嵌入式系统接入Internet最终必须通过TCP/IP协议,对信息进行TCP/IP协议处理,使其变成可以在Internet上传输的IP数据包。
Internet网络通信中,TCP/IP协议簇非常庞大,需要占用大量的系统资源。
单片机的缺点是资源有限,无法容纳下Internet的TCP/IP协议簇。
因此单片机实现嵌入式接入Internet技术的关键是如何在单片机等嵌入式设备的有限资源上实现Internet的网络通信协议栈。
其难点在于:
如何利用单片机自身有限的资源对信息进行TCP/IP协议处理,使之变成可以在Internet上传输的IP数据包。
目前许多机构都在积极探讨利用MCU实现接入Internet技术。
2.2.2单片机接入Internet方案
1.PC网关(Gateway)与专用网结合接入Internet
首先嵌入式系统和嵌入式网关连接通信,连接方式采用传统的RS232,RS482,RS485,IIC、SPI、USB、CAN、LIN总线等轻量级网络协议。
再由嵌入式网关负责实现TCP/IP协议,并与Internet连接,完成嵌入式系统和Internet的信息交互。
嵌入式网关向嵌入式系统提供Internet或Intranet通信和管理服务。
如防火墙、协议转换、监视嵌入式设备的运行状态、向外界提供Web服务器等。
这种技术需要一个专门的嵌入式网关,而且网关和嵌入式系统之间通信也会受到轻量级网络协议的制约。
它对嵌入式系统处理器速度、资源要求也比较低,开发难度低,可以解决各种嵌入式系统接入Internet的问题,特别适用于嵌入式系统多且较为集中的场合。
缺点是接入成本比较高,不利于大规模推广。
该方案比较适合大型或较昂贵工业设备的上网需求,不适合用于低价格设备。
基于这种接入技术模型,EmWare公司提出了嵌入式微Internet网络技术EMIT(embeddedmicrointernetworkingtechnology)。
EMIT由emMicro、emGateway和网络浏览器组成,并在MCU内部以软件方式嵌入emNet协议,如图2-2所示。
图2-2图2-1采用专用嵌入式网络协议方式
2.高性能MCU+RTOS
即用软件方式直接处理TCP/IP协议。
目前RTOS的功能越来越强大,大多数都带有TCP/IP协议栈,还具有对图像界面的支持能力。
采用这种方法的缺点是:
对开发人员的要求高,必须对操作系统和TCP/IP协议都要有一定的熟悉,开发周期也较长,难度相对较大。
同时嵌入式操作系统的运行需要占用大量的处理器资源和存储器空间,对硬件配置也有较高的要求,开发成本高。
如图2-3所示.
图2-3在嵌入式实时操作系统RTOS上运行TCP/IP
3.使用专用的嵌入式芯
专用嵌入式芯片是一种内置了通信和控制功能的单片机,采用这种方案的芯片有UbiCom公司的IP2022,SeikoInstruments公司的S7600A,iReady公司的InternetTuner,ConnectOne公司的iChip等。
它们固化有TCP/IP协议栈,支持HTTP,SMTP,POP3,MIME等多种协议,可进行Web浏览和E_mail的收发。
也可用Scenix公司的8位SX单片机加虚拟外设的方式接入Internet。
该方式更方便,不需要操作系统,大大节省了资源,开发难度有所降低,但还是需要熟悉TCP/IP协议和相关接口,技术实现上也比较困难,且对处理器的性能仍然要求较高,需要大容量的存储器。
。
这类芯片功能强,能够实现多种网络协议,一般提供有相应的TCP/IP网络协议栈。
但是这种芯片价格偏高,用户需要支付软硬件费用,不易于实现市场的广泛应用。
如图2-4所示。
图2-4直接在嵌入式处理器上实现TCP/IP协议
4.使用普通单片机和网络控制芯片
通过在系统中集成网络接口芯片,采用软件方式实现TCP/IP协议栈,使得嵌入式系统具备网络功能从而接入Internt。
单片机加载TCP/IP协议控制以太网网卡进行数据传输,并通过TCP/IP协议联接到互联网。
远程控制端的操作通过路由器找到目标后,由网卡芯片的接口传入单片机,通过在单片机中加载的驱动程序转换成物理帧格式,再由TCP/IP协议转换成应用层的控制命令。
这种方法实现起来比较简单,而且可根据实际需要进行功能扩展,但是需要在单片机上实现嵌入式TCP/IP网络协议,软件编程的工作量比较大。
由于采用普通单片机,所以其优点是成本低,单片机体积小,易于以极高的性价比向诸多需要实现嵌入式接入Internet的场合推广。
本文设计的系统就是采用这种技术方案。
第3章网络协议
3.1TCP/IP分层模型
TCP/IP采用分层体系结构,它与开放系统互联OSI模型的层次结构相似。
如表2-1所示,它可以分为4层,由低到高一次为:
网络接口层、网际层、传输层和应用层。
表2-1OSI参考模型与TCP/IP参考模型比较
OSI参考模型
OSI层次号
TCP/IP层次描述
主要应用协议
应用层
7
FTP、e-mail和Telnet等
表示层
6
会话层
5
运输层
TCP和UDP
传输层
4
网络层
3
IP、ICMP和IGMP
链路层
设备驱动及接口卡
数据链路层
2
物理层
1
TCP/IP分层模型的四个协议层分层完成如下功能。
(1)第一层网络接口层
网络接口层包括用于协作IP数据在已有网络介质上传输协议。
实际上TCP/IP标准并不定义与ISO数据链路层和物理层相对应的功能。
相反它定义像地址解析协议这样的协议,提供TCP/IP协议的数据结构和实际物理硬件之间的接口。
(2)第二层网际层
对应于OSI7层参考模型的网络层,网络层主要解决计算机之间的通信问题,它负责管理不同设备之间的数据交换,它是Internet通信子网的最高层,它所提供的是不可靠的无连接数据报服务,无论传输是否正确,不做验证、不发确认,也不保证分组的正确顺序。
网际层主要有以下协议。
●IP协议(网际协议):
使用IP地址确定收发端,提供端到端的“数据报”传递,也是TCP/IP协议簇中处于核心地位的协议。
●ICMP协议(网络控制报文协议):
处理路由,协助IP层实现报文传送的控制机制,提供错误和信息报告。
●ARP协议(正向地址解析协议):
将网络层地址转换为链路层地址。
●RARP协议(逆向地址解析协议):
将链路层地址转换为网络层地址。
(3)第三层传输层
对应于OSI7层参考模型的传输层,提供两种端到端的通信服务。
其中TCP协议提供可靠的数据流运输服务,UDP协议提供不可靠的用户数据服务。
该层有以下协议。
●TCP协议:
传输控制协议,提供可靠的面向连接的数据传输服务。
●UDP协议:
用户数据报协议,采用无连接数据报传送方式,一次传输少量的情况,如数据查询等,当通信子网相当可靠是,UDP协议的优越性更为突出。
(4)第四层应用层
对应于OSI7层参考模型的应用层和表达层,应用层是将应用程序的数据传送给传输层,以便进行信息交换。
它主要为各种应用程序提供使用协议,标注的应用层主要有以下协议。
●FTP文件传输协议:
为文件传输提供路径,它允许数据从一台主机传送到另一台主机上,我们可以从FTP服务器上下载文件,或者向FTP服务器上传文件。
●HTTP超文本传输协议:
用来访问在WWW服务器上的各种页面。
●DNS域名服务系统:
用于实现主机域名到IP地址之间的转换。
●SMTP简单邮件传输协议:
实现互联网中电子邮件的传输功能。
●TELNE虚拟终端服务:
实现互联网中的工作站登陆到远程服务器的能力。
●NFS网络文件系统:
用于实现网络中不同主机之间的文件共享。
●RIP路由信息协议:
用于网络设备之间交换路由信息。
3.2数据封装
当应用程序用TCP传送数据时,数据被传送入协议栈中,之后逐个通过每一层直到被当做一串比特流送入网络。
其中每一层对收到的信息都要增加一些首部信息,必要时还要增加尾部信息,这个过程如图3-1所示。
TCP传给IP的数据单元称作TCP报文段,IP传给网络接口层的数据单元称作IP数据报,通过以太网传输的比特流称作帧。
以太网数据帧的物理特性是其长度必须在46B~1500B之间。
确切的说,图3-1中所示IP和网络接口传送的数据单元应该是分组,分组可以是一个IP数据报,也可以是IP数据报的一个片。
图3-1数据进入协议栈时的封装过程
TCP和UDP都用一个16bit的端口号来表示不同的应用程序,并把源端口号和目的端口号分别存入报文首部中,由于TCP、UDP、ICMP跟IGMP都要向IP传送数据,因此IP必须在生成的IP首部中加入某种标势。
1表示ICMP协议,2表示IGMP协议,6表示TCP协议,17表示UDP协议。
而网络接口分别要接收和发送IP、ARP和RARP数据,因此也需要在以太网帧首部中加入标识,以指明生成数据的网络协议层。
所以,以太网的帧首部也有一个16bit的帧类型域这就是数据报文的封装,应用层数据是被逐层封装,直到数据链路层。
要指出的是UDP数据与TCP数据唯一不同是UDP传给IP的信息单元称作UDP数据报,而且UDP的首部长为8B。
3.3数据帧分用
当目的主机收到一个以太网数据帧是,数据就开始从协议战中由底向上传送,同时去掉各层协议加上的报文首部。
每层协议盒都要去检查报文首部中的协议标识,以确定接受数据的上层协议,这个过程称作分用。
图3-2显示这个如何过程如何发生的。
图3-2以太网数据帧的分用过程
3.4协议层简介
3.4.1网际层协议
网际协议时TCP/IP协议最重要的组成部分,是整个协议族的核心,主要负责网络层IP分组的传输。
它位于网际层,为运输层提供服务,并从网络接入层请求服务。
IP提供不可靠的、无连接的、尽最大努力交付的分组传输机制。
IP提供了3个重要定义:
1)IP定义了数据传输所用的基本单元,及规定了传输的数据格式。
2)IP规定了IP分组的路由机制。
3)除了数据格式和路由机制以外,IP还包括了一组体现不可靠分组交付思路的规则。
这些规则指明了主机和路由器应该如何处理IP分组、何时及如何发现错误信息以及在什么情况下可以放弃分组等等。
IP是TCP/IP互联网设计里最基础的部分。
3.4.1.1IP地址分配
1.IP地址
计算机网络内的每台计算机必须具有唯一的身份标识符。
在TCP/IP协议簇中,这种标识符叫做IP地址。
IP地址有两部分组成:
网络号和主机号。
其中网络号标识一个物理的网络,同一个网络上所有主机需要同一个网络号,该号在互联网中是唯一的;
而主机号确定网络中的一个工作端、服务器、路由器或其它TCP/IP主机。
对于同一网络号而言,主机号是唯一的。
IP地址有两种表示形式:
二进制表示和点分十进制表示。
在IPv4中使用的IP地址是32位的二进制地址。
但是为了是32位的二进制地址更简洁和便于阅读,通常采用点分十进制。
在点分十进制中,每个IP地址的长度为4个字节,有4个8位域组成,称之为八为体。
八为体由句点“.”分开,来表示为一个0~255之间的十进制书。
IP地址的4个域分别标明了网络号和主机号。
目前,因网络大小不同,Internet定义了5种IP地址类型:
A类、B类、C类、D类、E类。
如表3.1所示。
表3.1IP地址分类
地址类型
特
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 技术研究 应用