當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式硬件


Internet的日益普及,信息共享程度的不斷提高,使得網(wǎng)絡(luò)和信息家電(IA)已越來(lái)越多的出現(xiàn)在人們的生活之中。家庭信息化網(wǎng)絡(luò)技術(shù)也成為世界上各大家電制造廠商研發(fā)的主要方向。信息家電是將普通家用電器利用數(shù)字技術(shù)、網(wǎng)絡(luò)技術(shù)及智能控制技術(shù)設(shè)計(jì)改進(jìn)的新型家電產(chǎn)品。家電網(wǎng)絡(luò)化方案如圖1所示,信息家電可以實(shí)現(xiàn)家電互聯(lián)組成一個(gè)家庭內(nèi)部網(wǎng)絡(luò),同時(shí)這個(gè)家庭網(wǎng)絡(luò)又可以與外部互聯(lián)網(wǎng)相連接。從而可實(shí)現(xiàn)對(duì)家電的集中控制,根據(jù)個(gè)人習(xí)慣設(shè)定所有網(wǎng)絡(luò)家電的自動(dòng)起停時(shí)間與自動(dòng)運(yùn)轉(zhuǎn)方式。同時(shí)可對(duì)家用電器的運(yùn)行狀態(tài)進(jìn)行遠(yuǎn)程控制與故障監(jiān)測(cè),為人們提供一個(gè)高效、便捷、現(xiàn)代化的生活環(huán)境。


圖1:家電網(wǎng)絡(luò)化方案

家電的網(wǎng)絡(luò)化過(guò)程有兩個(gè)關(guān)鍵技術(shù)需要解決,一是家庭網(wǎng)關(guān)的設(shè)計(jì) ;二是家庭內(nèi)部組網(wǎng)方式的實(shí)現(xiàn)。目前,家庭內(nèi)部基本連網(wǎng)方式包括有線和無(wú)線兩種。其中有線方式以雙絞線、電話線、電力線等最為典型。而無(wú)線方式則以HomeRF、BlueTooth為代表,它們?cè)趯?shí)現(xiàn)過(guò)程中各有優(yōu)缺點(diǎn)。而嵌入式家庭網(wǎng)關(guān)則是家庭局域網(wǎng)的核心部分,它主要完成家庭內(nèi)部網(wǎng)絡(luò)各種不同通信協(xié)議之間的轉(zhuǎn)換和信息的共享,以及同外部通信網(wǎng)絡(luò)之間的信息交換功能,從而實(shí)現(xiàn)家庭智能設(shè)備的遠(yuǎn)程管理和控制。

系統(tǒng)方案的提出

作為家庭內(nèi)部局域網(wǎng)與外部網(wǎng)絡(luò)交換信息的中間媒介,家庭網(wǎng)關(guān)應(yīng)實(shí)現(xiàn)如圖2所示的基本功能。


圖2 : 家庭網(wǎng)關(guān)基本功能

就各種功能介紹如下:

● 嵌入式TCP/IP協(xié)議棧

TCP/IP協(xié)議是一個(gè)四層協(xié)議系統(tǒng),包括數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層,每一層負(fù)責(zé)不同的功能。其結(jié)構(gòu)框圖如圖3所示。嵌入式TCP/IP協(xié)議棧是家庭網(wǎng)關(guān)和外部Internet網(wǎng)絡(luò)通信的協(xié)議基礎(chǔ)。在復(fù)雜系統(tǒng)中,TCP/IP協(xié)議棧一般都作為操作系統(tǒng)的一部分,通過(guò)軟件實(shí)現(xiàn)。當(dāng)前比較流行的嵌入式操作系統(tǒng)基本上都包含TCP/IP協(xié)議棧,適合于中高檔微處理器實(shí)現(xiàn)。但對(duì)于一般的以8/16位微處理器和單片機(jī)為代表的低成本嵌入式系統(tǒng)而言,TCP/IP協(xié)議應(yīng)盡可能精簡(jiǎn),一般僅取其內(nèi)核部分。鑒于單片機(jī)內(nèi)部資源有限,本設(shè)計(jì)中僅實(shí)現(xiàn)ARP、IP、ICMP、UDP、HTTP五種協(xié)議,提供了一個(gè)從網(wǎng)絡(luò)層到應(yīng)用層的完整通道。


圖3: TCP/IP協(xié)議層次結(jié)構(gòu)

● 嵌入式Web服務(wù)器(WebServer)

