- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于PPP协议单片机拔号上网的设计与实现 作者:佚名 ?来源:不详 ?录入:Admin ?更新时间:2008-8-16 21:09:53 ?点击数:12 【字体: 】
??? 摘要:通过对TCP/IP协议簇进行简化,讨论数据包的配置,设计并实现单片机拔号上网的系统。
??? 关键词:单片机 协议 TCP/IP 数据包
引言
20世纪90年代,以因特网为代表的计算机网络通信技术的发展和应用取得了前所未有的突破和成功,单片机上网技术在生活和现代建设的各方面的应用和研究随之成为当今一个热门话题。8位、16位单睡机的因为其较好的性价比,在测控领域仍然占据着重要地址。这些单片机的RAM、ROM一般都很小,而网络协议通常嵌入在操作系统中,无法把庞大的操作系统直接安装在这样的单片机中。所以, 要实现上述单片机通过拔号直接连上因特网,需要考虑的主要技术就是如何在单片机上嵌入能符号需要的经过简化的网络协议。这就是本文所要讨论的主题。??? 本文着重分析所用数据包的类型和选项,给出几个典型数据包的格式。
一、PPP协议简介
IETF成立了一个小组,推出了点到点线路的数据链路层协议,并成为正式的因特网标准。这项工作定义的PPP(Point-to-Point Protocol),即点到点协议,并以RFC文件RFC1661,后来以RFC1662和RFC1663进一步明确下来。PPP处理错误检测,支持多种协议,在连接时钟允许商议IP地址,允许身份验证,以及在SLIP上所做的许多其他改进。虽然许多因特网服务提供者仍支持SLIP和PPP,但未来显然属于PPP,不管是拨号线路,还是租用路由器与路由器的线路都是如此。??? PPP成就了3件事:
(1)明确地划分出一帧的尾部和下一帧的头部的成帧方式。这种帧格式也处理错误检测工作。
(2)当线路不再需要时,跳出这些线路,测试它们,商议选择,并仔细地再次释放链路控制协议。这个协议被称为链路控制协议LCP(Link Control Protocol)。
(3)用独立于所使用的网络层协议的方法来商议使用网络层的哪些选项;对于每个所支持的网络层来说,所选择的方法有不同的网络控制协议NCP(Network Control Protocol)。NCP在因特网中(TCP/IP协议)为IPCP。??? PPP数据帧的格式如图1所示。二、基于PPP协议单片机拨号上网的设计与实现
1.概述
本方案选用的单片机是ADAM5510。它是台湾ADVANTECH公司推出的一种功能较强、价位适中的单片机,具有80188-40、16-bit单片机,RS-232、RS-485口各一个,还有一个编程口(ADAVANTECH公司为5510系列单片机开发了同普通的Turbo C界面很相似的集成开发环境,这种IDE能灵活地编辑、编译、仿真、开始和调试适用于5510系列的软件)。ADAM5510的功能模块如图2所示。这种单片机在硬件构成上已比较完善,使我们可以集中精力于TCP/IP协议的分析和软件的实现。
在本方案中,物理层接口采用的是:单片机通过RS-232与Modeem通信,电话线与Modem相连。单片机直接从RS-232端口收发数据。
2.原理及程序流程
系统原理如图3所示,测试程序如图4所示。
3.简化PPP协议——配置各种数据包
(1)LCP包的配置
LCP包的配置如图5所示。
a.LCP包概述
LCP包有3类:a链路配置包,用于建立和配置链路,包括Configure Ack、Configure Nak、Configure Request、Configure Reject;b链路结束包,用于结束一个链路,包括Terminate Request、Terminate Ack;c链路维修包,用于管理和调试一个链路,包括Code Reject、Protocol Reject、Echo Request、Echo Reply、Discard Request。LCP包的选项最常见的有:1 Maximum Receive Unit、2 Async Control Character Map、3 Authectication Protocol、7 Protocol Field Compression、8 Address and Control Field Compression。
b.LCP包种类的取舍
本文中,只用了Configure-Request、Reject、Ack三种LCP数据包,这是实现应答所必需的最低限度。单片机发出的Request选项是我们预先设定的,而ISP发出的选项若有我们不接受的内部,则单片机回答一个Reject,任何一方接受请求时发Ack,因此未处理NAK数据包。本文也未处理剩余的七类数据包,因任何原因造成的
原创力文档


文档评论(0)