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

機電之家資源網(wǎng)
單片機首頁|單片機基礎(chǔ)|單片機應(yīng)用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
基于S7600A的嵌入式系統(tǒng)Internet接入方案
基于S7600A的嵌入式系統(tǒng)Internet接入方案
 更新時間:2008-8-16 21:08:48  點擊數(shù):24
【字體: 字體顏色

    摘要:TCP/IP協(xié)議棧大規(guī)模集成電路S7600A的結(jié)構(gòu)、功能、硬件接口和應(yīng)用程序接口;介紹一個基于實時任務(wù)操作系統(tǒng)μs/OS的S7600A應(yīng)用方案,此方案實現(xiàn)了嵌入式系統(tǒng)的Internet接入。

    關(guān)鍵詞:TCP/IP API 實時操作系統(tǒng)(RTOS) 多任務(wù) 嵌入式系統(tǒng)

隨著電子設(shè)備智能化要求的提高和各種功能強大的微處理器的推出,嵌入式系統(tǒng)逐漸成為許多電子設(shè)備不可缺少的一部分,并處在前所未有的發(fā)展期;而互聯(lián)網(wǎng)概念的深入人心更為嵌入式系統(tǒng)與互聯(lián)網(wǎng)的結(jié)合提出了要求。嵌入式系統(tǒng)接入Internet以后,不僅實現(xiàn)了設(shè)備的遠程控制、維護和升級,而且從另外一層意義上講,接入Internet的設(shè)備已經(jīng)成為網(wǎng)絡(luò)共享資源的一部分?梢哉f這是自電子設(shè)備智能化以來設(shè)計思想的又一次飛躍。

嵌入式系統(tǒng)接入Internet的關(guān)鍵是滿足TCP/IP協(xié)議。TCP/IP協(xié)議是建立在數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層上的協(xié)議族,是Internet的基礎(chǔ)。各種型號計算機運行在不同操作系統(tǒng)之上,TCP/IP協(xié)議族允許它們互相通信。通常,一個嵌入式系統(tǒng)接入Internet,可選擇一個提供TCP/IP協(xié)議的嵌入式操作系統(tǒng),或是在現(xiàn)有操作系統(tǒng)之上加入TCP/IP軟件協(xié)議棧,實現(xiàn)TCP/IP連接。對于嵌入式系統(tǒng),TCP/IP軟件協(xié)議棧也構(gòu)成了系統(tǒng)成本的一部分,而這部分投入占有不小的比例。同時,軟件協(xié)議棧的引入無疑要占用更多的系統(tǒng)資源,對于嵌入式系統(tǒng)來說是很可觀的。S7600A TCP/IP硬件協(xié)議棧芯片很好地解決了資源和成本有限的嵌入式系統(tǒng)的Internet接入問題。

1 S7600A的內(nèi)部結(jié)構(gòu)

S7600A內(nèi)部結(jié)構(gòu)如圖1所示,它由網(wǎng)絡(luò)棧、物理層接口、微控制器接口、SRAM接口和片內(nèi)SRAM組成。(1)網(wǎng)絡(luò)棧是該芯片的核心。它建立在物理層上,包含有實現(xiàn)TCP/IP協(xié)議的特殊的層次化的數(shù)據(jù)結(jié)構(gòu),并完成數(shù)據(jù)的包裝或剝離。其內(nèi)部又可以分為PPP(點對點協(xié)議)、IP(網(wǎng)際協(xié)議)、TCP(傳輸控制協(xié)議)/UDP(用戶數(shù)據(jù)報協(xié)議)幾個層次。(2)物理層接口是實現(xiàn)協(xié)議的最底層接口。在這里以UART的形式提供對外連接,可以通過外接Modem實現(xiàn)Internet接入。(3)微控制器接口提供了與68k/x86(Moterola/Intel)MPU的標(biāo)準(zhǔn)并行接口非標(biāo)準(zhǔn)的串行接口(串/并模式由PSX來選擇)。在x86/68k并行模式下,由C86來選擇x86或68k。SD[7:0]為地址/數(shù)據(jù)復(fù)用總線,CS為片選輸入,READX和WRITEX為讀寫信號,RS為寄存器選擇輸入,用業(yè)指示地址和數(shù)據(jù)。在串行模式下,SD7為串行數(shù)據(jù)輸入,SD6為串行時鐘輸入,SD5為串行數(shù)據(jù)輸出,WRITEX用來切換讀和寫。另外芯片提供了中斷輸出,用來給MPU發(fā)特定請求。BUSYX用做忙指示。

2 S7600A內(nèi)部寄存器和數(shù)據(jù)傳輸實例

S7600A有36個內(nèi)部寄存器,有單字節(jié)、多字節(jié),也有變長的(如PPP_String寄存器,用來存放PAP用戶名和指令,其長度與用戶名和口令的實際長度相關(guān))。對內(nèi)部寄存器的讀寫可以實現(xiàn)對S7600A的各種操作,其中若干寄存器用來做TCP/IP的協(xié)議接口。由于寄存器數(shù)據(jù)量較多,這里不一一介紹,僅舉一個TCP數(shù)據(jù)的傳輸實例來說明對該芯片的操作。

一個IP地址和一個端口號可以稱一個插口(Socket)。而一個插口對可以唯一地確定互聯(lián)網(wǎng)絡(luò)里一個TCP連接。在進行以下操作之前事先要建立一個TCP連接。