嵌入式Web服務(wù)器是家庭網(wǎng)關(guān)面向外部通信網(wǎng)絡(luò)和遠(yuǎn)程監(jiān)控用戶的窗口,家庭內(nèi)部各種智能應(yīng)用終端的信息和狀態(tài)均以網(wǎng)頁(yè)的形式通過(guò)Web服務(wù)器傳送給遠(yuǎn)程監(jiān)控用戶,遠(yuǎn)程監(jiān)控用戶通過(guò)網(wǎng)頁(yè)以CGI形式改變和控制家庭智能終端的參數(shù)和狀態(tài)。根據(jù)目前技術(shù)背景和應(yīng)用前景,Web服務(wù)器有三種不同的形式 :WWW Web服務(wù)器、WAP Web服務(wù)器、電話控制服務(wù)器。WWW Web服務(wù)器是指當(dāng)前應(yīng)用最為廣泛的以HTTP協(xié)議和CGI為基礎(chǔ)的網(wǎng)絡(luò)服務(wù)器;WAP Web服務(wù)器是指以移動(dòng)電話為代表的移動(dòng)終端所支持的無(wú)線應(yīng)用協(xié)議為基礎(chǔ)的網(wǎng)絡(luò)服務(wù)器,是最為便捷最有前途的網(wǎng)絡(luò)服務(wù)器 ;電話控制服務(wù)器則是指支持用戶通過(guò)電話實(shí)現(xiàn)對(duì)家庭智能終端的監(jiān)視和控制的服務(wù)程序,這種方式技術(shù)含量較低,且一般只能控制少數(shù)家庭智能終端,無(wú)法實(shí)現(xiàn)對(duì)復(fù)雜家庭局域網(wǎng)的有效控制。

● 內(nèi)部網(wǎng)絡(luò)協(xié)議轉(zhuǎn)換

智能家庭局域網(wǎng)的樞紐,擔(dān)負(fù)著智能家庭局域網(wǎng)內(nèi)部各種不同協(xié)議子網(wǎng)之間的協(xié)議轉(zhuǎn)換工作,是處于智能家庭網(wǎng)關(guān)中與物理層接口的底層軟件,也是智能家庭網(wǎng)關(guān)的基礎(chǔ)。由于家庭內(nèi)部網(wǎng)絡(luò)有高速和低速之分,本設(shè)計(jì)僅側(cè)重于以信息家電為對(duì)象的低速家庭網(wǎng)絡(luò),并不涉及具體的計(jì)算機(jī)網(wǎng)絡(luò)和高速多媒體網(wǎng)絡(luò),故網(wǎng)絡(luò)協(xié)議轉(zhuǎn)換部分實(shí)現(xiàn)起來(lái)相對(duì)容易。

● 家庭智能控制與管理程序

家庭智能控制與管理程序是智能家庭網(wǎng)關(guān),乃至整個(gè)智能家庭局域網(wǎng)的核心,負(fù)責(zé)所有智能應(yīng)用終端的控制和管理功能。家庭智能控制與管理程序不僅需要根據(jù)遠(yuǎn)程監(jiān)控用戶的指令完成對(duì)各種不同智能應(yīng)用終端的參數(shù)設(shè)置和控制,而且還要根據(jù)各種不同智能應(yīng)用終端的特性和家居生活的特點(diǎn),制定一套有效合理的控制和管理策略,從而給家庭用戶提供一個(gè)舒適、便捷、安全的生活環(huán)境。家庭智能控制與管理是一個(gè)涉及技術(shù)領(lǐng)域廣泛、工程比較龐大的系統(tǒng)工程,研制一套切實(shí)有效的家庭智能控制與管理程序?qū)⑹且粋€(gè)比較漫長(zhǎng)的反復(fù)探索過(guò)程。因此,本設(shè)計(jì)僅針對(duì)某些特定類型的智能應(yīng)用制定一套比較合理的智能控制和管理程序。

硬件設(shè)計(jì)實(shí)現(xiàn)方案

本設(shè)計(jì)采用Z-WORLD公司推出的低成本的嵌入式微控制器Rabbit 2000作為主控制器。它是一種高性能的8位微處理器,帶RJ-45插口的內(nèi)置10Base-T端口簡(jiǎn)化了網(wǎng)絡(luò)連接,便于開(kāi)發(fā)帶以太網(wǎng)接口的監(jiān)控、通信設(shè)備;配備有4個(gè)串行口,方便擴(kuò)展連接;擁有26根并行的I/O引線以及16根可設(shè)置的I/O引線,無(wú)須擴(kuò)展即可完成一般的I/O任務(wù);擁有512k Flash,128k SRAM,用于程序代碼和數(shù)據(jù)的存儲(chǔ)。這種結(jié)構(gòu)促進(jìn)了嵌入式系統(tǒng)的快速開(kāi)發(fā),并可實(shí)現(xiàn)集成的以太網(wǎng)連接。

