日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開(kāi)發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開(kāi)發(fā)
培訓(xùn)信息
贊助商
基于PPP協(xié)議單片機(jī)拔號(hào)上網(wǎng)的設(shè)計(jì)與實(shí)現(xiàn)
基于PPP協(xié)議單片機(jī)拔號(hào)上網(wǎng)的設(shè)計(jì)與實(shí)現(xiàn)
 更新時(shí)間:2008-8-16 21:09:53  點(diǎn)擊數(shù):12
【字體: 字體顏色

    摘要:通過(guò)對(duì)TCP/IP協(xié)議簇進(jìn)行簡(jiǎn)化,討論數(shù)據(jù)包的配置,設(shè)計(jì)并實(shí)現(xiàn)單片機(jī)拔號(hào)上網(wǎng)的系統(tǒng)。

    關(guān)鍵詞:單片機(jī) 協(xié)議 TCP/IP 數(shù)據(jù)包

引言

20世紀(jì)90年代,以因特網(wǎng)為代表的計(jì)算機(jī)網(wǎng)絡(luò)通信技術(shù)的發(fā)展和應(yīng)用取得了前所未有的突破和成功,單片機(jī)上網(wǎng)技術(shù)在生活和現(xiàn)代建設(shè)的各方面的應(yīng)用和研究隨之成為當(dāng)今一個(gè)熱門(mén)話題。8位、16位單睡機(jī)的因?yàn)槠漭^好的性價(jià)比,在測(cè)控領(lǐng)域仍然占據(jù)著重要地址。這些單片機(jī)的RAM、ROM一般都很小,而網(wǎng)絡(luò)協(xié)議通常嵌入在操作系統(tǒng)中,無(wú)法把龐大的操作系統(tǒng)直接安裝在這樣的單片機(jī)中。所以, 要實(shí)現(xiàn)上述單片機(jī)通過(guò)拔號(hào)直接連上因特網(wǎng),需要考慮的主要技術(shù)就是如何在單片機(jī)上嵌入能符號(hào)需要的經(jīng)過(guò)簡(jiǎn)化的網(wǎng)絡(luò)協(xié)議。這就是本文所要討論的主題。

    本文著重分析所用數(shù)據(jù)包的類型和選項(xiàng),給出幾個(gè)典型數(shù)據(jù)包的格式。

一、PPP協(xié)議簡(jiǎn)介

IETF成立了一個(gè)小組,推出了點(diǎn)到點(diǎn)線路的數(shù)據(jù)鏈路層協(xié)議,并成為正式的因特網(wǎng)標(biāo)準(zhǔn)。這項(xiàng)工作定義的PPP(Point-to-Point Protocol),即點(diǎn)到點(diǎn)協(xié)議,并以RFC文件RFC1661,后來(lái)以RFC1662和RFC1663進(jìn)一步明確下來(lái)。PPP處理錯(cuò)誤檢測(cè),支持多種協(xié)議,在連接時(shí)鐘允許商議IP地址,允許身份驗(yàn)證,以及在SLIP上所做的許多其他改進(jìn)。雖然許多因特網(wǎng)服務(wù)提供者仍支持SLIP和PPP,但未來(lái)顯然屬于PPP,不管是撥號(hào)線路,還是租用路由器與路由器的線路都是如此。

    PPP成就了3件事:

(1)明確地劃分出一幀的尾部和下一幀的頭部的成幀方式。這種幀格式也處理錯(cuò)誤檢測(cè)工作。

(2)當(dāng)線路不再需要時(shí),跳出這些線路,測(cè)試它們,商議選擇,并仔細(xì)地再次釋放鏈路控制協(xié)議。這個(gè)協(xié)議被稱為鏈路控制協(xié)議LCP(Link Control Protocol)。

(3)用獨(dú)立于所使用的網(wǎng)絡(luò)層協(xié)議的方法來(lái)商議使用網(wǎng)絡(luò)層的哪些選項(xiàng);對(duì)于每個(gè)所支持的網(wǎng)絡(luò)層來(lái)說(shuō),所選擇的方法有不同的網(wǎng)絡(luò)控制協(xié)議NCP(Network Control Protocol)。NCP在因特網(wǎng)中(TCP/IP協(xié)議)為IPCP。

    PPP數(shù)據(jù)幀的格式如圖1所示。

二、基于PPP協(xié)議單片機(jī)撥號(hào)上網(wǎng)的設(shè)計(jì)與實(shí)現(xiàn)

1.概述

本方案選用的單片機(jī)是ADAM5510。它是臺(tái)灣ADVANTECH公司推出的一種功能較強(qiáng)、價(jià)位適中的單片機(jī),具有80188-40、16-bit單片機(jī),RS-232、RS-485口各一個(gè),還有一個(gè)編程口(ADAVANTECH公司為5510系列單片機(jī)開(kāi)發(fā)了同普通的Turbo C界面很相似的集成開(kāi)發(fā)環(huán)境,這種IDE能靈活地編輯、編譯、仿真、開(kāi)始和調(diào)試適用于5510系列的軟件)。ADAM5510的功能模塊如圖2所示。這種單片機(jī)在硬件構(gòu)成上已比較完善,使我們可以集中精力于TCP/IP協(xié)議的分析和軟件的實(shí)現(xiàn)。

在本方案中,物理層接口采用的是:?jiǎn)纹瑱C(jī)通過(guò)RS-232與Modeem通信,電話線與Modem相連。單片機(jī)直接從RS-232端口收發(fā)數(shù)據(jù)。

2.原理及程序流程

