遠(yuǎn)程智能家電控制系統(tǒng)的研究與設(shè)計(jì)_第1頁(yè)
遠(yuǎn)程智能家電控制系統(tǒng)的研究與設(shè)計(jì)_第2頁(yè)
遠(yuǎn)程智能家電控制系統(tǒng)的研究與設(shè)計(jì)_第3頁(yè)
遠(yuǎn)程智能家電控制系統(tǒng)的研究與設(shè)計(jì)_第4頁(yè)
遠(yuǎn)程智能家電控制系統(tǒng)的研究與設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩35頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

目錄TOC\o"1-3"\h\u5445摘要 232491第1章緒論 4198971.1智能家電的含義 424971.2智能家電的主要功能 5146571.3智能家電的特點(diǎn) 5105351.4智能家電的開(kāi)展現(xiàn)狀 688831.5智能家電遠(yuǎn)程控制系統(tǒng)的設(shè)計(jì)目標(biāo) 7197191.6論文的組織結(jié)構(gòu) 8289451.7本章小結(jié) 89238第2章系統(tǒng)總體設(shè)計(jì) 8217722.1基于電力載波PLC通迅技術(shù) 8117182.2基于藍(lán)牙通訊技術(shù) 9173312.3基于internet技術(shù)的智能家電控制 9145362.4基于IP 968252.5本章小結(jié) 1314719第3章電路硬件設(shè)計(jì) 1344293.1電源電路 13108503.2復(fù)位電路 1413693.3時(shí)鐘模塊 15109473.4網(wǎng)卡接口模塊 15237513.5顯卡接口電路 17205813.6聲卡接口電路 18182323.7通用I/O口電路 19250023.8本章小結(jié) 2031171第四章系統(tǒng)設(shè)計(jì) 2037404.1嵌入式操作系統(tǒng)概述 20159544.1.1良好的軟件兼容性 2049624.1.2硬件支持能力強(qiáng) 2168584.1.3強(qiáng)大的網(wǎng)絡(luò)通信功能 2159494.1.4穩(wěn)健的實(shí)時(shí)性支持 21139694.1.5豐富的多媒體支持 21298214.1.6強(qiáng)大的開(kāi)發(fā)工具 2164504.1.7強(qiáng)大的內(nèi)存管理、進(jìn)程調(diào)度和中斷響應(yīng)能力 22146084.2嵌入式Linux驅(qū)動(dòng)編寫及應(yīng)用程序的開(kāi)發(fā) 23294884.2.1驅(qū)動(dòng)程序編寫 23278004.3IP原理概述 28271944.4IP應(yīng)用程序開(kāi)發(fā) 29205274.4.1撥號(hào)盤的實(shí)現(xiàn)原理 29277614.4.2語(yǔ)音功能的實(shí)現(xiàn)原理 30115794.5串口通信的實(shí)現(xiàn) 31272234.6效勞器端的控制軟件原理與設(shè)計(jì) 32133224.7本章小結(jié) 355523結(jié)論 3612289參考文獻(xiàn) 3729384致謝 38摘要傳統(tǒng)的家電采用各自獨(dú)立的工作模式,不同家電之間無(wú)法通信,這樣就不能有效地安排各種家電協(xié)同工作,容易造成浪費(fèi)。同時(shí)它們無(wú)法自動(dòng)獲取外界的信息,人們無(wú)法對(duì)其進(jìn)行遠(yuǎn)程操作,難以滿足現(xiàn)代生活的需求。所以開(kāi)發(fā)智能化的家電及其控制系統(tǒng)己成為當(dāng)前的研究熱點(diǎn)。傳統(tǒng)的只能進(jìn)行語(yǔ)音通信,它存在利用率低、功能有限和平安性不好等缺點(diǎn)。近年來(lái),以ARM為代表的高性能專用微處理器的出現(xiàn),以及Linux、WindowsCE等操作系統(tǒng)的完善,使嵌入式技術(shù)迅速開(kāi)展,這為智能IP的研發(fā)提供了軟硬件根底?,F(xiàn)階段家庭網(wǎng)關(guān)接入互聯(lián)網(wǎng)的方式主要為有線接入,因?yàn)檫@種方式網(wǎng)絡(luò)性能比無(wú)線隱定,延時(shí)性相對(duì)要小,用它來(lái)遠(yuǎn)程控制智能家電比無(wú)線網(wǎng)要平安可靠。要實(shí)現(xiàn)智能家電的網(wǎng)絡(luò)化,如果采用PC機(jī)進(jìn)行直接進(jìn)行控制,或者讓每臺(tái)家電接入網(wǎng)絡(luò),這樣本錢很高,不利于一般家庭的普及。為此,筆者采用基于S3C2410芯片、WindowsCE4.2嵌入式操作系統(tǒng)的IP作為家電的控制中心,智能家電采用S3C2410ARM芯片和linux2.4操作系統(tǒng)。各個(gè)智能家電與口采用串口進(jìn)行通信,IP采用網(wǎng)口與因特網(wǎng)通信。這樣可以大量的降低本錢,而且通信方式比PLC和藍(lán)牙通訊技術(shù)更平安可靠。本文以IP與智能家電互聯(lián)為切入點(diǎn),結(jié)合ARM、嵌入式LINUX和網(wǎng)絡(luò)技術(shù),設(shè)計(jì)出一種較為完善的IP與智能家電的控制系統(tǒng)。采用這種方式,使智能家電集電腦、電信和消費(fèi)類電子產(chǎn)品的特征于一體,讓家電具有信息的獲取、加工、傳遞等功能,提供全方位的信息交換,幫助家電與外部保持信息交流暢通,這樣可以優(yōu)化人們的生活方式,節(jié)約能源費(fèi)用資金。關(guān)鍵詞:智能家電;遙操作;IP;嵌入式系統(tǒng)AbstractThetraditionalelectricalappliancesworkindependently.theyareunabletocommunicateeachother,sowecannotarrangeeachkindofelectricalappliancestowork’’sdifficulttosatisfythemodernlife.thereforethedevelopmentofintelligentelectricalappliancesandtheircontrolsystemhavebecomecurrentresearchhotspot.Thetraditionaltelephonecanonlycommunicatebyvoice.Ithassomanyshortcomingssuchasthelowusefactor,thelimitedfunction,thebadsecurityandsoon.Inrecentyears,theembeddedtechnologyexpendsrapidly,withtheappearanceofhighperformancespecial-purposemicroprocessorsuchasARM,aswellasLinuxoperatingsystem’sandWindowsCEoperatingsystem’sconsummation.ThishasprovidedthesoftwareandhardwarefoundationfortheintelligentIPphone’sreseachanddevelopment.Atpresent,thefamilygatewaysconnectsInternetismainlybywiredway,becausethismannerisstable,haslesstimedelay,isreliablecomparewithwirlessnetwork.Torealizetheintelligentelectricalapplicances’network,ifweusePCtocontrolintelligentelectricalapplicances,orleteachelectricalapplianceconnectsnetworkdirectly,itmustcostsomuch.soitishardtopopularizethesystemforthegeneralfamily.Keywords:intelligentElectricalApplianceRemoteOperationIPphoneembeddedsystem第1章緒論1.1智能家電的含義智能家電,也叫智能家居,與智能家電含義近似的有家庭自動(dòng)化(HomeAutomation)、電子家庭(ElecctronicHome、E-home)、數(shù)字家園(DigitalFamily)、家庭網(wǎng)絡(luò)(HomeNet/Networksforome)、網(wǎng)絡(luò)家居(NetworkHome)、智能家庭/建筑(IntelligentHome/Building),在我國(guó)香港和臺(tái)灣等地區(qū),還有數(shù)碼家庭、數(shù)碼家居等稱法。智能家居是以各種家電設(shè)備為根底平臺(tái),綜合網(wǎng)絡(luò)通信、信息家電、設(shè)備自動(dòng)化等技術(shù),將系統(tǒng)、結(jié)構(gòu)、效勞、管理集成為一體的高效、平安、便利、環(huán)保的居住環(huán)境,而智能家電遠(yuǎn)程控制系統(tǒng)即是實(shí)現(xiàn)其的一個(gè)重要手段。智能家電遠(yuǎn)程控制系統(tǒng)可以定義為一個(gè)利用先進(jìn)的計(jì)算機(jī)、網(wǎng)絡(luò)通信、自動(dòng)控制等技術(shù),將與家庭生活有關(guān)的各種應(yīng)用子系統(tǒng)有機(jī)地結(jié)合在一起,通過(guò)綜合的家庭范圍內(nèi)的本地管理與控制以及來(lái)自家庭之外的遠(yuǎn)程管理與控制,特別是基于互聯(lián)網(wǎng)的遠(yuǎn)程管理與控制,讓家庭生活更舒適、有效和便捷。與普通家電相比,智能家電不僅具有傳統(tǒng)功能,還能提供舒適、高效、便捷、具有高度人性化的控制方式;將一批原來(lái)死板的家居設(shè)備結(jié)合在一起轉(zhuǎn)變?yōu)榫哂小爸腔郇暤墓ぞ?提供全方位的信息交換功能,實(shí)現(xiàn)家電控制的實(shí)時(shí)暢通,優(yōu)化人們的生活方式,幫助人們有效地安排時(shí)間,增強(qiáng)家庭生活的高效性,并為家庭節(jié)省能源費(fèi)用等。1.2智能家電的主要功能智能家電并不是單指某一個(gè)家電,而應(yīng)是一個(gè)技術(shù)系統(tǒng),隨著人類應(yīng)用需求和家電智能化的不斷開(kāi)展,其內(nèi)容將會(huì)更加豐富,根據(jù)實(shí)際應(yīng)用環(huán)境的不同智能家電的功能也會(huì)有所差異,但一般應(yīng)具備以下根本功能:⑴通信功能—包括、網(wǎng)絡(luò)、遠(yuǎn)程控制/報(bào)警等。⑵消費(fèi)電子產(chǎn)品的智能控制—例如可以自動(dòng)控制加熱時(shí)間、加熱溫度的微波爐,可以自動(dòng)調(diào)節(jié)溫度、濕度的智能空調(diào),可以根據(jù)指令自動(dòng)搜索電視節(jié)目并攝錄的電視機(jī)/錄像機(jī)等。⑶交互式智能控制—可以通過(guò)語(yǔ)音識(shí)別技術(shù)實(shí)現(xiàn)智能家電的聲控功能;通過(guò)各種主動(dòng)式傳感器(如溫度、聲音、動(dòng)作等)實(shí)現(xiàn)智能家電的主動(dòng)性動(dòng)作響應(yīng)。用戶還可以自己定義不同場(chǎng)景不同智能家電的不同響應(yīng)。例如你可以在里告訴智能家居控制器:“晚上5點(diǎn)把花園的燈翻開(kāi),并把空調(diào)設(shè)定到25度。〞⑷安防控制功能—包括門禁系統(tǒng)、火災(zāi)自動(dòng)報(bào)警、煤氣泄漏、漏電、漏水等。⑸三表(四表)遠(yuǎn)程抄收系統(tǒng)。⑹健康與醫(yī)療功能—包括健康設(shè)備監(jiān)控、遠(yuǎn)程診療、老人/病人異常監(jiān)護(hù)等。1.3智能家電的特點(diǎn)與傳統(tǒng)的家用電器產(chǎn)品相比,智能家電具有如下特點(diǎn):⑴網(wǎng)絡(luò)化功能:各種智能家電可以通過(guò)家庭局域網(wǎng)連接到一起,還可以通過(guò)家庭網(wǎng)關(guān)接口同制造商的效勞站點(diǎn)相連,甚至可以同Internet相連,實(shí)現(xiàn)信息共享。⑵智能化:智能家電可以根據(jù)周圍環(huán)境的不同自動(dòng)做出響應(yīng),不需要人為干預(yù)。例如,智能空調(diào)可以根據(jù)不同的季節(jié)、氣候及用戶所在地域,自動(dòng)調(diào)整其工作狀態(tài)以到達(dá)最正確效果。⑶開(kāi)放性、兼容性:由于用戶家庭的智能家電可能來(lái)自不同的廠商,智能家電平臺(tái)必須具有開(kāi)發(fā)性和兼容性。⑷節(jié)能化:智能家電可以根據(jù)周圍環(huán)境自動(dòng)調(diào)整工作時(shí)間、工作狀態(tài),從而實(shí)現(xiàn)節(jié)能。⑸易用性:由于復(fù)雜的控制操作流程已由內(nèi)嵌在智能家電中的控制器解決,因此用戶只需了解非常簡(jiǎn)單的操作。1.4智能家電的開(kāi)展現(xiàn)狀1994年一家新加坡公司在國(guó)內(nèi)銷售的名為“萬(wàn)智能〞的多媒體電腦可算是國(guó)內(nèi)第一個(gè)提及的智能家電的雛形,它通過(guò)電視卡,將電腦和電視結(jié)合起來(lái),也算是一種不錯(cuò)的創(chuàng)意。其后很長(zhǎng)的一段時(shí)間內(nèi),智能家電的產(chǎn)品都沒(méi)有太多的概念突破和產(chǎn)品突破,直到1998年,微軟公司推出了“維納斯〞方案,才掀起了新一輪的高潮?!熬S納斯〞是一種集成軟硬件的機(jī)頂盒裝置,它通過(guò)廉價(jià)的費(fèi)用,使電視成為電腦的顯示器,從而實(shí)現(xiàn)電腦的互聯(lián)網(wǎng)應(yīng)用功能。但是由于機(jī)頂盒并不能適應(yīng)國(guó)內(nèi)市場(chǎng)的應(yīng)用需要,雖然在微軟的強(qiáng)大影響下,電腦廠商也拿出了積極配合的姿態(tài),但在機(jī)頂盒裝置熱鬧一陣之后,就趨于勢(shì)微,并沒(méi)有形成微軟期望的市場(chǎng)規(guī)模。但是在這一連串的市場(chǎng)運(yùn)作之后,直接地影響了家用電腦的大規(guī)模普及。而隨著家用電腦的開(kāi)始普及,家用電腦的應(yīng)用迫切需要擴(kuò)展。在這個(gè)時(shí)候,長(zhǎng)期觀察IT行業(yè)的家電企業(yè)開(kāi)始介入電腦制造業(yè),海信、TCL、廈華等企業(yè)開(kāi)始大規(guī)模地進(jìn)入IT行業(yè),在家電領(lǐng)域重量級(jí)廠商的影響下,智能家電的概念逐步清晰起來(lái),智能家電的研究和開(kāi)發(fā)出現(xiàn)了新的高潮。而從事家庭網(wǎng)絡(luò)研究的組織有很多,影響比擬大的有ITU-T、IEEE、ETSI、OSGI、OMA、DSLForum、DLNA、ECHONET等國(guó)際或國(guó)外標(biāo)準(zhǔn)化組織,國(guó)內(nèi)有中國(guó)通信標(biāo)準(zhǔn)化協(xié)會(huì)(CCSA)、閃聯(lián)聯(lián)盟、e家佳聯(lián)盟等。每個(gè)組織都有一系列企業(yè)作為其技術(shù)支持隊(duì)伍,每個(gè)組織制定的家庭網(wǎng)絡(luò)的標(biāo)準(zhǔn)側(cè)重點(diǎn)不同,它們既重合又交叉,既互補(bǔ)又競(jìng)爭(zhēng)。所有的標(biāo)準(zhǔn)都是從其成員的利益出發(fā),標(biāo)準(zhǔn)技術(shù)的一般要求、性能指標(biāo),并不涉及具體的實(shí)現(xiàn)技術(shù)。其中的e家佳所提出的標(biāo)準(zhǔn)涵蓋了家庭網(wǎng)絡(luò)主干網(wǎng)通信協(xié)議標(biāo)準(zhǔn)、家庭網(wǎng)絡(luò)系統(tǒng)體系結(jié)構(gòu)及參考模型、家庭網(wǎng)絡(luò)控制子網(wǎng)通訊協(xié)議標(biāo)準(zhǔn)、家庭網(wǎng)絡(luò)控制子網(wǎng)一致性測(cè)試標(biāo)準(zhǔn)等一系列共六項(xiàng)標(biāo)準(zhǔn)。國(guó)內(nèi)外的公開(kāi)相關(guān)論文、報(bào)告文獻(xiàn)也不少,如有基于UC/OS的嵌入式系統(tǒng),基于UCLINUX的嵌入式家庭網(wǎng)關(guān)等,其特點(diǎn)是功能較單一,價(jià)格較低廉,不能適應(yīng)新的業(yè)務(wù)需要,目前投入使用相關(guān)產(chǎn)品主要如下:〔1)NEYWELL公司的智能家庭產(chǎn)品:它可以通過(guò)設(shè)在家庭內(nèi)的控制面板、或連網(wǎng)的計(jì)算機(jī)來(lái)監(jiān)控智能家居的報(bào)警系統(tǒng)、照明系統(tǒng)、智能家電和智能調(diào)溫設(shè)備?!?)STARGATE的家居自動(dòng)化系統(tǒng):它可集中控制照明、報(bào)警、室溫調(diào)節(jié)、家庭影院、視頻/音頻、語(yǔ)音郵件、監(jiān)控、灌溉等系統(tǒng),還允許通過(guò)網(wǎng)絡(luò)更新控制程序,無(wú)需通過(guò)更換EPROM就可完成軟件的升級(jí)。〔3)NI智能家居系統(tǒng):主要有三類產(chǎn)品,OMNILT,OMNI,OMNIPRO,分別適用于普通家庭、辦公室及高級(jí)住宅。可用于協(xié)調(diào)控制這些地方的照明、調(diào)溫、保安等系統(tǒng)。所有OMNI產(chǎn)品都配有內(nèi)置的串口,可用來(lái)與Internet連接。用戶可借助于公司的軟件Web-Link,通過(guò)網(wǎng)絡(luò)對(duì)控制器進(jìn)行設(shè)置?!?)ALDELUXE智能家居系統(tǒng):它在PC機(jī)上集成了家居系統(tǒng)的所有控制,包括電燈、設(shè)備、空調(diào)系統(tǒng)、、保安系統(tǒng)、家庭影院和互聯(lián)網(wǎng)系統(tǒng)等。用戶可以在任意地點(diǎn)通過(guò)聲控實(shí)現(xiàn)對(duì)這些系統(tǒng)的控制。由于公司是通過(guò)房間里現(xiàn)有的電源線從PC機(jī)上傳送命令,用戶不需要對(duì)房間進(jìn)行重新布線?!?)Vantage家居自動(dòng)化系統(tǒng):用戶可以控制照明、保安、音頻/視頻、制冷/保暖、窗簾、水泵、噴泉和汽車等系統(tǒng)。1.5智能家電遠(yuǎn)程控制系統(tǒng)的設(shè)計(jì)目標(biāo)隨著網(wǎng)絡(luò)技術(shù)和智能家用電器設(shè)備的飛速開(kāi)展,越來(lái)越多的家庭對(duì)于家居生活已經(jīng)不滿足于簡(jiǎn)單的豪華裝飾,而轉(zhuǎn)向更加便捷的智能家電體系,要求建立能實(shí)現(xiàn)所有電器設(shè)備互連互通的家庭網(wǎng)絡(luò),并通過(guò)家庭網(wǎng)關(guān)將所有家電設(shè)備連接到Internet的效勞,從而實(shí)現(xiàn)隨時(shí)隨地的遠(yuǎn)程控制。其中家庭網(wǎng)關(guān)是整個(gè)家庭網(wǎng)絡(luò)的核心,它主要實(shí)現(xiàn)Internet接入、遠(yuǎn)程控制,以及連接家庭內(nèi)部異構(gòu)子網(wǎng)的功能,是當(dāng)前網(wǎng)絡(luò)技術(shù)研究的熱點(diǎn)之一,而智能家電是電子行業(yè)正在重點(diǎn)研究、積極推廣的、面向即將到來(lái)的巨大市場(chǎng)的新一代家用電器產(chǎn)品。本設(shè)計(jì)正是立足于兩者的結(jié)合,是面向最新熱點(diǎn)技術(shù)的、有著巨大市場(chǎng)潛力的實(shí)用型應(yīng)用開(kāi)發(fā)課題。1.6論文的組織結(jié)構(gòu)第1章主要介紹遠(yuǎn)程智能家電控制系統(tǒng)研究與設(shè)計(jì)的含義、功能、特點(diǎn)及開(kāi)展?fàn)顩r。第2章主要是比擬傳輸控制方案之后,對(duì)基于IP的遠(yuǎn)程智能家電控制系統(tǒng)的整體構(gòu)思。第3章是完成基于S3C2410ARM芯片的整體硬件設(shè)計(jì)。第4章是實(shí)現(xiàn)嵌入式系統(tǒng)的軟件設(shè)計(jì),包括以LINUX操作系統(tǒng)對(duì)S3C2410ARM芯片驅(qū)動(dòng)程序的開(kāi)發(fā),和用WINCE操作系統(tǒng)對(duì)IP軟件設(shè)計(jì)和效勞器軟件設(shè)計(jì)程序的開(kāi)發(fā),其后是結(jié)論、文獻(xiàn)等。1.7本章小結(jié)本章的作用是對(duì)智能家電的詮釋,使讀者對(duì)智能家電有一定的了解,對(duì)智能家電的未來(lái)有自己的看法。通過(guò)此章,并希望讀者對(duì)智能家電的開(kāi)展給予關(guān)注和支持。第2章系統(tǒng)總體設(shè)計(jì)目前傳輸控制家電的方式有很多,比方:紅外手遙控傳輸、GSM傳輸控制等。其主流的數(shù)據(jù)傳輸技術(shù)有:2.1基于電力載波PLC通迅技術(shù)所謂PLC,即電力線通信,是指利用電力線傳輸數(shù)據(jù)和語(yǔ)音信號(hào)的一種通信方式。該技術(shù)是把載有信息的高頻信號(hào)加載于電流,然后用電線傳輸,接受信息的調(diào)制解調(diào)器再把高頻從電流中別離出來(lái),并傳送到計(jì)算機(jī)或,以實(shí)現(xiàn)信息傳遞。該技術(shù)在不需要重新布線的根底上,在現(xiàn)有電線上實(shí)現(xiàn)數(shù)據(jù)、語(yǔ)音和視頻等多業(yè)務(wù)的承載但是,這種方案對(duì)于主要是針對(duì)北美電網(wǎng)設(shè)計(jì)的,由于我國(guó)電力網(wǎng),環(huán)境惡劣,PLC通信對(duì)電網(wǎng)產(chǎn)生干擾,我國(guó)一些地方電力部門禁止使用PLc通信。2.2基于藍(lán)牙通訊技術(shù)藍(lán)牙通訊是一種低功率短距離的無(wú)線連接技術(shù),其設(shè)計(jì)初衷就是將智能移動(dòng)與筆記本電腦、掌上電腦以及各種數(shù)字化的信息設(shè)備都能不再用電纜,而是用一種小型的、低本錢的無(wú)線通信設(shè)備連接起來(lái),進(jìn)而形成一種個(gè)人身邊的網(wǎng)絡(luò),使得在其范圍之內(nèi)各種信息化的移動(dòng)便攜設(shè)備都能無(wú)縫地實(shí)現(xiàn)資源共享?,F(xiàn)在國(guó)外有學(xué)者把它引入到智能家電控制中。藍(lán)牙通訊最大傳輸距離為10米,傳輸距離有很大的限制,而且不能在多房間進(jìn)行傳輸。使用藍(lán)牙技術(shù)進(jìn)行通信的設(shè)備,分為“主叫方〞和“受取方〞。主叫方只能同時(shí)與7臺(tái)受取方通信,在家電數(shù)量眾多的現(xiàn)代家庭中,這一限制影響了家庭控制網(wǎng)絡(luò)的構(gòu)建。2.3基于internet技術(shù)的智能家電控制Internet技術(shù)的成熟,使得很多研究者致力于將該技術(shù)引入到智能家電遙操作領(lǐng)域。但因特網(wǎng)不是實(shí)時(shí)通信網(wǎng),它采用的分組交換方式存在“時(shí)延〞問(wèn)題?!皶r(shí)延〞是從信息發(fā)出到信息收取經(jīng)過(guò)的時(shí)間。因特網(wǎng)傳輸?shù)臑閿?shù)字編碼信號(hào),要把數(shù)字化的信號(hào)分組、打包,還要用存儲(chǔ)—轉(zhuǎn)發(fā)的路由方式傳送;在接收端還要解碼、復(fù)原等,因此增加了很多如編碼、解碼、緩存等時(shí)延。如果遇到網(wǎng)路擁擠的情況,等待轉(zhuǎn)發(fā)可能導(dǎo)致隨機(jī)時(shí)延,甚至還會(huì)造成數(shù)據(jù)分組喪失。傳統(tǒng)的控制系統(tǒng)中,監(jiān)督命令和反響信號(hào)都是基于時(shí)問(wèn)變量的。而基于因特網(wǎng)的智能家電遙操作系統(tǒng)的控制端和被控制端很難在時(shí)間上保持同步,這樣會(huì)引起整個(gè)系統(tǒng)的不穩(wěn)定,如果不加改良地引入到智能家電控制領(lǐng)域,將存在一定的平安隱患。2.4基于IPIP,就是在internet網(wǎng)上通過(guò)TCP/IP協(xié)議或UDP協(xié)議傳送語(yǔ)音信息的系統(tǒng)。最初的IP技術(shù),只是計(jì)算機(jī)對(duì)計(jì)算機(jī)的語(yǔ)音傳輸技術(shù)。雙方用戶都通過(guò)internet聯(lián)網(wǎng),這種方法同時(shí)要具備IP軟件、音頻卡、麥克風(fēng)和揚(yáng)聲器等設(shè)備。比方我們常用的有:微軟公司的MSN、騰訊公司的QQ等。雖然能通話,但PC機(jī)體積大、價(jià)格高,因此使用范圍很單一,還算不上是真正的IP。近年來(lái),美國(guó)一些大公司推出了用因特網(wǎng)傳送國(guó)際長(zhǎng)途的業(yè)務(wù),實(shí)現(xiàn)了從普通機(jī)到普通機(jī)的IP。IP已經(jīng)通過(guò)網(wǎng)關(guān)把因特網(wǎng)與傳統(tǒng)網(wǎng)聯(lián)系起來(lái),用戶可以和普通用戶一樣,只要有機(jī)就能打IP,而通話費(fèi)用遠(yuǎn)比普通的低。以一種以嵌入式IP為控制中心的智能家電網(wǎng)絡(luò)接入因特網(wǎng)的方案,采用串口對(duì)各智能家電進(jìn)行網(wǎng)絡(luò)互聯(lián),這樣能通過(guò)IP對(duì)控制節(jié)點(diǎn)進(jìn)行遠(yuǎn)程控制。同時(shí)各智能家電能通過(guò)IP這個(gè)控制中實(shí)現(xiàn)協(xié)同工作。對(duì)智能家居來(lái)說(shuō),其意義在于采用就可以隨時(shí)隨地監(jiān)控家電的運(yùn)行情況。雖然家庭子網(wǎng)串口通信的方式增加了少量布線,但增強(qiáng)了其隱定性,防止了大量無(wú)線設(shè)備的使用,從而降低了本錢,而且也便于智能家電使用統(tǒng)一的硬件接口方案,對(duì)各種不同的家電只要修改相應(yīng)的控制軟件就可以滿足實(shí)際需求。盡管我國(guó)智能家居在有關(guān)核心技術(shù)、獨(dú)立產(chǎn)品等多方面落后于興旺國(guó)家,但由于國(guó)內(nèi)外都處于探索階段,尚未形成壟斷,同時(shí)國(guó)內(nèi)又有潛在的龐大的消費(fèi)群體。因此,通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)和嵌入式技術(shù)把IP與智能家電有機(jī)結(jié)合,在后PC時(shí)代IT產(chǎn)業(yè)開(kāi)展中有廣闊的開(kāi)展前景?;谝陨细鞣桨傅膬?yōu)缺點(diǎn)中,本論文以基于IP傳輸控制的方向深入。以ARMS3C2410芯片IP硬件設(shè)計(jì)的原因是:S3C2410是16/32位RISC處理器,面向高性價(jià)比、低功耗的手持設(shè)備。S3C2410有S3C2410X和S3C2410A兩個(gè)型號(hào),A型是X型的改良型,具有更好的性能和更低的功耗。傳統(tǒng)的CISC復(fù)雜指令集計(jì)算機(jī)結(jié)構(gòu)處理器設(shè)計(jì)復(fù)雜,指令集使用率不高。而RISC精簡(jiǎn)指令集計(jì)算機(jī)優(yōu)先選取使用頻率最高的簡(jiǎn)單指令,防止復(fù)雜指令,將指令長(zhǎng)度固定,指令格式和尋地方式種類減少。ARM處理器是基于RISC技術(shù)的,它共有37個(gè)32位存放器,被分為假設(shè)干個(gè)組,這些存放器包括:31個(gè)通用存放器,包括程序計(jì)數(shù)器。6個(gè)32位狀態(tài)存放器,用以標(biāo)識(shí)CPU的工作狀態(tài)及程序的運(yùn)行狀態(tài)。同時(shí),ARM處理器又有7種不同的處理器模式,在每一種處理器模式下均有一組相應(yīng)的存放器與之對(duì)應(yīng)。在所有的存放器中,有些是在7種處理器模式下共用同一個(gè)物理存放器,而有些存放器那么是在不同的處理器模式下有不同的物理存放器。在任意一種處理器模式下,可訪問(wèn)的存放器包括15個(gè)通用存放器(R0~R14)、一至兩個(gè)狀態(tài)存放器和程序計(jì)數(shù)器。S3C2410芯片是三星公司推出的32位RISC處理器,適用于手持設(shè)備,數(shù)字多媒體播放設(shè)備等具有低價(jià)、低功耗和高性能等特點(diǎn)。采用ARM920T內(nèi)核,具有以下特點(diǎn):5級(jí)整數(shù)流水線,提供1.1MIPs/MHz的哈佛結(jié)構(gòu),支持32位ARM指令集和16位Thumb指令集,支持32位的高速AMBA總線接口,全性能的MMU,支持windowsCE、Linux等多種主流嵌入式操作系統(tǒng),支持?jǐn)?shù)據(jù)cache和指令Cache?;贏RM920T內(nèi)核的優(yōu)點(diǎn)是,支持ARM和Thumb指令集,芯片內(nèi)集成豐富外設(shè)。ARM920T采用了MMU,AMBA總線和Harvard高速緩存體系結(jié)構(gòu),該結(jié)構(gòu)具有獨(dú)立的16KB指令Cache和16KB數(shù)據(jù)Cache,每個(gè)Cache都是由8字長(zhǎng)的行組成的。S3C2410A提供一組完整的系統(tǒng)外圍設(shè)備接口,從而大大減少了整個(gè)系統(tǒng)的本錢,省去了為系統(tǒng)配置額外器件的開(kāi)銷。S3C2410A集成的片上功能包括:(1)內(nèi)核電壓1.8V/2.0V,存儲(chǔ)器電壓3.3V,外部I/O電壓3.3V;(2)具有16KB的I-Cache和16KB的D-Cache以及MMU;(3)外部存儲(chǔ)器控制器〔SDRAM控制和片選邏輯〕;(4)LCD控制器〔最大支持4K彩色STN和256K彩色TFT〕提供1通道LCD專用DMA;(5)4通道DMA并有外部請(qǐng)求引腳端;(6)3通道UART〔IrDAl.0,16字節(jié)TxFIFO和16字節(jié)RxFIFO〕/2通道SPI;(7)1通道多主設(shè)I2C總線和1通道I2S總線控制器;(8)版本1.0SD主接口和2.11兼容版MMC卡協(xié)議;(9)2個(gè)USB主設(shè)接口/1個(gè)USB從設(shè)接口〔版本1.1〕;(10)4通道PWM定時(shí)器和1通道內(nèi)部定時(shí)器;(11)看門狗定時(shí)器;(12)117位通用I/O口和24通道外部中斷源;(13)電源控制模式有正常、慢速、空閑和電源關(guān)斷4種模式;(14)8通道10位ADC和觸摸屏接口;(15)具有日歷功能的RTC;(16)使用PLL的片上時(shí)鐘發(fā)生器。下面是S3C2410內(nèi)核的ARM920T的內(nèi)部原理圖:ARM920T原理圖S3C2410ARM內(nèi)部結(jié)構(gòu)圖:S3C2410ARM結(jié)構(gòu)圖下面是系統(tǒng)電路與外圍接口電路總體設(shè)計(jì)框圖:觸摸屏觸摸屏S3C2410ARM串行口S3C2410ARM串行口系統(tǒng)時(shí)鐘系統(tǒng)時(shí)鐘.網(wǎng)卡接口網(wǎng)卡接口電源電路電源電路聲卡接口聲卡接口復(fù)位電路復(fù)位電路通用IO口通用IO口2.5本章小結(jié)該章結(jié)意在選出最正確的遠(yuǎn)程數(shù)據(jù)傳輸控制方式。比擬幾種傳輸控制方式的優(yōu)缺點(diǎn),綜合考慮再三,最終決定以S3C2410ARM芯片設(shè)計(jì)的IP做為遠(yuǎn)程控制方式,實(shí)現(xiàn)了低本錢、多功能、平安便捷的遠(yuǎn)程智能家電。第3章電路硬件設(shè)計(jì)在運(yùn)行操作系統(tǒng)之前,需要對(duì)系統(tǒng)的軟硬件資源進(jìn)行合理的配置與管理。這個(gè)功能是由BootLoader來(lái)完成的。在嵌入式系統(tǒng)中,BootLoader的作用與Pc機(jī)上的BIOS類似,通過(guò)BootlLoader可以完成對(duì)系統(tǒng)板上的主要部件如CPU、FLASH、SDRAM、串行口等進(jìn)行初始化,從而為操作系統(tǒng)的運(yùn)行創(chuàng)造良好的環(huán)境。同時(shí)也可以下載文件到系統(tǒng)板、對(duì)FLASH進(jìn)行擦除與編程。B00tLoader作為系統(tǒng)復(fù)位或上電后首先運(yùn)行的代碼,存放在起始物理地址為oX0開(kāi)始的FLASH存儲(chǔ)器中。本系統(tǒng)采用SST公司的SST39VFl60l型線性NORFLASH存儲(chǔ)BootLoader,由并NGcCSO片選信號(hào)用于啟動(dòng)引導(dǎo)。這樣當(dāng)系統(tǒng)啟動(dòng)時(shí)Ox0地址程序開(kāi)始運(yùn)行。由于IP中運(yùn)行的操作系統(tǒng)為WINCE,整個(gè)系統(tǒng)鏡像文件大約30M,因此采用三星公司K9F1208非線性NANDFLAsH芯片存儲(chǔ),由ARM的NANDFLASH控制器對(duì)它進(jìn)行讀寫操作。系統(tǒng)時(shí)鐘采用外部12MHz晶振,RTC采用32768Hz晶振。3.1電源電路由于ARM2410需要1.8V和3.3V兩組電源,所以采用sPXlll7M3.1.8型LDO芯片產(chǎn)生穩(wěn)壓電源。核心板需要擴(kuò)展板提供一組3.3V電源,1.8V內(nèi)核電源那么由核心板上的LDO芯片產(chǎn)生,電路如圖:3.2復(fù)位電路在核心板的復(fù)位電路中使用了MAX809TD作為電源監(jiān)控復(fù)位芯片,以提高系統(tǒng)的可靠性,電路原理如圖:3.3時(shí)鐘模塊采用MPLL產(chǎn)生最大266MHz操作MCU所需的時(shí)鐘,UPLL產(chǎn)生操作USBHOST和USBDEVIEE的時(shí)鐘,本設(shè)計(jì)中選擇外接12MHz無(wú)源晶振,作為系統(tǒng)MPLL和USBUPLL的基準(zhǔn)輸入時(shí)鐘總線時(shí)鐘,再經(jīng)內(nèi)部PLL最終產(chǎn)生MCU的工作時(shí)鐘。RTC通過(guò)外接的32.768KHz晶振工作,用于計(jì)時(shí)或者與時(shí)間相關(guān)的功能,在沒(méi)安裝外接電池的情況下,斷電再上電后需要對(duì)時(shí)間進(jìn)行重新設(shè)置。原理如下圖:3.4網(wǎng)卡接口模塊硬件上要完成DM9000與ARM芯片S3C2410三大總線連接,以及DM9000與網(wǎng)絡(luò)變壓器YL18-2050S〔或YL37-1107S〕+以太網(wǎng)水晶接頭RJ45的連接。基于ARM嵌入式系統(tǒng)和以太網(wǎng)的接口如圖:嵌入式系統(tǒng)嵌入式系統(tǒng)數(shù)據(jù)數(shù)據(jù)以太網(wǎng)控制MD9000S3C2410以太網(wǎng)控制MD9000S3C2410地址RJ45地址RJ45DM9000與S3C2410連接:實(shí)現(xiàn)DM9000與S3C2410連接,必須對(duì)兩者間的數(shù)據(jù)、地址、控制三大總線進(jìn)行連接和轉(zhuǎn)換。S3C2410是32位微處理器,有32根地址線,支持4GB存儲(chǔ)空間。其中0—40000000的1G空間被分為8塊128M空間,分別由NGCS0—NGCS7片選。DM9000為16位以太網(wǎng)控制芯片,S3C2410與DM9000的連接方法如下:D15~D0RSTADDR2D15~D0RSTADDR2IORIOWNGCS3EINT9S3C2410SD15~SD0PWRSTCMDX1IORX2IOWAENINTDM9000對(duì)DM9000讀寫操作,首先對(duì)DM9000正確尋址。AEN(地址允許)是輸入引腳片選信號(hào)。SA4~SA9是地址總線4~9位,當(dāng)AEN低且SA9和SA8高,而SA7、SA6、SA5、SA4為低時(shí),那么DM9000被選中。DM9000默認(rèn)I/0基地址為300H。CMD引腳用于設(shè)置COMMAND模式,CMD為高時(shí),選擇數(shù)據(jù)端口。CMD為低時(shí),選地址端口。數(shù)據(jù)端口和地址端口的地址碼由下式?jīng)Q定:DM9000地址端口=高位片選地址+300H+0H,DM9000數(shù)據(jù)端口=高位片選地址+300H+4H,其中,高位片選地S3C2410的NGCS3提供,即為:0X100000000H。實(shí)際設(shè)計(jì)電路下列圖,其中WAIT為讀寫等待信號(hào)。由于在S3C2410中以太網(wǎng)卡的中斷為9號(hào)中斷,EINT9為中斷信號(hào)。RESET為網(wǎng)卡芯片重啟信號(hào)。25MHzOSCILLATOR為芯片提供25MHz的工作頻率,(在本圖中省去了S3C2410芯片)SD0~SD15數(shù)據(jù)總線與S3C2410的數(shù)據(jù)總線連接。3.5顯卡接口電路S3C2410內(nèi)置有液晶屏控制器,可以支持最大256K色TFT彩色液晶屏、最大4K色STN彩色液晶屏??紤]到本系統(tǒng)的應(yīng)用領(lǐng)域?qū)D像顯示的要求相對(duì)較高,故采用8英寸640X480TFT液晶屏(型號(hào)為L(zhǎng)Q080V3DG01)。LQ080V3DG01要求其電源電壓典型值為3.3V/5V,并且LCD數(shù)據(jù)和控制信號(hào)的高電平輸入電壓最小值為2.3V,所以本系統(tǒng)直接使用S3C2410的控制口線與它相連,而沒(méi)有設(shè)置電平轉(zhuǎn)換電路。具體的結(jié)構(gòu)原理如圖:R4~R0G5~0B4~B0CKENABR4~R0G5~0B4~B0CKENABHSYNCVSYNCLQ080V3DG01VD23~VD19VD15~VD11VD7~VD3VCLKVDENHSYNCVSYNCS3C2410其電路圖如下:背光驅(qū)動(dòng)電路LQ080V3DG0l液晶屏使用冷陰極背光燈管,需要高壓交流電源供電。本系統(tǒng)采用CXA_L10A驅(qū)動(dòng)模塊作為驅(qū)動(dòng)電路,如下圖:3.6聲卡接口電路S3C2410A內(nèi)置有ⅡS音頻接口,只需要外接一個(gè)數(shù)字音頻編解碼器即可實(shí)現(xiàn)音頻的輸入輸出。本系統(tǒng)中采用的數(shù)字音頻編解碼器為UDAl341TS,其連接原理圖:揚(yáng)聲器WSVOUTLDATA1VOUTRBCKVINLL3TATAVINR揚(yáng)聲器WSVOUTLDATA1VOUTRBCKVINLL3TATAVINRL3MODEL3LOCKSYSCLKUDAl341TSIISLCLKIISD0IISCLKTOUT3TOUT2TCLK0CDCLKS3C2410麥克麥克其電路實(shí)圖如下:3.7通用I/O口電路在智能家電端,控制智能家電采用ARM芯片的通用I/O口,共使用8個(gè)I/O口,各口的功能定義如下:I/O口l、2用于控制家電的電源開(kāi)關(guān),I/O口3用于控制家電的J下逆運(yùn)行模式,I/O口4、5、6的8種組合根據(jù)不同的家電實(shí)現(xiàn)不同的控制,I/O口7、8用于獲取家電的運(yùn)行狀態(tài),各用于輸出的接口使用PNP三極管作驅(qū)動(dòng),下列圖所示:3.8本章小結(jié)此章完成了遠(yuǎn)程智能家電的整體硬件電路圖的設(shè)計(jì),從電源電路到網(wǎng)卡電路,再到顯卡電路,最后的聲卡電路,無(wú)不凝聚了筆者的匠心和智慧。如設(shè)計(jì)有不妥之處或錯(cuò)誤的地方,還望讀者諒解。第四章系統(tǒng)設(shè)計(jì)4.1嵌入式操作系統(tǒng)概述嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為根底,軟件硬件可裁剪,對(duì)系統(tǒng)功能、可靠性、本錢、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。它的目的性或針對(duì)性很強(qiáng),具有軟件代碼小、高度自動(dòng)化、響應(yīng)速度快等特點(diǎn)。目前嵌入式操作系統(tǒng),有VXWORK、WINCE和Linux等。Linux是源代碼開(kāi)放的操作系統(tǒng),支持不同的配置,能方便的移植到多種體系結(jié)構(gòu)的嵌入式處理器中且本錢低。WINCE操作系的優(yōu)點(diǎn)有:4.1.1良好的軟件兼容性WINCE繼承了傳統(tǒng)的windows圖形界面,使用與windows平臺(tái)同樣的應(yīng)用程序接口函數(shù),具有win32API子集,使用同樣的界面風(fēng)格。因此,絕大多數(shù)的應(yīng)用軟件只需簡(jiǎn)單的修改和移植就可以在該平臺(tái)上繼續(xù)使用。在WINCE中,除了一些根本的windows通用控件以外,還有一些專門設(shè)計(jì)的控件。4.1.2硬件支持能力強(qiáng)WINCE并非是專為單一裝置設(shè)計(jì)的,它具有高度的靈活性和可定制性,廣泛應(yīng)用于消費(fèi)電子產(chǎn)品、工業(yè)自動(dòng)控制和醫(yī)療及科研設(shè)備等。支持多類硬件外圍設(shè)備,如鍵盤、鼠標(biāo)設(shè)備、觸摸面板、串行口、以太網(wǎng)卡、調(diào)制解調(diào)器、USB設(shè)備等。它與處理器無(wú)關(guān),能在多種不同框架的嵌入式處理器上運(yùn)行。4.1.3強(qiáng)大的網(wǎng)絡(luò)通信功能WINCE提供通過(guò)各種傳輸介質(zhì)進(jìn)行網(wǎng)絡(luò)連接和通信,用來(lái)通信的硬件有串口、網(wǎng)絡(luò)接口、紅外接口等。串口通信采用的是異步收發(fā)器UART,它們首先把并行的數(shù)據(jù)按位串行,然后再通過(guò)數(shù)據(jù)線逐位收發(fā),到達(dá)目標(biāo)機(jī)后再把數(shù)據(jù)據(jù)并行化。WINCE提供了SLIP/PPP協(xié)議,通過(guò)些協(xié)議可利用串口建立TCP/IP網(wǎng)絡(luò)連接。它內(nèi)置了TCP/IP協(xié)議棧,提供了一套開(kāi)放的、支持多種協(xié)議的WINDOWSSOCKET網(wǎng)絡(luò)編程接口標(biāo)準(zhǔn)。4.1.4穩(wěn)健的實(shí)時(shí)性支持實(shí)時(shí)性是指能夠在限定時(shí)間內(nèi)執(zhí)行完規(guī)定的任務(wù),并對(duì)外部的異步事件做出反響的能力。WINCE它支持嵌套中斷,允許更高優(yōu)先級(jí)的中斷首先得到響應(yīng),而不是等待低級(jí)別的中斷效勞線程完成。4.1.5豐富的多媒體支持WINCE提供豐富的多媒體技術(shù),在語(yǔ)音方面,它支持波形音頻,通過(guò)波形音頻API,應(yīng)用程序可支持波形I/O,可以對(duì)音頻I/0設(shè)備進(jìn)行控制?;贒IRECTXAPI和WINDOWSMedia的技術(shù)可以提供高性能的視頻、音頻和流式多媒體效勞。因?yàn)樵贗P端有較的多媒體編程,所以采用WINCE操作系統(tǒng)可以減少程序設(shè)計(jì)的復(fù)雜性。4.1.6強(qiáng)大的開(kāi)發(fā)工具與其它嵌入式系統(tǒng)相比,WINCE為開(kāi)發(fā)人員提供了友好的開(kāi)發(fā)工具,這些開(kāi)發(fā)工具可幫助開(kāi)發(fā)人員簡(jiǎn)化開(kāi)發(fā)流程并提高開(kāi)發(fā)效率。由于WINCE是模塊化的,可以針對(duì)不同的應(yīng)用平臺(tái)進(jìn)行定制。使用滿足平臺(tái)系統(tǒng)需求的最小軟件模塊和組件集合來(lái)設(shè)計(jì)嵌入式系統(tǒng)平臺(tái),可節(jié)省內(nèi)存,并提高操作系統(tǒng)的性能。系統(tǒng)定制采用PLATFORMBULIDER集成開(kāi)發(fā)環(huán)境。它包括適用于所有WINCE支持的處理器的交叉編譯器,提供了所有進(jìn)行設(shè)計(jì)、創(chuàng)立、編譯、測(cè)試和調(diào)試WINCE操作系統(tǒng)平臺(tái)的工具。它運(yùn)行在桌面WINDOWS下,開(kāi)發(fā)人員可以通過(guò)交互式環(huán)境來(lái)設(shè)計(jì)和定制內(nèi)核、選擇系統(tǒng)特性,然后進(jìn)行編譯和調(diào)試。同時(shí),開(kāi)發(fā)人員還可以利用PLATFORMBUILDER來(lái)進(jìn)行驅(qū)動(dòng)程序開(kāi)發(fā)和應(yīng)用程序工程的開(kāi)發(fā)等。EmbeddedVisualC++是WINCE程序主流可視化開(kāi)發(fā)工具。EVC和VC在界面、語(yǔ)法和開(kāi)發(fā)流程上根本上是一樣的,熟悉vc的程序員很快就會(huì)使用EVC進(jìn)行開(kāi)發(fā)。EVC還提供了模擬器來(lái)模仿目標(biāo)硬件進(jìn)行開(kāi)發(fā)和調(diào)試,方便了編程人員,加快了開(kāi)發(fā)進(jìn)度。4.1.7強(qiáng)大的內(nèi)存管理、進(jìn)程調(diào)度和中斷響應(yīng)能力WINCE有很好的內(nèi)存管理功能,其中物理頁(yè)面管理負(fù)責(zé)跟蹤物理內(nèi)存的使用情況,為換頁(yè)管理抓取有效的物理頁(yè)面以及釋放不使用的物理頁(yè)面等;虛存管理主要負(fù)責(zé)系統(tǒng)的地址映射以及換頁(yè)管理,系統(tǒng)中32位的虛擬地址提供4G的虛擬空間;堆管理主要管理動(dòng)態(tài)內(nèi)存釋放、回收等,以支持程序的動(dòng)態(tài)數(shù)據(jù)結(jié)構(gòu)。WINCE有很好的進(jìn)程調(diào)度功能,是搶占式的多任務(wù)實(shí)時(shí)操作系統(tǒng),它允許多達(dá)32個(gè)進(jìn)程同時(shí)運(yùn)行。進(jìn)程數(shù)目的限制可以有效緩解內(nèi)存系統(tǒng)的壓力,系統(tǒng)作地址映射的時(shí)候,只需要映射所限的個(gè)數(shù)。線程是進(jìn)程的一個(gè)實(shí)體,是CPU調(diào)度和分配的根本單位。在WINCE下,一個(gè)進(jìn)程包括一個(gè)或多個(gè)線程,且提供多級(jí)別的調(diào)度能力,線程的調(diào)度采用優(yōu)先級(jí)基于時(shí)間片輪轉(zhuǎn)方法。每個(gè)線程在同樣長(zhǎng)度的時(shí)間片內(nèi)運(yùn)行,該時(shí)間片是可調(diào)的??蛇\(yùn)行的線程處于可運(yùn)行的隊(duì)列中,每個(gè)優(yōu)先級(jí)都對(duì)應(yīng)一個(gè)隊(duì)列,最多有256個(gè)。一個(gè)線程的時(shí)間片運(yùn)行完后,系統(tǒng)調(diào)度策略把它安排到相應(yīng)優(yōu)先級(jí)隊(duì)列的末尾,然后再讓優(yōu)先級(jí)最高的隊(duì)列的第一個(gè)線程運(yùn)行,這就保證了同一優(yōu)先級(jí)的線程獲得平等的運(yùn)行權(quán)。引入線程之后,系統(tǒng)開(kāi)銷減少,兩個(gè)線程之間的切換所花費(fèi)的時(shí)間少,而且由于同一個(gè)進(jìn)程內(nèi)的線程共享進(jìn)程所擁有的資源,之間的通信不需要額外的機(jī)制,簡(jiǎn)化了通信方式,加快了通信速度。WINCE有很好的中斷響應(yīng)能力,各種外設(shè)通過(guò)硬件中斷和WINCE的核心通信。系統(tǒng)發(fā)現(xiàn)中斷以后,處理的過(guò)程分為兩個(gè)局部:核心態(tài)中斷例程ISR和用戶態(tài)中斷例程IST。ISR一般要求短小精悍,效率要求嚴(yán)格,通常只響應(yīng)設(shè)備并返回一個(gè)中斷標(biāo)識(shí)給操作系統(tǒng)。WINCE支持靜態(tài)ISR和可安裝ISR。靜態(tài)ISR只能靜態(tài)編譯進(jìn)核心,運(yùn)行時(shí)不能改變,與IST通信是單向的,由ISR到IST。靜態(tài)ISR支持嵌套中斷,并且使用核心堆棧??砂惭bISR那么由內(nèi)核管理程序從DLL中動(dòng)態(tài)加載,和IST通信是雙向的。多個(gè)ISR可以與同一個(gè)中斷請(qǐng)求相關(guān)聯(lián),系統(tǒng)按照加載驅(qū)動(dòng)的順序依次調(diào)度。在可安裝IsR中,共享內(nèi)存的使用比擬靈活。用戶線程IST處理中斷請(qǐng)求,核心接到IsR傳給自己的中斷標(biāo)識(shí)之后發(fā)出一個(gè)中斷事件,激活一個(gè)在該事件等待隊(duì)列上的IST,調(diào)度器就會(huì)調(diào)度這個(gè)線程工作,處理中斷事務(wù)。4.2嵌入式Linux驅(qū)動(dòng)編寫及應(yīng)用程序的開(kāi)發(fā)本系統(tǒng)智能家電與IP通信采用的是串行口,因此需要串行口驅(qū)動(dòng)。Linux已經(jīng)提供了標(biāo)準(zhǔn)設(shè)備的驅(qū)動(dòng),在配置內(nèi)核時(shí)選擇內(nèi)核對(duì)串行口的支持。而智能家電端采用的是通用I/O口進(jìn)行控制,它屬于非標(biāo)準(zhǔn)接口,所以必須由設(shè)計(jì)人員根據(jù)接口定義設(shè)計(jì)驅(qū)動(dòng)程序。4.2.1驅(qū)動(dòng)程序編寫在Linux操作系統(tǒng)中,通過(guò)設(shè)備驅(qū)動(dòng)程序?yàn)閼?yīng)用程序提供了統(tǒng)一抽象的接口,它界于內(nèi)核和設(shè)備硬件之間,而內(nèi)核能提供一系列稱為設(shè)備入口點(diǎn)的函數(shù)接口,當(dāng)內(nèi)核接到用戶系統(tǒng)調(diào)用的時(shí)候?qū)⒂眠@些函數(shù),驅(qū)動(dòng)程序的主要任務(wù)就是實(shí)現(xiàn)這些入口點(diǎn)函數(shù),其驅(qū)動(dòng)程序架構(gòu)圖如下:應(yīng)用程序應(yīng)用程序系統(tǒng)調(diào)用函數(shù)設(shè)備文件設(shè)備文件內(nèi)接核設(shè)備號(hào)口設(shè)備驅(qū)動(dòng)程序設(shè)備驅(qū)動(dòng)程序操作函數(shù)的實(shí)現(xiàn)硬件設(shè)備硬件設(shè)備其驅(qū)動(dòng)程序?qū)崿F(xiàn)的源代碼:#defineDEVICE—NAME〞am2410一control〞//模塊聲明MODULE_LICENSE(“Proprietary〞);MODULE_DESCRIPTION(〞usethisdevicetocontrolelectricequipment〞);MODULE_SUPPORTEDDEVICE(“Linux2.4&ARM24lO〞);MODULE—AUTHOR(〞Deng—yi—dong〞);//定義一下數(shù)組,方便程序設(shè)計(jì)staticunsigned1ongarm2410—control[]={GPIO_E1l,GPIO_E12,GPIO-H4,GPIO_H6,GPIO_H10,GPIO_F4,GPIO_H9,GPl0_B0};staticintarm2419_control_read(structfile*filp,char*buf,size_tCount,10ff_t*offset)//read實(shí)現(xiàn)方{structport{boolcon6;boo1con7;);portportl;protl.con6=*arm2410_control[6];protl.con7=*arm2410_control[7];Char*p=(char*)&portl;Copy_to_user(buf,p,sizeof(portl));)staticintarm2410_control_ioctl(structinode,*inode,structfile*filp,unsignedintcmd,unsigned1ongarg)//ioctl實(shí)現(xiàn)方法{inti=O;switch(cmd)//以電風(fēng)扇為例的操作方法,不同的家電操作方法不一樣{case0x00;fot(i=O;i<8;i++){Write_gpio_bit(arm2410—control[i],0);}caseOx20;fot(i=2;i<8;i++){write_gpio_bit(arm2410_control[i],0);}Write_gpio_bit(arm2410_control[0],0);Write_gpi0_bit(arm12410_control[1],1);caseOx42;fot(i=1;i<4;i++){Write_gpio_bit(arm2410_control[i],0);}Write_gpio_bit(arm2410_control[5],1);Write_gpio_bit(arm2410_control[6],0);caseOx44;fot(i=l;i<3;i++){write_gpio_bit(arm2410_control[i],0);}Write_gpio_bit(arm2419_control[0],1);Write_gpi0_bit(arm2410_contr01[4],1);Write_gpio_bit(arm2410_control[5],O);Write_gpio_bit(arm2410_control[6],O);caseOx46;fot(i=l;i<3;i++){Write_gpio_bit(arm24l0_control[i],O);)Write_gpio_bit(arm2410_control[0],1;Write_gpio_bit(arm2410—control[4],1);Write_gpio_bit(arm2410—control[5],1);write_gpio_bit(arIn24lO_control[6],O);caseOx48;fot(i=4;i<6;i++){Write_gpio_bit(arm2410_control[i],O);}write_gpio_bit(arm2410_control[0],1);Write_gpio_bit(arm2410—contr01[3],1);Write_gpio_bit(arm2410—control[1],O);Write_gpio_bit(arm2410—control[2],O);default:return—EINVAL:}}staticintarm2410—control—open(structinode*inode,structfile*filp)//open實(shí)現(xiàn)方法{inti;for(i=O;i<6;i++){Set_gpio_ctrl(arm2410_control[i]|GPIO_PULLUP_EN|GPIO_MODE_0UT);Write_gpio_bit(arm2410_contrOL[i],O);}for(i=6;i<8;i++){Set_gpio_ctrl(arm2410_control[i]|GPIO_PULLUP-EN|GPIO_MODE_IN);}MOD_INC_USE_COUNT;printk(KERN_INFODEVICE_NAME〞;opened.\n〞);return0;{staticintarm2410-control_release(structinode*inode,structfile*filp)//release實(shí)現(xiàn)方法{MOD_DEC_USE_C0UNT;printk(KERN—INFODEVICE—NAME〞:released.\n〞):returnO:}//操作接口定義staticstructfile_operationsarm2410_control_fops={Owner;THIS_MODULE,Read;arm2410_contr01_read,Ioctl;arm2410_control_ioctl,Open;arm2410_contr01_open,Release;arm2410_control_release,};staticdevfs_handle_tdevfs_handle;//創(chuàng)立設(shè)備文件系統(tǒng)句柄Staticint_initarm2410_control_init(void)//注冊(cè)設(shè)備{DECFS_handle=devfs_register(NULL,DEVICE_NAME,DEVFS_FL_AUT0_DEVNUM,0,0,s_IFCHR|s_IRUSR|s_IWUSR,&arm2410_control_fops,NULL);printk(KERN_INFODEVICE_NAME’:InitializeoK.\n〞);return0;arm24l0_control_exit(void)//注消設(shè)備{DEVFS_unregister(devfs_handle);}Module_init(arm2410_control_init)://模塊初始化Module_exit(arm2410_control_exit);//退出模塊4.3IP原理概述本軟件實(shí)現(xiàn)4大功能,即語(yǔ)音通信、語(yǔ)音留言、短信以及遠(yuǎn)程智能家電控制。本系統(tǒng)的根本工作原理為:首先構(gòu)建一個(gè)效勞器,它擁有固定的公網(wǎng)IP地址。效勞器中建有一個(gè)數(shù)據(jù)庫(kù),它包含IP的號(hào)碼與其IP地址的映射關(guān)系。在IP啟動(dòng)時(shí),它首先向效勞器發(fā)送數(shù)據(jù),將其號(hào)碼與其當(dāng)前的IP地址一起發(fā)送給效勞器,效勞器將這個(gè)數(shù)據(jù)存入它的數(shù)據(jù)庫(kù)中,這樣就形成了一個(gè)IP號(hào)碼與IP地址動(dòng)態(tài)對(duì)應(yīng)表。撥打時(shí),它首先訪問(wèn)效勞器,并向效勞器發(fā)送IP地址查詢請(qǐng)求,效勞器根據(jù)請(qǐng)求方要求,在數(shù)據(jù)庫(kù)中查找被叫方的IP,如果能找到,那么以數(shù)據(jù)包的形式發(fā)送給請(qǐng)求的IP,這樣主叫方就可獲得被叫方的IP地址,雙方就可以進(jìn)行通信了。遠(yuǎn)程對(duì)智能家電進(jìn)行控制的原理是,首先采用上述方法進(jìn)行網(wǎng)絡(luò)連接,然后一方IP發(fā)送命令,經(jīng)Internet網(wǎng)傳輸?shù)綄?duì)方后,對(duì)方IP通串口與智能家電通信智能家電按照接收到的命令通過(guò)處理器的通用I/O口控制相關(guān)部件,從而實(shí)現(xiàn)遙操作。同樣通過(guò)網(wǎng)絡(luò)也可獲得遠(yuǎn)程家電的運(yùn)行狀態(tài)相關(guān)信息。4.4IP應(yīng)用程序開(kāi)發(fā)基于WINCE的應(yīng)用軟件的工具有多種,可以采用.NET來(lái)開(kāi)發(fā),也可采用EVC來(lái)開(kāi)發(fā)。由于本系統(tǒng)要求有較高的運(yùn)行效率,應(yīng)選擇EVC作為開(kāi)發(fā)工具,它生的代碼比擬優(yōu)化,占用內(nèi)存空間小,執(zhí)行速度快。先安裝EVC開(kāi)發(fā)平臺(tái),然后再安裝剛剛導(dǎo)出的SDK,因?yàn)閷?dǎo)出SDK是針對(duì)特定硬件平臺(tái)下IPPhone的軟件開(kāi)發(fā)包,安裝了該軟件包的EVC開(kāi)發(fā)平臺(tái)就可以用來(lái)開(kāi)發(fā)目標(biāo)平臺(tái)的IP應(yīng)用軟件,需完成以下功能:4.4.1撥號(hào)盤的實(shí)現(xiàn)原理VoidCPhoneDlg;;Onbutton(){Inta;Cstringlpstr=“〞;a=GetDlgItemText(IDC_phone_number,lpstr);Phone_number=lpstr+’1’;If(phone_number.GetLength()>11){AfxMessageBox(_T(“號(hào)碼超過(guò)11位,請(qǐng)重新輸入!〞));}ElseSetDlgItemText(IDC_phone_number,phone_number);}

}其它號(hào)碼按鈕的消息響應(yīng)函數(shù)類同。當(dāng)輸入滿11位號(hào)碼后,就可以啟動(dòng)語(yǔ)音、短信等相應(yīng)功能鍵。4.4.2語(yǔ)音功能的實(shí)現(xiàn)原理實(shí)現(xiàn)語(yǔ)音通信的根本原理是,口端將硬件接口采集到的聲音數(shù)據(jù)通過(guò)套節(jié)字socket發(fā)送到另外一端,另外一端根據(jù)得到的聲音數(shù)據(jù)調(diào)用硬件接口播放聲音。為了方便程序設(shè)計(jì)將其分為幾個(gè)模塊,效勞器socket模塊,負(fù)責(zé)接收連接,它完成對(duì)socket的發(fā)送數(shù)據(jù)和接收數(shù)據(jù)進(jìn)行消息處理;客戶端socket模塊,負(fù)責(zé)接收/發(fā)送數(shù)據(jù),并完成對(duì)socket的發(fā)送數(shù)據(jù)和接收數(shù)據(jù)進(jìn)行消息處理;聲卡數(shù)據(jù)的采集和播放模塊,采用相關(guān)波形音頻API函數(shù),實(shí)現(xiàn)采集聲音和播放聲音數(shù)據(jù)。音頻數(shù)據(jù)處理由類sound現(xiàn)實(shí),它使用相關(guān)聲卡API,負(fù)責(zé)采集聲音數(shù)據(jù)和播放聲音數(shù)據(jù),它的源代碼為:#include<mmsystem.h>#defineBUFFER—LENGTH1024classCPhoneDlg;classCSound{Public;CPhoneDlg*dlg;WAVEFORMATEXⅢ一soundFormat;HwAVEINm-hWaveIn;HwAVEOUTm_hWaveout;WAVE肋RmpWaveHdrIn[3];wAVEHDRⅡLpWaveHdrout[3];charITLcBufferIn[BUFFER—LENGTH];charⅡLcBufferOut[BUFFER—LENGTH];Public;voidInit(CPhoneDlg*dlg);//初始化函數(shù)voidRecord();//開(kāi)始錄音函數(shù)voidPlay();//播放聲音函數(shù)voidStopRecord();//停止錄音函數(shù)voidstopPlay();//停止播入函數(shù)voidFreeRecordBuffer();//釋放錄音的緩沖區(qū)voidFreePlayBuffer();//釋放播放的緩沖區(qū)CSound();Virtual~CSound();4.5串口通信的實(shí)現(xiàn)為了提高產(chǎn)品的通用性和可擴(kuò)展性,智能家電采用ARM2410芯片作為其智能控制局部。智能家電根本工作原理為:主叫方IP通過(guò)網(wǎng)絡(luò)把控制命令發(fā)送到被叫方IP,被叫方把數(shù)據(jù)通過(guò)串行口發(fā)送到智能家電,智能家電根據(jù)命令改變ARM的通用IO口的電平。不同的家電定義了一組不同的操作協(xié)議,智能家電將根據(jù)電平的變化做出相應(yīng)的響應(yīng),從而實(shí)了智能家電的遠(yuǎn)程控制。同時(shí)為了從遠(yuǎn)程獲得智能家電的運(yùn)行狀態(tài),可向智能家電發(fā)送信息獲取命令,智能家電根據(jù)命令讀取I/0口的電平,再將相關(guān)信息發(fā)送回主叫方IP。因?yàn)榇趯儆诼俣冉涌冢虼瞬闪硕嗑€程串口異步通信。其串口通信功能采用的是面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,其原代碼如下:classCSerial{Public;DCBm-dcb;//設(shè)備控制塊charfilename[5];//串口名charmode[sizeof(“baud=115200parity=Ndata=8stop=l〞)];//存貯mode命令HANDLEm_hCom;//串口句柄DwORDdwInQueue;//接收緩沖區(qū)大小DWORDdwOutQueue;//發(fā)送緩沖區(qū)大小charreadbuffer[100];//存放讀取數(shù)據(jù)的緩沖區(qū)charwritebuffer[100];//存放發(fā)送數(shù)據(jù)的緩沖區(qū)unsignedlongwritten_word_num;//寫入串口的字節(jié)數(shù)unsigned1ongread_Word_num;//讀入串口的字節(jié)數(shù)Public;voidSendData();//發(fā)送數(shù)據(jù)voidReceiveData();//接收數(shù)據(jù)b001SetSerial();//串口配置b001OpenSerial();//翻開(kāi)串口CSerial();virtual、CSerial();}4.6效勞器端的控制軟件原理與設(shè)計(jì)效勞器要完成的將各個(gè)IP的號(hào)碼與其口IP地址建立映射關(guān)系,其流程圖如圖:開(kāi)始開(kāi)始。初始化各模塊 初始化各模塊等待更新數(shù)據(jù)等待更新數(shù)據(jù)否啟動(dòng)定時(shí)器啟動(dòng)定時(shí)器更新記錄是更新記錄實(shí)現(xiàn)源代碼如下:record_temprev_tem;recordrecord_ipphone[10];//用于存放lO個(gè)用戶記錄DWORDWINAPICReceive::RecvProc(){SOCKETsock=socket(AF_INET,SOCK_STREAM,O);SOCKADDR_INaddr;addr.sin_family=AF_INET;addr.sin_port=htons(6000);Addr.sin_addr.S_un.S_addr=htonl(INADDR_ANY);intretval;retval=bind(sock,(SOCkADD*)&addr,sizeof(SockADDR));listen(sock,5);int1en=sizeof(SOCKADDR);Char*recvBuf=(char*)&rev_tem:intret;wh

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論