設(shè)計(jì)中采用穩(wěn)定、可靠的RS-485總線連接到本地機(jī)MCU的UART接口上,以主機(jī)輪詢方式通信,從而實(shí)現(xiàn)家用電器的工作狀態(tài)及參數(shù)的遠(yuǎn)程監(jiān)控。同時(shí)在板上預(yù)留了無(wú)線射頻模塊接口,方便系統(tǒng)擴(kuò)展。家庭網(wǎng)關(guān)的硬件結(jié)構(gòu)如圖4所示。


圖4:家庭網(wǎng)關(guān)硬件結(jié)構(gòu)

圖4中,家庭網(wǎng)關(guān)可連接10Base-T以太網(wǎng)絡(luò),為實(shí)現(xiàn)該模塊的功能,方案中將采用兩個(gè)控制器。以太網(wǎng)控制器負(fù)責(zé)物理介質(zhì)上的底層通信,而主控制器負(fù)責(zé)以太控制器的設(shè)置和命令操作。并在主控制器中完成精簡(jiǎn)TCP/IP協(xié)議棧的嵌入以及與內(nèi)部網(wǎng)絡(luò)的通信。精簡(jiǎn)TCP/IP協(xié)議棧軟件由以太控制器的接口驅(qū)動(dòng)程序和各種網(wǎng)絡(luò)協(xié)議組成,這些網(wǎng)絡(luò)協(xié)議可以用于網(wǎng)絡(luò)家電的遠(yuǎn)程通信。所有其它的組件和電路則用于對(duì)基本以太網(wǎng)組件的支持和完成其它附加功能。

家庭網(wǎng)關(guān)中的Web服務(wù)器由存儲(chǔ)在EEPROM存儲(chǔ)器上的程序和數(shù)據(jù)所支持,它們包括HTML文件和少量圖像數(shù)據(jù)等。主控制器可以取得來(lái)自于Internet上的遠(yuǎn)程瀏覽器對(duì)網(wǎng)絡(luò)家電的操作請(qǐng)求,并提取出串行存儲(chǔ)器上相應(yīng)的HTML文件和圖像內(nèi)容。主控制器通過(guò)RS-485總線連接接口與傳統(tǒng)家電相連,向相應(yīng)的家電設(shè)備傳遞操作請(qǐng)求,同時(shí)將家電狀態(tài)反饋數(shù)據(jù)打包成TCP包,并發(fā)送到以太網(wǎng)上,返回到發(fā)出請(qǐng)求的Web瀏覽器,完成其網(wǎng)關(guān)的的功能。

系統(tǒng)軟件設(shè)計(jì)

● 系統(tǒng)軟件流程設(shè)計(jì)

軟件設(shè)計(jì)是整個(gè)系統(tǒng)設(shè)計(jì)的重點(diǎn)和難點(diǎn)。采用模塊化編程的方法,首先按照功能將程序分成幾個(gè)協(xié)議模塊。每一個(gè)模塊放在一個(gè)獨(dú)立的文件中,最后由主程序模塊調(diào)用各功能模塊實(shí)現(xiàn)協(xié)調(diào)工作。

系統(tǒng)工作流程圖如圖5所示。上電后首先開(kāi)始初始化工作,包括單片機(jī)及其外圍電路,串口和以太網(wǎng)控制芯片的初始化。接著檢查是否有串口發(fā)送或接收中斷標(biāo)志,如有轉(zhuǎn)入相應(yīng)子程序進(jìn)行串行數(shù)據(jù)處理。本系統(tǒng)中,僅有串口使用中斷的操作方式,網(wǎng)絡(luò)芯片的控制采用查詢方式。單片機(jī)的處理速度有限,如果響應(yīng)以太網(wǎng)控制芯片中斷將花費(fèi)大量中斷處理時(shí)間,這勢(shì)必會(huì)影響通信數(shù)據(jù)的丟失或超時(shí)。因此用查詢法控制網(wǎng)絡(luò)芯片,并將TCP/IP協(xié)議的處理放到主程序順序循環(huán)中,以犧牲響應(yīng)時(shí)間來(lái)保證系統(tǒng)穩(wěn)定可靠工作。當(dāng)然這種可能造成響應(yīng)不及時(shí),出現(xiàn)緩沖區(qū)溢出或丟包的現(xiàn)象,這可以通過(guò)TCP協(xié)議來(lái)保證可靠傳輸。當(dāng)需要向網(wǎng)絡(luò)發(fā)送數(shù)據(jù)時(shí),首先檢查發(fā)送緩沖區(qū)是否為空,如果沒(méi)有數(shù)據(jù)幀正在發(fā)送,則依次對(duì)數(shù)據(jù)進(jìn)行TCP和IP打包后,將數(shù)據(jù)交給以太網(wǎng)控制芯片發(fā)出。網(wǎng)絡(luò)數(shù)據(jù)的接收過(guò)程則與發(fā)送相反。

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