首先,將Serial_Port_Config寄存器(08H)里的SCTL標(biāo)志位置1,把對串口的控制權(quán)交給硬件(S7600A),把要傳輸?shù)臄?shù)據(jù)寫到Socket_Data寄存器(2EH)里,S7600A就會把數(shù)據(jù)通過該寄存器放到輸出緩沖區(qū)(1K字節(jié)長度)。注意輸出緩沖區(qū)地址在Buffer_Out_Length寄存器(30H-31H)里,當(dāng)輸出緩沖區(qū)為全空時,該寄存器里寫一個字節(jié)的數(shù)據(jù),用戶每向Socket_Data寄存器里寫一個字節(jié)的數(shù)據(jù),Buffer_Out_Length寄存器的值就會自動減一。

當(dāng)用戶要發(fā)送TCP數(shù)據(jù)時,只要向Data_Send寄存器(30H)里寫任意個字節(jié)的數(shù)據(jù),S7600A就會對輸出緩沖區(qū)里的數(shù)據(jù)進行TCP數(shù)據(jù)處理(自動加入TCP首部,形成TCP段;再加入IP首部,形成IP數(shù)據(jù)報;最后在串行鏈路上封裝IP數(shù)據(jù)報,形成PPP數(shù)據(jù)幀,如圖2所示。)然后通過UART接口發(fā)送出去。同時Buffer_Out_Length寄存器的值會復(fù)原到3FFH.注意輸出緩沖區(qū)最大1K字節(jié),超過該值是不允許的。

3 基于S7600A的接入方案

3.1 系統(tǒng)構(gòu)成

基于S7600A的接入方案如圖3所示,系統(tǒng)采用通用單片機AT89C51為控制核。單片機既可以通過并行總線又可以通過串行總線與S7600A相連(在串行時用I/O口實現(xiàn)串行時序),通過對S7600A的操作實現(xiàn)TCP/IP協(xié)議。S7600A經(jīng)UART接口與嵌入式Modem相接,經(jīng)電話線接入Internet。應(yīng)用程序與遠程服務(wù)器或客戶機建立TCP或UDP連接,在此基礎(chǔ)上實現(xiàn)多種應(yīng)用,如FTP、SMTP、POP3、Telnet、IP電話服務(wù)等。從網(wǎng)上獲取的信息可以經(jīng)系統(tǒng)總線傳給嵌入系統(tǒng)的其他部分或者直接顯示在LCD上,同樣系統(tǒng)產(chǎn)生的信息也可發(fā)送到網(wǎng)絡(luò)上。

3.2 系統(tǒng)的軟件設(shè)計

(1)嵌入式實時多任務(wù)操作系統(tǒng)

在這個系統(tǒng)里,引入了實時操作系統(tǒng)(RTOS)。通常對單片機的開發(fā)是在硬件的基礎(chǔ)上直接進行編程,這種方法一般用于規(guī)模較小、較簡單的系統(tǒng),對于規(guī)模較大、較為復(fù)雜的系統(tǒng)會產(chǎn)生一定的隱患,屬于較低層次的開發(fā)。近年來,在嵌入式應(yīng)用中使用實時多任務(wù)操作系統(tǒng)已經(jīng)成為一個熱點、一種時尚,從本質(zhì)意義上講,是系統(tǒng)開發(fā)層次的一種提高。在實時多任務(wù)操作系統(tǒng)的支持下,多個任務(wù)可以按照一定關(guān)系并行工作,CPU資源得到充分利用,系統(tǒng)可靠性得到很好的保證,同時方便組織開發(fā)任務(wù)。

當(dāng)前出現(xiàn)了很多商業(yè)的RTOS,但一般價格比較昂貴,代碼不公開。本系統(tǒng)使用了開放源代碼的RTOS μC/OS,這個RTOS已經(jīng)在很多系統(tǒng)上進行了成功的應(yīng)用,同時已經(jīng)被移植到8051上。

(2)S7600A應(yīng)用程序接口(API)

S7600A以硬件的形式提供了TCP/IP協(xié)議的簡單端口。即便如此,對其內(nèi)部眾多寄存器進行尋址操作了并不容易,建立TCP/IP連接仍然是比較復(fù)雜的過程。幸運的是,廠商為其提供API函數(shù)集,通過調(diào)用該函數(shù)集,可以實現(xiàn)S7600A的所有功能。這個函數(shù)集是建立在RTOS上的。但是這套API又具有硬件和平臺的獨立性,非常有利于在各種系統(tǒng)上移植,這種特性為實際開發(fā)項目的層次公組織創(chuàng)造了非常有利的條件。其硬件獨立性是通過API里的兩個文件iHwIFace.h和iHwIFace.c實現(xiàn)的,用戶在重寫這兩個文件后,可以使API用在不同的CPU上,它實際相當(dāng)于S7600A的底層驅(qū)動程序。在這個系統(tǒng)里要根據(jù)AT89C51和S7600A的編址連接來確定這兩個文件,其平臺獨立性是通過API里的iSys.h和iSys.c實現(xiàn)的,用戶在重寫這兩個文件后,可以使API運行在不同的操作系統(tǒng)上,在該公司提供的這套API里已經(jīng)附帶了基于μC/OS的這兩個文件。

該API包括兩個主要部分:iStacApi(實現(xiàn)PPP)和iSockApi(實現(xiàn)Socket連接),對S7600A的功能進行了簡單而有效的封裝,為應(yīng)用軟件的開發(fā)提供了方便。如表1、表2所示。

表1 iStacApi

[1] [2] [3] [4]  下一頁
  • 上一篇: 基于CAN總線的智能尋位制造系統(tǒng)
  • 下一篇: TMS320C6416特點及其在3G基站中的應(yīng)用
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

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

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

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