亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于TCP/IP硬件協(xié)議棧的嵌入式HTTP服務(wù)器設(shè)計(jì)與實(shí)現(xiàn)

        2019-01-30 03:20:00汪海兵董天寶
        電氣自動(dòng)化 2018年5期
        關(guān)鍵詞:嵌入式單片機(jī)

        汪海兵, 董天寶

        (國(guó)防科技大學(xué) 電子對(duì)抗學(xué)院, 安徽 合肥 230037)

        0 引 言

        第四次工業(yè)革命以互聯(lián)網(wǎng)為核心,使傳統(tǒng)行業(yè)與互聯(lián)網(wǎng)緊密結(jié)合,推進(jìn)工業(yè)系統(tǒng)實(shí)現(xiàn)智能化。工業(yè)領(lǐng)域低成本高可靠性地接入互聯(lián)網(wǎng)?目前有基于通用個(gè)人電腦、基于ARM9嵌入式系統(tǒng)和基于ARM7單片機(jī)小系統(tǒng)三種方案,其中基于單片機(jī)的小系統(tǒng)以其低復(fù)雜度、高可靠性和低成本、低功耗等優(yōu)點(diǎn)成為入網(wǎng)的最佳選擇。聯(lián)網(wǎng)通信協(xié)議有UDP、TCP和HTTP三種,HTTP協(xié)議通過(guò)IE瀏覽器即可通信,不需要開(kāi)發(fā)上位機(jī)軟件,更靈活。

        目前基于單片機(jī)的入網(wǎng)方案大部分基于專用網(wǎng)絡(luò)協(xié)議芯片[1-4]只實(shí)現(xiàn)以太網(wǎng)MAC層和物理層(PHY),單片機(jī)需要實(shí)現(xiàn)TCP/IP軟件協(xié)議棧,一般配合UCOSII操作系統(tǒng)才能完成網(wǎng)絡(luò)調(diào)度,代碼量大,復(fù)雜度高,影響系統(tǒng)的穩(wěn)定性。

        本文提出基于wiznet公司全硬件協(xié)議棧W5200芯片[5]2和STM32F103RET單片機(jī)[6-7]的嵌入式HTTP服務(wù)器設(shè)計(jì)方案。W5200芯片是業(yè)界首款實(shí)現(xiàn)TCP/IP全硬件協(xié)議棧的網(wǎng)絡(luò)控制器,不僅實(shí)現(xiàn)了以太網(wǎng)MAC層和PHY層,還以硬件方式支持TCP、UDP、ICMP、ARP、IGMP和PPPOE等協(xié)議,單片機(jī)通過(guò)SPI接口配置W5200的工作參數(shù),控制W5200的工作狀態(tài)機(jī)跳轉(zhuǎn),即可實(shí)現(xiàn)網(wǎng)絡(luò)通信,而不必實(shí)現(xiàn)TCP/IP軟件協(xié)議棧。

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

        嵌入式HTTP服務(wù)器的總體設(shè)計(jì)如圖1所示。STM32單片機(jī)內(nèi)置一個(gè)小型網(wǎng)站,在IE瀏覽器中輸入服務(wù)器的IP地址即可打開(kāi)登錄網(wǎng)頁(yè),輸入正確的用戶名和密碼進(jìn)入操作界面,對(duì)入網(wǎng)設(shè)備進(jìn)行遠(yuǎn)程讀寫數(shù)據(jù)操作,從而實(shí)現(xiàn)入網(wǎng)設(shè)備接入互聯(lián)網(wǎng)的功能。

        圖1 嵌入式HTTP服務(wù)器總體方案

        網(wǎng)絡(luò)芯片采用wiznet公司的W5200芯片,主控單片機(jī)采用意法半導(dǎo)體公司STM32F103RET芯片,板上存儲(chǔ)器采用W25X64芯片,可用于存儲(chǔ)采集的數(shù)據(jù)與系統(tǒng)運(yùn)行日志。W5200電路連接如圖2所示,與單片機(jī)連接關(guān)系如表1所示。其他電路設(shè)計(jì)可以參考器件手冊(cè)。

        圖2 W5200硬件設(shè)計(jì)

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

        2.1 TCP/IP協(xié)議棧實(shí)現(xiàn)

        TCP/IP協(xié)議棧具有層次結(jié)構(gòu),分層如圖3所示。HTTP服務(wù)器協(xié)議從邏輯角度看屬于應(yīng)用層,傳輸協(xié)議采用HTTP超文本協(xié)議,在數(shù)據(jù)包組織上,HTTP數(shù)據(jù)位于傳輸層TCP幀的數(shù)據(jù)區(qū)內(nèi),而TCP幀位于網(wǎng)絡(luò)層IP幀的數(shù)據(jù)區(qū)內(nèi),IP幀位于鏈路層MAC幀的數(shù)據(jù)區(qū)內(nèi)。要獲取HTTP數(shù)據(jù)包,必須實(shí)現(xiàn)鏈路層、網(wǎng)絡(luò)層和傳輸層的網(wǎng)絡(luò)協(xié)議,這在本方案中全部由具有硬件協(xié)議棧的網(wǎng)絡(luò)芯片W5200在單片機(jī)的控制下自動(dòng)完成,并將提取的應(yīng)用層HTTP數(shù)據(jù)包發(fā)送給單片機(jī)處理。單片機(jī)只需要實(shí)現(xiàn)應(yīng)用層的HTTP數(shù)據(jù)包協(xié)議,這大大減輕了單片機(jī)的代碼量,提高了系統(tǒng)穩(wěn)定性[5]3。

        表1 W5200與單片機(jī)STM32F103RET連接對(duì)應(yīng)關(guān)系

        圖3 TCP/IP協(xié)議棧分層與實(shí)現(xiàn)方式

        2.2 W5200驅(qū)動(dòng)開(kāi)發(fā)

        由2.1節(jié)可知,網(wǎng)絡(luò)芯片W5200需要在單片機(jī)的控制下才能正確工作,具體是指單片機(jī)要通過(guò)SPI接口將網(wǎng)絡(luò)參數(shù)寫入W5200的相關(guān)寄存器,并將工作模式設(shè)置為TCPServer模式[5]33。有關(guān)寄存器地址[5]10如表2所示,據(jù)此開(kāi)啟TCP服務(wù)后,單片機(jī)需要實(shí)時(shí)監(jiān)測(cè)W5200套接字的狀態(tài),并控制其按照?qǐng)D4所示跳轉(zhuǎn)[5]25。注意這個(gè)循環(huán)需要實(shí)時(shí)監(jiān)測(cè)的,即放在主程序的while(1)循環(huán)內(nèi)部執(zhí)行。圖4中的函數(shù)“Proc_http_frame()”是HTTP協(xié)議實(shí)現(xiàn)函數(shù),將在下節(jié)具體分析。

        圖4 W5200的TCP服務(wù)器套接字狀態(tài)機(jī)跳轉(zhuǎn)

        2.3 交互式HTTP網(wǎng)頁(yè)的實(shí)現(xiàn)

        完成2.2節(jié)W5200驅(qū)動(dòng)程序開(kāi)發(fā)后,單片機(jī)就可以與遠(yuǎn)程IE瀏覽器之間收發(fā)HTTP超文本數(shù)據(jù)包了,相關(guān)功能封裝在圖5中的函數(shù)“Proc_http_frame()”中。

        表2 W5200驅(qū)動(dòng)程序相關(guān)寄存器地址

        本文設(shè)計(jì)的嵌入式HTTP服務(wù)器內(nèi)置一個(gè)小型網(wǎng)站,網(wǎng)頁(yè)使用Adobe DreamweaverCS6進(jìn)行制作,交互方式主要是通過(guò)公共網(wǎng)關(guān)接口(Common Gateway Interface,CGI)來(lái)完成。CGI 是外部應(yīng)用程序與HTTP服務(wù)器之間傳遞信息的接口標(biāo)準(zhǔn),允許HTTP服務(wù)器執(zhí)行外部程序,并將它們的輸出發(fā)送給HTTP瀏覽器。絕大多數(shù)的 CGI 程序被用來(lái)解釋處理來(lái)自表單的輸入信息,并在服務(wù)器產(chǎn)生相應(yīng)的處理,或?qū)⑾鄳?yīng)的信息反饋給瀏覽器[8]。

        以登錄界面為例,在Dreamweaver中設(shè)置如下:登錄按鈕事件屬性"LOGIN.CGI" ,方法屬性"post",用戶名編輯框名稱為“username”,密碼編輯框名稱為“password”。在IE瀏覽器中輸入正確的用戶名和密碼后,點(diǎn)擊登錄按鈕,單片機(jī)端收到HTTP請(qǐng)求數(shù)據(jù)包含有“POST /LOGIN.CGI HTTP/1.1” 關(guān)鍵字,后續(xù)報(bào)文包含具體的用戶名、登錄密碼和按鈕信息:“path=/username=admin&password=admin&button=%E7%99%BB%E5%BD%95”,據(jù)此判斷事件為用戶登錄請(qǐng)求,搜索用戶名和密碼信息,判斷是否允許登錄,密碼錯(cuò)誤,則根據(jù)HTTP超文本協(xié)議,生成登錄錯(cuò)誤網(wǎng)頁(yè)的超文本數(shù)據(jù)包,使用TCPSend()函數(shù)發(fā)送給上位機(jī),上位機(jī)的IE瀏覽器收到數(shù)據(jù)包后,顯示如圖5所示。

        圖5 單片機(jī)回傳的登錄錯(cuò)誤超文本數(shù)據(jù)包在上位機(jī)IE瀏覽器顯示效果

        另外本文還設(shè)計(jì)了修改登錄密碼界面、遠(yuǎn)程輸出數(shù)據(jù)和遠(yuǎn)程讀取數(shù)據(jù)界面,具體效果見(jiàn)2.4小節(jié)。

        2.4 燒錄HTTP網(wǎng)頁(yè)

        由于網(wǎng)頁(yè)源文件不能直接放到 STM32 里面,所以要做一個(gè)轉(zhuǎn)換,本文使用“ROMFILEMaker.exe”工具將HTTP服務(wù)器的網(wǎng)頁(yè)源文件轉(zhuǎn)換成二進(jìn)制文件。首先點(diǎn)擊“Add Files”選擇所需網(wǎng)頁(yè)文件,然后點(diǎn)擊“Make Image”。該軟件可從http://www.wiznet.co.kr/en/ 網(wǎng)站下載。然后將該網(wǎng)頁(yè)文件拼接到單片機(jī)固件的后面,一起燒錄到STM32單片機(jī)內(nèi)部存儲(chǔ)器中,同時(shí)在單片機(jī)程序中記錄網(wǎng)頁(yè)存儲(chǔ)的起始字節(jié)地址,HTTP服務(wù)器程序在訪問(wèn)內(nèi)嵌的服務(wù)器網(wǎng)頁(yè)時(shí),就從該地址開(kāi)始搜索。

        3 系統(tǒng)演示

        HTTP服務(wù)器硬件實(shí)物如圖6所示。遠(yuǎn)程讀取數(shù)據(jù)示例如圖7所示。

        圖6 HTTP服務(wù)器實(shí)物

        4 結(jié)束語(yǔ)

        本文設(shè)計(jì)實(shí)現(xiàn)了基于硬件協(xié)議棧的單片機(jī)HTTP服務(wù)器,利用HTTP超文本協(xié)議中的CGI技術(shù)設(shè)計(jì)了交互式網(wǎng)頁(yè),并通過(guò)IE瀏覽器進(jìn)行了遠(yuǎn)程登錄和遠(yuǎn)程讀寫操作,取得了預(yù)期效果,為各種入網(wǎng)設(shè)備低成本、低復(fù)雜度和高可靠性地接入互聯(lián)網(wǎng)提供了一個(gè)通用的解決方案。

        圖7 遠(yuǎn)程讀取數(shù)據(jù)

        猜你喜歡
        嵌入式單片機(jī)
        基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于單片機(jī)的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機(jī)的便捷式LCF測(cè)量?jī)x
        電子制作(2019年9期)2019-05-30 09:42:02
        TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
        電子制作(2019年7期)2019-04-25 13:17:14
        嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
        電子制作(2018年18期)2018-11-14 01:48:16
        小議PLC與單片機(jī)之間的串行通信及應(yīng)用
        電子制作(2018年12期)2018-08-01 00:48:04
        搭建基于Qt的嵌入式開(kāi)發(fā)平臺(tái)
        基于單片機(jī)的平衡控制系統(tǒng)設(shè)計(jì)
        電子制作(2017年19期)2017-02-02 07:08:27
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        Microchip推出兩個(gè)全新PIC單片機(jī)系列
        日韩人妻无码一区二区三区久久| caoporon国产超碰公开| 男女性搞视频网站免费| 亚洲最大一区二区在线观看| 午夜时刻免费入口| 亚洲av无码一区二区二三区| 久久中文字幕久久久久| 亚洲av熟女天堂久久天堂| 亚洲性无码av中文字幕| 国产成人无码免费视频在线| 国产欧美va欧美va香蕉在线观| 中文字幕亚洲乱码熟女在线| 24小时免费在线观看av| 激情网色图区蜜桃av| 亚洲最大中文字幕在线| 性大毛片视频| 亚洲区日韩精品中文字幕| 手机免费在线观看日韩av| 强奸乱伦影音先锋| 无码人妻丰满熟妇片毛片| 国产三级黄色在线观看| 亚洲av成人永久网站一区| 伊甸园亚洲av久久精品| 亚洲欧美日韩国产综合一区二区| 人妻少妇看A偷人无码电影| 国产美腿丝袜一区二区| 国产成人精品a视频| 中文字幕免费观看视频| 久久久精品国产亚洲av网不卡| 99久久精品费精品国产一区二| 国产在线精品成人一区二区三区 | 亚洲精品国产老熟女久久| 日本午夜理论一区二区在线观看| 日本熟妇美熟bbw| 国产成+人+综合+亚洲 欧美| 亚洲一码二码在线观看| 色佬精品免费在线视频| 97夜夜澡人人爽人人喊中国片| 亚洲无码性爱视频在线观看| 一区二区在线观看精品在线观看| 亚洲色大成网站www久久九九|