Dynamic C編譯器是專門為Z-World 產(chǎn)品創(chuàng)建的軟件平臺(tái),它使得在功能強(qiáng)大的嵌入式系統(tǒng)上進(jìn)行實(shí)時(shí)編程易于實(shí)現(xiàn)。利用Dynamic C提供的TCP/IP協(xié)議包,用戶可以很容易建立起TCP/IP通信。當(dāng)通信建立以后,就可以在此基礎(chǔ)上進(jìn)行后續(xù)的功能擴(kuò)展及代碼編制與優(yōu)化,從而極大地提高了開(kāi)發(fā)進(jìn)度。以下是用Dynamic C實(shí)現(xiàn)TCP/IP協(xié)議通信的程序主體框架。程序中起始宏定義為默認(rèn)IP配置信息;“memmap”語(yǔ)句可以使程序在芯片中運(yùn)行時(shí),如同在擴(kuò)展代碼窗口下被編譯;“use”語(yǔ)句使編譯器按照庫(kù)文件配置編譯代碼。

#define TCPCONFIG 1
#memmap xmem
#use dcrtcp.lib
main() {
sock_ init();
for( ; ; ) {
tcp_ tick(NULL) ; }
}

其中sock_init()和tcp_tick()都是TCP/IP函數(shù)庫(kù)的基本函數(shù),前者為初始化TCP/IP協(xié)議棧函數(shù),使協(xié)議棧開(kāi)始處理入棧數(shù)據(jù)幀;后者主要實(shí)現(xiàn)支持后臺(tái)處理的最新信息與測(cè)試TCP 套接字狀態(tài)兩個(gè)用途。

● UDP協(xié)議的實(shí)現(xiàn)

UDP協(xié)議是傳輸層協(xié)議之一,使用IP作為網(wǎng)絡(luò)層協(xié)議,為應(yīng)用程序發(fā)送和接收數(shù)據(jù)報(bào)。但它提供無(wú)鏈接服務(wù),是不可靠傳輸。因此UDP報(bào)文主要用于需要實(shí)時(shí)數(shù)據(jù)傳輸?shù)那闆r,一次傳輸少量數(shù)據(jù)。在某些對(duì)實(shí)時(shí)性要求較高的場(chǎng)合,利用UDP報(bào)文進(jìn)行傳輸是必要的,但需采用一些可靠性方案,防止漏傳、誤傳現(xiàn)象的發(fā)生。

數(shù)據(jù)報(bào)套接字(socket)是通信的基礎(chǔ),是支持TCP/IP協(xié)議的網(wǎng)絡(luò)通信的基本操作單元。它是網(wǎng)絡(luò)通信過(guò)程中端點(diǎn)的抽象表示,包括網(wǎng)絡(luò)通信必須的五種信息:鏈接使用的協(xié)議,本地主機(jī)的IP地址,本地進(jìn)程的協(xié)議端口,遠(yuǎn)地主機(jī)的IP地址,遠(yuǎn)地進(jìn)程的協(xié)議端口。UDP協(xié)議支持?jǐn)?shù)據(jù)報(bào)套接字。這種套接字可以采用客戶/服務(wù)器模式,以全雙工方式工作,接收、發(fā)送可同時(shí)進(jìn)行,但并不保證數(shù)據(jù)傳輸?shù)目煽啃浴⒂行蛐院蜔o(wú)重復(fù)性。

● HTTP協(xié)議的實(shí)現(xiàn)

HTTP服務(wù)器可使HTML(超文本鏈接標(biāo)示語(yǔ)言)頁(yè)面,如Web頁(yè)和其它文件為客戶端所使用。在Dynamic C中,HTTP協(xié)議由http.Lib來(lái)負(fù)責(zé)實(shí)現(xiàn)。HTTP服務(wù)器實(shí)現(xiàn)的主體框架如下:

# define TCPCONFIG 1
# memmap xmem
#use“dcrtcp.lib”
#use“http.lib”
main() {
sock_init();
http_init();
tcp_reserveport(80);
while (1) {
http_handler(); }
}

在以上基礎(chǔ)上,可以根據(jù)自己的需要在程序框架上添加構(gòu)成WebServer的所有其它動(dòng)態(tài)或靜態(tài)元素(無(wú)論是否符合HTML標(biāo)準(zhǔn))。

結(jié)論:本設(shè)計(jì)中以Rabbit 2000為主控芯片,嵌入TCP/IP協(xié)議棧,實(shí)現(xiàn)了家庭網(wǎng)關(guān)的基本功能,完成了家庭內(nèi)部局域網(wǎng)與Internet的對(duì)接與信息交互。在此基礎(chǔ)上仍有提高其協(xié)議轉(zhuǎn)換性能的措施,如增加TCP協(xié)議中對(duì)滑動(dòng)窗口協(xié)議的支持及嵌入式系統(tǒng)網(wǎng)絡(luò)管理功能的加強(qiáng)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