• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于CH395的跨平臺遠(yuǎn)程文件管理系統(tǒng)

    2014-07-03 03:33:26張芳良
    關(guān)鍵詞:U盤中斷以太網(wǎng)

    張芳良

    (江蘇沁恒股份有限公司,南京210012)

    引 言

    隨著以太網(wǎng)協(xié)議棧芯片的出現(xiàn),普通單片機(jī)加以太網(wǎng)協(xié)議棧芯片也能實(shí)現(xiàn)與PC或者其他網(wǎng)絡(luò)設(shè)備進(jìn)行以太網(wǎng)數(shù)據(jù)傳輸。嵌入式TCP/IP協(xié)議棧的系統(tǒng)板有以太網(wǎng)媒介的高速數(shù)據(jù)傳輸接口,可用于多個(gè)節(jié)點(diǎn)之間的數(shù)據(jù)交互,同時(shí)具備體積小、成本低、傳輸速度快等優(yōu)點(diǎn),適用于現(xiàn)有的網(wǎng)絡(luò)傳輸系統(tǒng),在諸如數(shù)據(jù)采集、數(shù)據(jù)傳輸、智能化家居系統(tǒng)、工業(yè)智能化從站系統(tǒng)、網(wǎng)絡(luò)安全、儀器儀表等領(lǐng)域有著廣泛的應(yīng)用前景。基于FTP(File Transfer Protocol)標(biāo)準(zhǔn)的應(yīng)用協(xié)議,使主機(jī)間可靠高效地傳輸文件,方便實(shí)現(xiàn)遠(yuǎn)程文件存儲。因此,嵌入式TCP/IP協(xié)議棧的系統(tǒng)板加FTP應(yīng)用協(xié)議不僅可以實(shí)現(xiàn)遠(yuǎn)程文件傳輸,而且能夠解決跨平臺、多地訪問等問題,很好地實(shí)現(xiàn)了文件共享、數(shù)據(jù)管理和信息交互,使得文件傳輸不再局限于PC與PC之間或者PC與存儲設(shè)備之間。

    1 總體設(shè)計(jì)

    主控制器接收各個(gè)終端采集的數(shù)據(jù)作為FTP服務(wù)器的數(shù)據(jù)來源并存儲在U盤中,以文件的方式管理采集的數(shù)據(jù)。以太網(wǎng)協(xié)議棧芯片CH395在該系統(tǒng)以太網(wǎng)數(shù)據(jù)傳輸中扮演重要角色,作為以太網(wǎng)接口使系統(tǒng)具備遠(yuǎn)程網(wǎng)絡(luò)數(shù)據(jù)傳輸能力。本系統(tǒng)以很低的硬件成本實(shí)現(xiàn)了一臺FTP服務(wù)器的功能,可以充當(dāng)作一臺PC來使用。

    數(shù)據(jù)的傳輸基于具有可靠性的TCP(Transfer Control Protocol)協(xié)議,應(yīng)用層采用FTP協(xié)議,使得文件傳輸既便于控制,又保證了文件的正確性。用戶可以隨時(shí)通過網(wǎng)內(nèi)PC自帶的瀏覽器在遠(yuǎn)端訪問本系統(tǒng),并可以根據(jù)自己的需求做相應(yīng)的操作,例如下載、上傳、刪除、創(chuàng)建文件等。如果直接傳輸數(shù)據(jù),不僅不好區(qū)分?jǐn)?shù)據(jù)類型,而且不便于數(shù)據(jù)管理,而文件的方式共享數(shù)據(jù),不僅操作簡單,管理也更方便。

    另外,為了數(shù)據(jù)的安全性,可以對不同的工作人員分配不同等級的權(quán)限。與普通的延長方式相比,這種方式有明顯的優(yōu)勢,例如,用USB延長方式訪問遠(yuǎn)端U盤,只有與U盤連接的那一臺PC才擁有操作U盤的權(quán)限,這種方式僅僅是遠(yuǎn)程訪問,無法做到多人控制,文件共享,而且無法分配權(quán)限等級。而基于該系統(tǒng)的設(shè)備,所有連入這個(gè)網(wǎng)內(nèi)的PC、移動設(shè)備都可以訪問、修改U盤中的數(shù)據(jù),實(shí)現(xiàn)真正意義上的遠(yuǎn)程文件共享及管理。系統(tǒng)總體架構(gòu)如圖1所示。

    1.1 CH395簡介

    圖1 總體設(shè)計(jì)框圖

    CH395芯片自帶10/100M 媒體訪問控制(MAC)和物理層(PHY),完全兼容IEEE802.3 10/100M 協(xié)議,支持MDI/MDIX線路自動轉(zhuǎn)換和低功耗模式,內(nèi)置IP、ARP、ICMP、IGMP、UDP、TCP等以太網(wǎng)協(xié)議棧固件以及24 K RAM,提供4個(gè)獨(dú)立的Socket接口,可以同時(shí)進(jìn)行通信,每個(gè)傳輸通道獨(dú)立擁有2 KB發(fā)送緩沖區(qū)和4 KB的接收緩沖區(qū),可用于以太網(wǎng)數(shù)據(jù)收發(fā)。單片機(jī)只需執(zhí)行一些簡單的操作便可進(jìn)行網(wǎng)絡(luò)通信[1]。CH395結(jié)構(gòu)圖如圖2所示。

    圖2 CH395結(jié)構(gòu)圖

    1.2 TCP/IP協(xié)議簡介

    TCP/IP協(xié)議是一套把因特網(wǎng)上的各種系統(tǒng)互連起來的協(xié)議組,以保證因特網(wǎng)上數(shù)據(jù)的準(zhǔn)確快速傳輸。參考開放系統(tǒng)互連(OSI)模型,TCP/IP通常采用一種簡化的四層模型,分別為:應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、鏈路層[2]。

    鏈路層的首要工作是在本地范圍內(nèi)實(shí)現(xiàn)網(wǎng)絡(luò),為面向硬件的物理層以及更抽象的、面向軟件的網(wǎng)絡(luò)層及上面各層的功能提供接口。網(wǎng)絡(luò)層的主要協(xié)議是IP(Internet Protocol),用于設(shè)備之間的數(shù)據(jù)交互。運(yùn)輸層主要包括傳輸控制協(xié)議(TCP)和用戶數(shù)據(jù)報(bào)協(xié)議(UDP),該層負(fù)責(zé)完成將數(shù)據(jù)從一個(gè)地方傳送到另一個(gè)地方的具體工作。應(yīng)用層負(fù)責(zé)處理特定的應(yīng)用程序細(xì)節(jié),它要有一個(gè)定義清晰的會話過程。在本系統(tǒng)中,F(xiàn)TP應(yīng)用層協(xié)議來保證數(shù)據(jù)傳輸過程中文件的完整性,傳輸層使用TCP來保證數(shù)據(jù)的正確性。

    1.3 FTP簡介

    FTP即文本傳輸協(xié)議,是文件傳輸?shù)闹饕W(wǎng)絡(luò)標(biāo)準(zhǔn),F(xiàn)TP主要的功能被定義為在主機(jī)間可靠高效地傳輸文件,并允許方便地使用遠(yuǎn)程文件存儲能力。FTP的目標(biāo)是提高文件的共享性,提供非直接使用遠(yuǎn)程計(jì)算機(jī),使存儲介質(zhì)對用戶透明并可靠高效地傳送數(shù)據(jù)[3]。

    ASCII字符集是在ARPA-Internet協(xié)議手冊中定義的,在FTP里,ASCII字符被定義為8位的編碼集。FTP中有兩種類型的字節(jié)大?。何募倪壿嬜止?jié)大小和用于數(shù)據(jù)傳輸?shù)膫鬏斪止?jié)大小。傳輸字節(jié)大小通常是8位,傳輸字節(jié)不必等于系統(tǒng)中存儲數(shù)據(jù)的字節(jié)大小,也不必對數(shù)據(jù)結(jié)構(gòu)進(jìn)行解釋。FTP可以支持不同操作系統(tǒng)、不同文件系統(tǒng)之間進(jìn)行文件的傳輸,它們之間通信采用雙方都支持的一種格式。

    控制連接是建立在USER-PIT和SERVER-PI之間用于交換命令與應(yīng)答的通信鏈路,該連接遵從Telnet協(xié)議。權(quán)限控制定義了用戶在一個(gè)系統(tǒng)中可使用的權(quán)限和對系統(tǒng)中文件操作的權(quán)限,為防止未被授權(quán)或意外地使用文件,權(quán)限控制是必須要做的。Server-FTP過程有調(diào)用權(quán)限控制的特權(quán)。

    數(shù)據(jù)連接是在特定的模式和類型下進(jìn)行的全雙工連接,傳輸數(shù)據(jù)可以是文件的一部分、整個(gè)文件或數(shù)個(gè)文件,鏈路可以建立在服務(wù)器DTP和用戶DTP之間,也可以建立在兩個(gè)服務(wù)器DTP之間。FTP將同時(shí)發(fā)生的TCP控制連接和數(shù)據(jù)傳輸分隔開,所有的數(shù)據(jù)傳輸都是基于控制連接的FTP命令來進(jìn)行的,能對文件傳輸進(jìn)行可靠高效的控制[4]。FTP框圖如圖3所示。

    圖3 FTP框圖

    2 關(guān)鍵技術(shù)實(shí)現(xiàn)

    整個(gè)系統(tǒng)充當(dāng)一個(gè)FTP服務(wù)器的角色,可以是匿名服務(wù)器,所有的PC或者移動設(shè)備都可以通過自帶瀏覽器訪問該服務(wù)器;可以設(shè)置用戶權(quán)限,只有擁有權(quán)限的用戶才可以訪問該服務(wù)器;也可以設(shè)置用戶權(quán)限等級,不同用戶擁有不同等級的權(quán)限,便于更好地對數(shù)據(jù)進(jìn)行管理。本系統(tǒng)采用第三種方式,即所有網(wǎng)內(nèi)設(shè)備可以訪問該服務(wù)器、瀏覽數(shù)據(jù),但只有特殊權(quán)限的人員才能對文件數(shù)據(jù)進(jìn)行管理。

    單片機(jī)接收到的終端數(shù)據(jù)保存到存儲介質(zhì)中,根據(jù)需要可以有不同的文件命名方式,例如以遞增方式命名、數(shù)據(jù)類型命名等。FTP服務(wù)器所有的文件數(shù)據(jù)來源于存儲介質(zhì)U盤,U盤中的數(shù)據(jù)來源于各個(gè)采集終端,以文件的方式管理采集到的數(shù)據(jù),進(jìn)而實(shí)現(xiàn)數(shù)據(jù)共享和遠(yuǎn)程控制。

    2.1 硬件設(shè)計(jì)

    硬件主要由CH563(主控芯片)、CH395(以太網(wǎng)協(xié)議棧芯片)、U盤(存儲介質(zhì))組成。

    本系統(tǒng)主控芯片選用CH563,這是一款A(yù)RM9內(nèi)核的單片機(jī)。存儲介質(zhì)選用U盤,CH563的文件系統(tǒng)庫可以很方便地操作U盤設(shè)備,只需要調(diào)用一些簡單的接口函數(shù)即可進(jìn)行文件的讀寫、枚舉、刪除和創(chuàng)建等操作,也支持其他存儲介質(zhì),如SD卡等。終端采集數(shù)據(jù)可通過串口、SPI接口等傳輸給單片機(jī)。網(wǎng)絡(luò)設(shè)備可以是交換機(jī)、路由器、PC或其他嵌入式網(wǎng)絡(luò)產(chǎn)品。

    CH395是以太網(wǎng)協(xié)議棧管理芯片,用于單片機(jī)系統(tǒng)進(jìn)行以太網(wǎng)通信。支持三種通信接口:高速8位被動并行接口、最高30 MHz速度的SPI設(shè)備接口、最高3 Mbps速度的異步串口,支持通信波特率動態(tài)調(diào)整。主控芯片可以通過上述任何一種通信接口控制CH395芯片進(jìn)行以太網(wǎng)通信。CH395硬件電路設(shè)計(jì)如圖4所示。

    圖4 CH395硬件電路設(shè)計(jì)圖

    2.2 軟件設(shè)計(jì)

    2.2.1 主程序流程

    主控芯片進(jìn)行初始化,初始化U盤,初始化CH395。單片機(jī)初始化狀態(tài)值、接口函數(shù)、定時(shí)器、中斷等。初始化U盤,先初始化文件系統(tǒng)庫,然后等待設(shè)備連接,枚舉U盤設(shè)備,等待進(jìn)行讀寫操作。初始化CH395,設(shè)置CH395的IP地址、網(wǎng)關(guān)地址、子網(wǎng)掩碼,初始化一個(gè)Socket,建立端口21的TCP監(jiān)聽端口,等待用戶建立連接進(jìn)行網(wǎng)絡(luò)通信。

    初始化完成后,主程序循環(huán)查詢中斷和狀態(tài)機(jī)。中斷狀態(tài)有兩個(gè)部分:CH395中斷和串口接收中斷。如果有CH395中斷,則執(zhí)行CH395中斷處理程序。CH395中斷主要有TCP連接、連接關(guān)閉、接收數(shù)據(jù)中斷;如果有串口接收中斷,則處理串口中斷程序,查詢狀態(tài)機(jī)根據(jù)當(dāng)前狀態(tài)進(jìn)入相應(yīng)狀態(tài)機(jī)程序處理部分。主程序流程圖如圖5所示。

    圖5 主程序流程圖

    2.2.2 中斷處理

    FTP服務(wù)器采用默認(rèn)端口21,用戶只有與服務(wù)器建立連接后才可以進(jìn)行通信,當(dāng)產(chǎn)生TCP連接中斷、建立連接后,客戶端發(fā)送FTP控制命令與服務(wù)器進(jìn)行通信,服務(wù)器對客戶端的命令作出相應(yīng)地響應(yīng),接收命令會產(chǎn)生接收數(shù)據(jù)中斷。如果涉及文件數(shù)據(jù)的傳輸,則會建立另外一個(gè)臨時(shí)的數(shù)據(jù)連接通道,端口可以是雙方約定的任意一個(gè),產(chǎn)生TCP連接中斷后,建立連接則可以進(jìn)行文件數(shù)據(jù)的傳輸,傳輸完成后由數(shù)據(jù)發(fā)送方發(fā)起關(guān)閉連接操作,則會產(chǎn)生TCP斷開連接中斷信號,此時(shí)應(yīng)該關(guān)閉打開的文件。例如,當(dāng)用戶訪問服務(wù)器時(shí),會顯示U盤根目錄下文件列表信息,打開一個(gè)文件夾時(shí),會顯示該文件夾下所有文件列表,然后操作U盤獲取相應(yīng)的數(shù)據(jù)傳輸給用戶用于顯示。當(dāng)用戶不需要訪問服務(wù)器時(shí),可以主動關(guān)閉與服務(wù)器的控制連接,釋放該通道,同樣會產(chǎn)生TCP斷開連接中斷信號。當(dāng)接收到串口接收中斷時(shí),讀取數(shù)據(jù)暫存在緩沖區(qū)中,進(jìn)入數(shù)據(jù)寫入狀態(tài)。中斷處理程序如圖6所示。

    2.2.3 狀態(tài)查詢

    圖6 中斷處理程序

    查詢狀態(tài)主要有需要發(fā)送文件、有數(shù)據(jù)寫入、1 s超時(shí)狀態(tài)。如果需要發(fā)送文件,則根據(jù)獲取的參數(shù)(文件路徑)操作U盤讀取相應(yīng)數(shù)據(jù)通過網(wǎng)絡(luò)發(fā)送數(shù)據(jù),發(fā)送完成后,關(guān)閉數(shù)據(jù)連接和打開的文件,發(fā)送傳輸結(jié)束命令。如果有數(shù)據(jù)寫入,則根據(jù)獲取的參數(shù)執(zhí)行寫U盤操作。當(dāng)數(shù)據(jù)發(fā)送完成時(shí)對方會通過控制連接發(fā)送命令通知服務(wù)器,并關(guān)閉數(shù)據(jù)連接,則寫U盤結(jié)束,更新文件長度并關(guān)閉文件。1 s超時(shí)為當(dāng)用戶不需要操作的時(shí)候,1 s內(nèi)未進(jìn)行任何操作(包括數(shù)據(jù)通信),則會進(jìn)入超時(shí)狀態(tài)。此時(shí)服務(wù)器會主動關(guān)閉與用戶的控制連接,目的是快速釋放連接通道,因?yàn)楸綟TP服務(wù)器同一時(shí)刻只有一個(gè)用戶連接,每次只有一個(gè)用戶在訪問,如果用戶不進(jìn)行任何操作又長時(shí)間占用此通道則其他用戶無法訪問該服務(wù)器。1 s超時(shí)處理既不影響用戶正常操作,又可以快速釋放通道,保證多個(gè)用戶快速地訪問。狀態(tài)機(jī)程序如圖7所示。

    3 性能測試

    圖7 狀態(tài)機(jī)程序

    PC可通過自帶瀏覽器直接訪問U盤中的文件。支持對U盤中文件的創(chuàng)建、刪除、下載、上傳、讀取等操作,基本上與電腦直接操作文件一樣,傳輸速度穩(wěn)定,并且支持多人快速地訪問。遵循熟悉的文件操作方式,以很低的硬件成本實(shí)現(xiàn)了遠(yuǎn)程文件傳輸、數(shù)據(jù)管理、信息交互這一遠(yuǎn)程文件管理系統(tǒng)。

    結(jié) 語

    本文提出以太網(wǎng)協(xié)議棧接口芯片CH395作為網(wǎng)絡(luò)通信媒介,實(shí)現(xiàn)對遠(yuǎn)程文件的智能化管理,根據(jù)實(shí)際應(yīng)用增加特殊的功能擴(kuò)展,可用于諸如智能化家居系統(tǒng)、工業(yè)智能化從站系統(tǒng)和網(wǎng)絡(luò)安全等多種場合。

    [1]江蘇沁恒股份有限公司.以太網(wǎng)協(xié)議棧芯片CH395手冊(一),2013.

    [2]科齊勒克.TCP/IP指南(卷1)[M].陳鳴,賈永興,宋麗華,譯.北京:人民郵電出版社,2008.

    [3]Postel Jon.RFC 793—1981傳輸控制協(xié)議-DARPA Internet程序協(xié)議規(guī)范[S].

    猜你喜歡
    U盤中斷以太網(wǎng)
    基于1500以太網(wǎng)養(yǎng)豬場的智能飼喂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
    采用U盤文件冗余方案實(shí)現(xiàn)TSP系統(tǒng)的可靠裝載
    跟蹤導(dǎo)練(二)(5)
    千里移防,衛(wèi)勤保障不中斷
    解放軍健康(2017年5期)2017-08-01 06:27:44
    談實(shí)時(shí)以太網(wǎng)EtherCAT技術(shù)在變電站自動化中的應(yīng)用
    電子制作(2017年24期)2017-02-02 07:14:44
    一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計(jì)
    淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應(yīng)用
    U盤“鬧肚子”
    AT89C51與中斷有關(guān)的寄存器功能表解
    FPGA內(nèi)嵌PowerPC的中斷響應(yīng)分析
    谷城县| 南召县| 邵阳市| 怀来县| 漾濞| 永福县| 东山县| 定日县| 达日县| 韩城市| 漳平市| 宿迁市| 平度市| 喀什市| 施秉县| 澎湖县| 封开县| 东乌| 郯城县| 依兰县| 广饶县| 左贡县| 嵩明县| 鄂托克前旗| 济阳县| 菏泽市| 大渡口区| 讷河市| 东乡族自治县| 明溪县| 芒康县| 庆阳市| 凤山县| 务川| 名山县| 枞阳县| 团风县| 临邑县| 项城市| 江安县| 丹江口市|