系統(tǒng)原理如圖3所示,測(cè)試程序如圖4所示。

3.簡(jiǎn)化PPP協(xié)議——配置各種數(shù)據(jù)包

(1)LCP包的配置

LCP包的配置如圖5所示。

a.LCP包概述

LCP包有3類:a鏈路配置包,用于建立和配置鏈路,包括Configure Ack、Configure Nak、Configure Request、Configure Reject;b鏈路結(jié)束包,用于結(jié)束一個(gè)鏈路,包括Terminate Request、Terminate Ack;c鏈路維修包,用于管理和調(diào)試一個(gè)鏈路,包括Code Reject、Protocol Reject、Echo Request、Echo Reply、Discard Request。LCP包的選項(xiàng)最常見(jiàn)的有: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數(shù)據(jù)包,這是實(shí)現(xiàn)應(yīng)答所必需的最低限度。單片機(jī)發(fā)出的Request選項(xiàng)是我們預(yù)先設(shè)定的,而ISP發(fā)出的選項(xiàng)若有我們不接受的內(nèi)部,則單片機(jī)回答一個(gè)Reject,任何一方接受請(qǐng)求時(shí)發(fā)Ack,因此未處理NAK數(shù)據(jù)包。本文也未處理剩余的七類數(shù)據(jù)包,因任何原因造成的鏈路終止問(wèn)題都由單片機(jī)在程序的控制下重新?lián)芴?hào)來(lái)解決。

c.LCP選項(xiàng)的取舍

由于我們每次發(fā)送(接收)的數(shù)據(jù)較少(由于單片機(jī)RAM的限制,設(shè)定的緩沖區(qū)很。,MRU選項(xiàng)默認(rèn)值為1500字節(jié),最小值為576字節(jié),所以測(cè)試程序不支持選項(xiàng)1;選項(xiàng)2是必須支持的;選項(xiàng)3提供了發(fā)送password的方法,它的參數(shù)可以是0xc023或0xc223。為簡(jiǎn)單起見(jiàn),本文的測(cè)試程序選擇了0xc023作為選項(xiàng)3的參數(shù),這樣,程序?qū)⒁悦魑牡男卧谝粋(gè)數(shù)據(jù)包中發(fā)出用戶名和密碼。測(cè)試程序不請(qǐng)求選項(xiàng)7和8的服務(wù),也就是根據(jù)默認(rèn)的規(guī)定,發(fā)送的數(shù)據(jù)包含有PPP協(xié)議域和控制域。

    (2)PAP包的配置

由于LCP包中選項(xiàng)3的使用情況,PAP包是必需的。簡(jiǎn)單起見(jiàn),程序中只交換了一個(gè)PAP包,但已完成了用戶的身份鑒定,如圖6所示。

(3)IPCP包的配置

IPCP選項(xiàng)是關(guān)于IP地址和IP壓縮的,測(cè)試選擇了選項(xiàng)3(IP-address)。本程序通過(guò)發(fā)出一個(gè)無(wú)效的地址請(qǐng)求(0.0.0.0),等待服務(wù)器回答一個(gè)NAK(選項(xiàng)為3)從這個(gè)NAK包中得到自己的正確地址。IPCP包的配置如圖7所示。

(4)CCP包的處理

有些服務(wù)器試圖協(xié)商壓縮,但由于我們關(guān)心的是程序的大。ㄔ叫≡胶茫┒皇菙(shù)據(jù)傳送的速度,所以CCP請(qǐng)求被拒絕。

    (5)IP包的處理

在協(xié)商好PPP協(xié)議的各選項(xiàng)后,即可進(jìn)行數(shù)據(jù)傳輸了。同樣,為了簡(jiǎn)單起見(jiàn),采用了UDP協(xié)議而不是TCP協(xié)議。數(shù)據(jù)的正確性由應(yīng)用程序控制。

(6)驗(yàn)證

在(202.119.116.248)端,安裝了Netxray3.0版網(wǎng)絡(luò)嗅探器。利用該軟件可以很方便地查看進(jìn)行該機(jī)器的數(shù)據(jù)包的功能,我們驗(yàn)證出源端發(fā)送數(shù)據(jù)的測(cè)試程序是可行的。

結(jié)束語(yǔ)

本文針對(duì)實(shí)際應(yīng)用情況,對(duì)龐大的TCP/IP網(wǎng)絡(luò)協(xié)議組進(jìn)行了簡(jiǎn)化,具體分析了簡(jiǎn)化后的協(xié)議組中各種數(shù)據(jù)包,同時(shí)給出了測(cè)試程序?qū)λ璋l(fā)送數(shù)據(jù)的具體打包過(guò)程。完整的TCP/IP協(xié)議很大,只能嵌入到32位以上的單片機(jī)上運(yùn)行。我們?cè)谲浖恍枰?K B(字節(jié)的ROM即可運(yùn)行。在接收數(shù)據(jù)的目的端,PC機(jī)上安裝了Netxray 3.0軟件,對(duì)測(cè)試程序的結(jié)果進(jìn)行測(cè)試,驗(yàn)證出最終在目的端接收到的數(shù)據(jù)就是我們?cè)谠炊怂l(fā)送的數(shù)據(jù),而且所有的數(shù)據(jù)包都符合TCP/IP規(guī)范。

  • 上一篇: 基于SX單片機(jī)實(shí)現(xiàn)WebServer和網(wǎng)絡(luò)協(xié)議棧
  • 下一篇: SSCP300PL網(wǎng)絡(luò)接口控制器及應(yīng)用
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1