新聞中心

        EEPW首頁 > 消費電子 > 設計應用 > 以太網智能家居控制器的設計

        以太網智能家居控制器的設計

        作者: 時間:2010-03-19 來源:網絡 收藏
        接收數據時,接收緩沖區構成一個循環 FIFO隊列。 PSTART、PSTOP兩個寄存器限定了循環隊列的開始和結束頁;CURR為寫入指針,受芯片控制; BNRY為讀出指針,由主機程序控制。程序通過查詢 CURR和 BNRY兩個寄存器的值來判斷是否收到一幀數據。程序流程見圖 3所示。

        本文引用地址:http://www.104case.com/article/166756.htm


        3.2 嵌入式 Web服務器的實現
        中采用的是 W78E58B型 8位單片機,由于單片機存儲空間有限、處理速度相對較慢,且在整個遠程控制中不需要實現完整的 TCP/IP協議。因此,可以在遠程控制的網絡連接和訪問技術中采用精簡 TCP/IP協議。要實現交互功能,就要在精簡 TCP/IP協議的基礎上實現 HTTP協議,構建嵌入式 Web服務器。本中的精簡 TCP/IP協議具有同 TCP/IP協議一樣的四層結構,各層實現的功能如下:
        ①鏈路層。中通過接入到 Internet,因此物理層和數據鏈路層要符合的 IEEE802.3標準。然而, RTL8019AS的硬件組成部分已經實現了 CSMA/CD控制機制,屏蔽了底層硬件處理的細節,并向上層軟件提供與硬件無關的接口,最終完成了數據在以太網中的接收和發送。因此,設計中物理層與數據鏈路層的設計是通過 RTL8019AS硬件和驅動程序共同實現的。
        ②網絡層實現了 ARP協議、ICMP協議和 IP協議。ARP是地址解析協議,具體處理過程是當接收到 ARP數據包,處理器就查看 IP地址是請求還是響應。如果是響應,則將響應中的網卡地址存到 ARP高速緩存表中;如果是請求,處理器將返回自己的網卡物理地址給對方。ICMP是調試響應 PING的請求,檢測網路是否通順。依照系統實際應用的要求, IP協議只需實現對數據報傳送和接收,無須實現路由選擇算法和差錯控制,同時也不需支持 IP數據報的分片和重組。
        ③傳輸層實現 TCP協議。 TCP協議是面向連接的、端對端的可靠。設計中采取了 TCP連接的建立與關閉機制、超時重傳機制、數據包確認機制、流量控制機制來保證它的可靠性。在超時重傳機制中,如果超時重傳定時器溢出后還沒有收到確認,則重傳該數據包,并復位重傳定時器。為簡單起見,程序里每次只發送一個 TCP數據包,然后等待它的確認,只有收到確認后才會繼續發送下面的 TCP數據包。在本設計,程序重傳的間隔時間是固定的,沒有采用 TCP協議中的標準算法,當達到一定的次數后,發送方還沒有收到確認,則會放棄該包的發送并關閉 TCP連接。TCP的流量控制是為了協調通信雙方的收發

        速率不均衡而設計的。設計中考慮到系統在使用 TCP協議時,只設置了一個中等 IP包大小接收緩存,因此接收窗口恒定設為 1024。這樣遠端主機就會以較慢的傳輸速率與本端的 Web服務器進行通信,不會導致死機。
        ④應用層實現了 HTTP協議。HTTP是在 Web服務器和瀏覽器之間通信的協議。為了
        簡化,設計中采用固定的 HTTP報文頭封裝 HTTP應答數據報文。格式如下:
        char code html_header[ ] //客戶端訪問主頁時候服務器的響應頭部
        = {HTTP/1.1 200 OKn //響應行( Respond Line),狀態為 OK,表示文件可以讀取
        Cache-control: no-cachen //沒有高速緩存控制
        Connection: Keep-Aliven //HTTP/1.1的可持續鏈接
        Content-Length: TAG:LEN1n //文件長度
        Content-Type: text/htmlrnrn };//客戶端 GET請求的文件格式
        在響應 HTTP請求時,由于以太網數據包的數據部分不能超過 1500字節,因此當發送
        數據超過 1500字節,需要分組發送。
        3.3 以太網遠程控制運行結果
        接入以太網后,用戶只需在瀏覽器中輸入控制器的 IP地址,便可登錄遠程控制界面。當正確輸入用戶名和密碼后,便進入控制頁面,用戶可以訪問并控制各子系統。
        圖 4為智能家電的控制頁面,系統使用 GIF格式圖片表示智能家電開關的狀態。當單擊控制頁面中相應的開關后, Web服務器收到 HTTP請求,執行 CGI程序,將相反狀態的圖片嵌入到網頁相應的位置中。與此同時,單片機會在相應家電的控制端口,輸出一個與之前狀態相反的電平,此時繼電器動作,家電運行狀態改變。最后智能家居 Web服務器將新的 HTML頁面回送給用戶端,瀏覽器更新頁面,并顯示改變后的家電狀態。


        智能家居 Web服務器的軟件系統還啟用了定時機制,當用戶在規定的時間內未執行任何操作,系統將退出控制頁面,返回到登錄頁面。用戶必須重新輸入驗證信息,并登錄后才可再次進入控制頁面執行操作,大大提高了整個智能家居控制系統的安全性。

        tcp/ip相關文章:tcp/ip是什么



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 手游| 社会| 怀远县| 华宁县| 丰县| 清丰县| 汉寿县| 渝北区| 成武县| 兴安盟| 同心县| 汝阳县| 山西省| 乐东| 梁河县| 正镶白旗| 石渠县| 高安市| 和硕县| 通榆县| 宁陵县| 瑞丽市| 吴忠市| 闸北区| 舞阳县| 越西县| 陕西省| 泽州县| 昔阳县| 营口市| 忻州市| 东城区| 六盘水市| 永靖县| 育儿| 改则县| 崇左市| 电白县| 江阴市| 阿图什市| 麻城市|