![智能家居控制系統(tǒng)的研究與設(shè)計(jì)_第1頁(yè)](http://file4.renrendoc.com/view3/M00/0C/26/wKhkFmYaKxKAd4VUAALdPvMLz_k557.jpg)
![智能家居控制系統(tǒng)的研究與設(shè)計(jì)_第2頁(yè)](http://file4.renrendoc.com/view3/M00/0C/26/wKhkFmYaKxKAd4VUAALdPvMLz_k5572.jpg)
![智能家居控制系統(tǒng)的研究與設(shè)計(jì)_第3頁(yè)](http://file4.renrendoc.com/view3/M00/0C/26/wKhkFmYaKxKAd4VUAALdPvMLz_k5573.jpg)
![智能家居控制系統(tǒng)的研究與設(shè)計(jì)_第4頁(yè)](http://file4.renrendoc.com/view3/M00/0C/26/wKhkFmYaKxKAd4VUAALdPvMLz_k5574.jpg)
![智能家居控制系統(tǒng)的研究與設(shè)計(jì)_第5頁(yè)](http://file4.renrendoc.com/view3/M00/0C/26/wKhkFmYaKxKAd4VUAALdPvMLz_k5575.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
學(xué)位論文原創(chuàng)性聲明和使用授權(quán)說(shuō)明原創(chuàng)性聲明本人鄭重聲明:所呈交的學(xué)位論文,是本人在導(dǎo)師指導(dǎo)下,獨(dú)立進(jìn)行研究工作所取得的研究成果。除文中已經(jīng)標(biāo)明引用的內(nèi)容外,本論文不包含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫過(guò)的研究成果。對(duì)本文的研究做出奉獻(xiàn)的個(gè)人和集體,均已在文中以明確方式標(biāo)明。本聲明的法律結(jié)果由本人承當(dāng)。學(xué)位論文作者簽名:日期:年月日學(xué)位論文版權(quán)使用授權(quán)書本學(xué)位論文作者完全了解學(xué)校有關(guān)保存、使用學(xué)位論文的規(guī)定,即:學(xué)校有權(quán)保存并向國(guó)家有關(guān)部門或機(jī)構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)湖北理工學(xué)院可以將本學(xué)位論文的全部或局部?jī)?nèi)容編入有關(guān)數(shù)據(jù)庫(kù)進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。學(xué)位論文作者簽名:指導(dǎo)教師簽名:日期:年月日日期:年月日摘要智能家居系統(tǒng)是一個(gè)綜合系統(tǒng),計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)通信技術(shù)、自控技術(shù)、傳感技術(shù)構(gòu)成了這個(gè)系統(tǒng)的根底,又需要環(huán)境、能源等其他領(lǐng)域的技術(shù)支持。家居系統(tǒng)要表達(dá)智能,關(guān)鍵是要到達(dá)自控,更要到達(dá)節(jié)約資源、環(huán)境友好和滿足不同用戶的使用需求。本文對(duì)通過(guò)嵌入式系統(tǒng)來(lái)實(shí)現(xiàn)智能家居進(jìn)行了討論。本文采用的是ARM9嵌入式處理器S3C2410。在此根底上進(jìn)行核心控制電路的設(shè)計(jì),分別設(shè)計(jì)完成了主控芯片電路、存儲(chǔ)電路以及電源電路。同時(shí)LCD接口、USB接口以及無(wú)線通信模塊等電路作為必不可少的局部,本文也給出了設(shè)計(jì)方案。另外還專門開發(fā)了針對(duì)煤氣泄漏的報(bào)警模塊。由于本設(shè)計(jì)需要用到交叉開發(fā)環(huán)境,所以安裝了微軟的WindowsCE.net4.2、PlatformBuilder4.2等軟件并自行開發(fā)了特定的WindowsCE系統(tǒng)內(nèi)核映像,把這些映像文件下載到目標(biāo)板上,并使用ActiveSync軟件進(jìn)行了開發(fā)板與PC的通信。在設(shè)計(jì)煤氣報(bào)警模塊時(shí)使用EmbeddedVisualC++4.0開發(fā)工具。關(guān)鍵詞:S3C2410;智能家居系統(tǒng);無(wú)線傳輸;WindowsCE.netAbstractSmarthomesystemisacomprehensiveandsystematicengineeringincludingtechnologiesofcomputer,network,automation,sensorsetc,andinvolvesecology,environment,energysourcesandevenmorefields.Inadditiontomeetthedemandofautomation,itmustbeenergyconservation,environmentalprotection,humanizationandindividuation.Itutilizedthe32-bitembeddedARMprocessorS3C2410asthecontrollingcoreofthesmarthomesysteminthisdissertation.Itdesignedcorecircuitofcontrollerindetail,includingS3C2410controllerchipcircuit,memorysystemcircuitandpowercircuit.Tomeetthedemandofglobalprojectdesign,itdesignedLCDinterfacecircuit,keyboardcircuit,wirelesstransmissionmodulecircuit.ItinstalledWindowsCE.net4.2onthePC,usedthetoolofPlatformBuilder4.2tocustomizetheBSPoftargetplatformandimageofWindowsCE,downloadedtheimageofkerneltotargetcomputerofARM9,utilizedthesoftwareofActivesSynctomakethetargetcomputercommunicatewithPCbytheUSBcable.ItusedthedevelopmenttoolofembeddedVisualC++4.0tocompletethesoftwaredesignofthemoduleofleakingandwarningofcoalgas.Keywords:S3C2410;SmartHomeSystem;Wirelesstransmission;WindowsCE.net目錄TOC\o"1-2"\h\u69951緒論1250591.1研究背景 1231351.2國(guó)內(nèi)外智能家居研究現(xiàn)狀及開展方向1174911.3研究的目的與意義393271.4研究要求486122智能家居控制系統(tǒng)的總體設(shè)計(jì)方案5110302.1家居控制系統(tǒng)功能5160002.2系統(tǒng)總體架構(gòu)設(shè)計(jì)572182.3硬件選型714702.4嵌入式系統(tǒng)的比擬886802.5基于WindowsCE.net的應(yīng)用程序開發(fā)過(guò)程12248123系統(tǒng)硬件設(shè)計(jì)13203573.1主機(jī)系統(tǒng)的硬件設(shè)計(jì)1336453.2分機(jī)系統(tǒng)的硬件設(shè)計(jì)19190053.3主分機(jī)通信模塊設(shè)計(jì)2499064系統(tǒng)軟件開發(fā)27136094.1搭建特定操作系統(tǒng)27242444.2應(yīng)用軟件開發(fā)33250735總結(jié)與體會(huì)397305參考文獻(xiàn)401緒論1.1研究背景在信息高速變革的二十一世紀(jì),人們對(duì)于居住環(huán)境的要求越來(lái)越高,智能住宅將越來(lái)越多的占據(jù)整個(gè)商品房市場(chǎng)份額。計(jì)算機(jī)技術(shù)、家電設(shè)備、平安監(jiān)控等領(lǐng)域的互相融合,使現(xiàn)代智能家居生活成為可能。其在中國(guó)的市場(chǎng)前景也是極其光明的?!爸悄芗揖印薄睸martHome〕,又稱智能住宅。通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)和嵌入式硬件,將家庭中的各種家電連接到一起。智能家居系統(tǒng)將給住戶提供更加方便的家電管理效勞。例如可以使多個(gè)設(shè)備形成聯(lián)動(dòng);同時(shí),系統(tǒng)內(nèi)部的家電可以交換信息,無(wú)需人的控制的即可按照不同情況分別運(yùn)行,在最大程度上帶給用戶方便、舒適、平安的使用體驗(yàn)。除了具有傳統(tǒng)的居住功能,智能家居還提供更為舒適平安的生活體驗(yàn),改變了人們的生活方式,使得時(shí)間的利用更為有效,同時(shí)大幅降低了資源本錢[1]。智能家居是一個(gè)最近熱門的概念,它少不了建筑藝術(shù)、生活理念與信息技術(shù)、電子技術(shù)的支撐。從長(zhǎng)遠(yuǎn)看,智能家居是未來(lái)住宅的必然趨勢(shì),同時(shí)還象征著一個(gè)國(guó)家的科技水平。但是,目前的這類產(chǎn)品根本上使用的是有線通信技術(shù),系統(tǒng)復(fù)雜、維護(hù)困難、本錢較高,不適應(yīng)未來(lái)的開展趨勢(shì)。在我國(guó),智能家居這一概念才剛開始興起,很多標(biāo)準(zhǔn)標(biāo)準(zhǔn)亟待制定。在對(duì)智能家居系統(tǒng)的研究中,我國(guó)應(yīng)該選擇一條符合國(guó)情同時(shí)又具有自主知識(shí)產(chǎn)權(quán)的道路。基于這種要求,我選定了智能家居這一研究課題。值得說(shuō)明的是,在家居系統(tǒng)中,智能化、信息化和自動(dòng)化是不同的概念。只要擁有能夠上網(wǎng)的端口,就可以說(shuō)到達(dá)了最低程度的家庭信息化,但遠(yuǎn)未到達(dá)智能化的要求;微波爐可以定時(shí)的烹制食物,空調(diào)可以預(yù)先翻開保持某一溫度,這就是所謂的家居自動(dòng)化。相比于智能化,信息化和自動(dòng)化是不可缺少的根底。智能化要求具有記錄、判別、控制、反應(yīng)等信息處理功能。家居的智能化應(yīng)富有人性化。智能家居就是以傳統(tǒng)的住宅為根底,集成了信息化家電、網(wǎng)絡(luò)通訊模塊、自動(dòng)控制系統(tǒng)等模塊,擁有效勞與管理功能的便捷、平安的居住環(huán)境。1.2國(guó)內(nèi)外智能家居研究現(xiàn)狀及開展方向國(guó)外智能家居的開展現(xiàn)狀國(guó)外對(duì)于智能家居系統(tǒng)的研究起步很早。1984年在美國(guó)誕生了世界上第一棟智能建筑,歐美對(duì)智能家居系統(tǒng)的研究到達(dá)了比擬高的水平。大量的研究和不斷的開展使得它在歐美得到了普及。再比方以新加坡為例,家庭智能化系統(tǒng)使得住戶可以輕松享受水電氣表的抄送、平安監(jiān)控管理、可視通話等多達(dá)11項(xiàng)功能。對(duì)于住宅智能化和智能住宅的關(guān)系,前者是后者的根底,而后者是前者的關(guān)鍵。至今國(guó)際上對(duì)于智能家居系統(tǒng)尚沒(méi)有公認(rèn)的標(biāo)準(zhǔn)。但是可以參考美國(guó)電子工業(yè)協(xié)會(huì)與1998年編制的《家庭自動(dòng)化系統(tǒng)與通信標(biāo)準(zhǔn)》?!凹彝ブ悄芑到y(tǒng)”已經(jīng)在新加坡普及,在美國(guó)使用智能家居系統(tǒng)的家庭到達(dá)了近5萬(wàn)戶。三星2003年也開始推廣其自己研發(fā)的同類產(chǎn)品,這個(gè)由機(jī)頂盒和網(wǎng)絡(luò)構(gòu)成的家居控制系統(tǒng),包括了自動(dòng)控制、家電管理、平安監(jiān)控以及娛樂(lè)通信這四大功能。國(guó)內(nèi)智能家居的研究現(xiàn)狀我國(guó)在智能家居系統(tǒng)方面的研究起步較晚,本文認(rèn)為中國(guó)的智能的智能家居系統(tǒng)應(yīng)該分為豪華型和經(jīng)濟(jì)型。經(jīng)濟(jì)型面向中低收入住戶,而豪華型那么是為高收入住戶準(zhǔn)備的高端產(chǎn)品。由于住宅是具有一次投資巨大、使用壽命較長(zhǎng)等特點(diǎn),因此,建造智能家居時(shí)應(yīng)該考慮到具有可升級(jí)性。按照技術(shù)開展的特點(diǎn),可以將住宅智能化定義為:依靠4C技術(shù)進(jìn)行有效的網(wǎng)絡(luò)傳輸,并同時(shí)集成了信息管理、平安監(jiān)控、住宅智能化等特點(diǎn),以智能化手段管理小區(qū),提供快捷、平安的效勞,并帶給用戶舒適便利的居住體驗(yàn)的家居環(huán)境。智能家居系統(tǒng)可以分為三個(gè)功能模塊:首先是家庭布線模塊;之后是具有較強(qiáng)兼容性的家居中央管理模塊:最后是寬帶互聯(lián)網(wǎng)和家庭控制網(wǎng)絡(luò)融合之后的控制功能模塊。1997年我國(guó)制定了《小康住宅電氣設(shè)計(jì)〔標(biāo)準(zhǔn)〕導(dǎo)那么》。《導(dǎo)那么》對(duì)于智能住宅的電氣設(shè)計(jì)提出了如下標(biāo)準(zhǔn):平安舒適的居住體驗(yàn),快捷的通訊,完整的信息管理功能。同時(shí)也對(duì)智能住宅在平安監(jiān)控和自控通信這兩個(gè)方面提出了以下標(biāo)準(zhǔn),分為“最終目標(biāo)”、“預(yù)計(jì)目標(biāo)”、“當(dāng)前目標(biāo)”[2]。對(duì)于智能家居的開展,要根據(jù)國(guó)情分成幾個(gè)階段并分別到達(dá)每一個(gè)階段的目標(biāo)。同時(shí)還要考慮到現(xiàn)在家庭中還有大量非自動(dòng)化家電的情況,擴(kuò)展這些家電的功能。但智能家居是一個(gè)復(fù)雜的系統(tǒng)工程,建立起完整的產(chǎn)業(yè)鏈還需要較長(zhǎng)的時(shí)間。智能家居開展的主要方向在技術(shù)層面上,智能家居是以計(jì)算機(jī)技術(shù)、自控技術(shù)、傳感技術(shù)等多種技術(shù)為根底,并與生態(tài)和能源等多個(gè)領(lǐng)域相關(guān)的系統(tǒng)工程,通俗的說(shuō),智能家居系統(tǒng)之所以能實(shí)現(xiàn)各種功能,完全是依靠自控技術(shù)和網(wǎng)絡(luò)通信技術(shù)。所以,智能家居系統(tǒng)就是一個(gè)擁有自控功能的網(wǎng)絡(luò)模塊。便隨著相關(guān)技術(shù)的開展,智能家居也在不斷開展。未來(lái)智能家居的開展趨勢(shì)可以概括為以下幾點(diǎn)[3]:信息化。信息技術(shù)的革命極大地改變了人們的生活模式。智能建筑要求具有智能化和人性化的特征。以前人們可能是因?yàn)楹闷娌攀褂酶鞣N智能產(chǎn)品,但是現(xiàn)在人們卻因?yàn)樯詈凸ぷ鞯男枰x不開它們。智能家居不僅是產(chǎn)品,更多的那么是表達(dá)了一種全新的設(shè)計(jì)理念和管理效勞。網(wǎng)絡(luò)化。信息時(shí)代不具有網(wǎng)絡(luò)化特點(diǎn)的智能家居是難以想象的,通過(guò)網(wǎng)絡(luò),智能家居系統(tǒng)可以簡(jiǎn)化物業(yè)管理、安防、商務(wù)等管理流程。同時(shí),是人們的生活更加便捷。標(biāo)準(zhǔn)化。各種智能產(chǎn)品的標(biāo)準(zhǔn)化是一個(gè)不可阻擋的趨勢(shì),智能家居的標(biāo)準(zhǔn)化也不例外,不同廠家的產(chǎn)品可以相互兼容,相互操作。使得智能家居系統(tǒng)的具體產(chǎn)品的配置可以實(shí)現(xiàn)按照住戶的需求特別定制。模塊化。接口具有統(tǒng)一的標(biāo)準(zhǔn),各個(gè)功能模塊之間是獨(dú)立的,使得智能家居系統(tǒng)在可維護(hù)性、可擴(kuò)展性上有空前的提高,系統(tǒng)的集成大大簡(jiǎn)化。綠色環(huán)保。智能建筑毫無(wú)疑問(wèn)地要實(shí)現(xiàn)環(huán)境友好,資源節(jié)約。在給住戶平安舒適的居住體驗(yàn)不能以破壞環(huán)境、浪費(fèi)資源為根底。整合。在此引用比爾蓋茨的觀點(diǎn),他認(rèn)為未來(lái)的智能住宅都應(yīng)該是一個(gè)經(jīng)過(guò)整合的網(wǎng)絡(luò),房屋內(nèi)的燈光、安保、音頻、視頻等一系列不同的功能模塊經(jīng)過(guò)整合,功能更加強(qiáng)大,管理更加方便。無(wú)論如何開展,智能家居的要求總是讓住戶更舒適,更平安,更加綠色。日益開展的住宅智能化技術(shù)也是人們對(duì)其提出了更高的居住要求,智能家居系統(tǒng)在功能豐富的同時(shí),其配置也在日益復(fù)雜。智能家居包括網(wǎng)絡(luò)接入系統(tǒng)、平安系統(tǒng)、可視對(duì)講系統(tǒng)、遠(yuǎn)程抄表系統(tǒng)、醫(yī)療系統(tǒng)、家電自動(dòng)管理系統(tǒng)、網(wǎng)絡(luò)效勞系統(tǒng)等,越來(lái)越多全新的概念正在成為智能家居中的重要組成局部[4]。1.3研究的目的與意義以上提出的智能家居系統(tǒng)的特點(diǎn)都是其未來(lái)應(yīng)該具備的,但是根據(jù)目前的市場(chǎng)調(diào)查發(fā)現(xiàn),總體上智能家居系統(tǒng)還處于市場(chǎng)開展初期。缺乏統(tǒng)一的產(chǎn)品標(biāo)準(zhǔn)和技術(shù)標(biāo)準(zhǔn)。經(jīng)濟(jì)和技術(shù)的開展使得人們對(duì)居住環(huán)境有了更高的要求,這也是智能家居系統(tǒng)不斷開展的一個(gè)重要的因素。計(jì)算機(jī)技術(shù)、通訊技術(shù)、網(wǎng)絡(luò)技術(shù)的飛速開展,各種智能產(chǎn)品在人們的生活中扮演著越來(lái)越重要的角色,平安與智能成為人們對(duì)居住環(huán)境的兩大根本要求,基于這些要求智能家居系統(tǒng)必須將平安、智能化和網(wǎng)絡(luò)通許等設(shè)施整合在一起。當(dāng)今的商品房注重高科技產(chǎn)品的應(yīng)用。伴隨著日益開展的計(jì)算機(jī)技術(shù)和IT產(chǎn)業(yè),智能住宅將在商品房市場(chǎng)中占有越來(lái)越大的份額[5]。北京、上海、廣州等地已經(jīng)有了一些智能住宅小區(qū),并且智能住宅小區(qū)也開始在全國(guó)其他城市推廣。對(duì)于智能住宅小區(qū),國(guó)家已經(jīng)將其列為重點(diǎn)支持的工程,它將帶給人們?nèi)碌木幼◇w驗(yàn),對(duì)于房地產(chǎn)、住宅裝修、小區(qū)管理、家用電器等相關(guān)產(chǎn)業(yè)的開展也具有巨大的推動(dòng)作用。智能家居將開始走進(jìn)并改變?nèi)藗兊纳?。從?guó)際上來(lái)看,目前美國(guó)在智能家居的研究方面一直走在世界前列,國(guó)內(nèi)的同類產(chǎn)品大多抄襲國(guó)外產(chǎn)品,沒(méi)有自主的核心技術(shù)。直接照搬國(guó)外的產(chǎn)品對(duì)于我國(guó)國(guó)情來(lái)說(shuō)顯然是不適宜的,我們應(yīng)該自己的同類產(chǎn)品。智能家居系統(tǒng)具有廣闊的應(yīng)用前景,特別是基于嵌入式的智能家居系統(tǒng)。1.4研究要求本文從理論和實(shí)際設(shè)計(jì)這兩個(gè)方面進(jìn)行討論,對(duì)于控制系統(tǒng),本文分為主機(jī)和從機(jī)。在收集到控制對(duì)象〔分機(jī)〕的各種狀態(tài)信息之后,現(xiàn)場(chǎng)控制級(jí)設(shè)備〔主機(jī)〕對(duì)這些數(shù)據(jù)進(jìn)行處理,在超出允許的范圍之后發(fā)出警告。通過(guò)這一系統(tǒng),各種狀態(tài)信息比方溫度、濕度、有害氣體濃度等可以清楚地顯示出來(lái),對(duì)于各種狀態(tài)信息的變化及時(shí)做出相應(yīng)的調(diào)整控制。對(duì)于如何實(shí)現(xiàn)這一功能,本文做了如下討論:1.對(duì)智能家居系統(tǒng)的硬件進(jìn)行設(shè)計(jì),完成外圍電路的設(shè)計(jì)。2.對(duì)與智能家居相關(guān)的嵌入式和基于無(wú)線傳輸?shù)耐ㄓ嵓夹g(shù)進(jìn)行深入研究。3.利用PlatformBuilder完成BSP安裝、WindowsCE.net操作系統(tǒng)定制及SDK的創(chuàng)立。4.利用EVC開發(fā)工具最終實(shí)現(xiàn)了煤氣泄漏報(bào)警模塊的人機(jī)交互界面。2智能家居控制系統(tǒng)的總體設(shè)計(jì)方案2.1家居控制系統(tǒng)功能智能家居系統(tǒng)使用了電傳感技術(shù)、計(jì)算機(jī)通訊技術(shù),在對(duì)房屋內(nèi)的各種狀態(tài)監(jiān)控的同時(shí),也可以根據(jù)要求做出相應(yīng)的調(diào)整。整個(gè)智能家居系統(tǒng)分為內(nèi)部信息交換與報(bào)警系統(tǒng)、傳感和顯示系統(tǒng)、執(zhí)行模塊等局部。對(duì)于一個(gè)智能家居系統(tǒng),其應(yīng)該具有的特點(diǎn)[6]:(1)火情檢測(cè)報(bào)警,有害氣體檢測(cè)報(bào)警。(2)自行控制水電氣的通斷。(3)自行調(diào)節(jié)室內(nèi)空氣溫度和濕度。(4)自行控制家用電氣的開關(guān)。(5)平安防范與報(bào)警。(6)遠(yuǎn)程住戶控制。2.2系統(tǒng)總體架構(gòu)設(shè)計(jì)本文采用的是一臺(tái)主機(jī)多臺(tái)分機(jī)的設(shè)計(jì)方案,圖2-1為控制系統(tǒng)結(jié)構(gòu)圖。對(duì)于利用GSM和GPRS等通訊模塊為本系統(tǒng)進(jìn)行擴(kuò)展升級(jí)不在本文討論的范圍之內(nèi)。由于采用的是S3C2410芯片,主機(jī)的MCU支持日后擴(kuò)展,同時(shí)滿足了設(shè)計(jì)要求。而采用MSP430F149單片機(jī)的分機(jī),滿足家居控制功能的同時(shí)還具有超低的功耗。而各種傳感器的應(yīng)用使得系統(tǒng)可以實(shí)時(shí)采集狀態(tài)信息,超出允許范圍是進(jìn)行報(bào)警。住戶通過(guò)觸摸屏下達(dá)指令,然后依靠連在各個(gè)家電上的繼電器來(lái)完成動(dòng)作[7]。分機(jī)MCU1分機(jī)MCU1傳感器串口液晶〔可選〕控制單元〔如煤氣閥門通斷〕分機(jī)MCU2傳感器串口液晶〔可選〕控制單元〔如家用電氣啟?!硁RF905傳感器觸摸屏GSMGPRS控制機(jī)構(gòu)主機(jī)MCU圖2-1家居控制系統(tǒng)結(jié)構(gòu)圖該系統(tǒng)中,主機(jī)的作用就是采集各種狀態(tài)信息并進(jìn)行分析處理,然后控制各個(gè)功能模塊做出相應(yīng)的調(diào)整。家庭里的各種狀態(tài)信息會(huì)實(shí)時(shí)監(jiān)測(cè)并顯示出來(lái)讓住戶查看,而住戶也可以通過(guò)觸摸屏來(lái)下達(dá)調(diào)整指令。而采用無(wú)線通訊方式,無(wú)需布線,也可以降低本錢。提起無(wú)線通訊技術(shù),主要有以下幾種技術(shù)標(biāo)準(zhǔn)[8]:(1)藍(lán)牙〔Bluetooth〕:起源于1998年,是一種便攜式設(shè)備無(wú)線通信技術(shù)。能在多種便攜式移動(dòng)設(shè)備之間進(jìn)行無(wú)線通信。借助于次技術(shù),可以大幅簡(jiǎn)化設(shè)備間的通信,也可以簡(jiǎn)化設(shè)備與互聯(lián)網(wǎng)的通信,使數(shù)據(jù)傳輸高效簡(jiǎn)潔。藍(lán)牙技術(shù)的工作頻段為全球通用的2.4GHzISM頻段。其傳輸速率可以到達(dá)1Mbps。藍(lán)牙技術(shù)創(chuàng)立的目的是使不同廠家生產(chǎn)的便攜式硬件能夠在在近距離內(nèi)進(jìn)行無(wú)線通訊,交換信息,互相操作。(2)射頻技術(shù):射頻〔RadioFrequency〕技術(shù)是利用電磁波進(jìn)行信息交換。它采用某一特定的頻率來(lái)傳送信息。既可以使用特許頻帶,同時(shí)ISM頻帶也可以作為特殊條件下的頻帶。RF信號(hào)的穿透力較強(qiáng),無(wú)論是開放還是封閉的環(huán)境中均可使用。射頻芯片的頻段越高,設(shè)備通訊的速率就越快,目前最高的通訊速率為12Mbps。(3)IrDA:IrDA是紅外數(shù)據(jù)組織〔InfraredDataAssociation〕的簡(jiǎn)稱,目前廣泛采用的IrDA紅外連接技術(shù)就是由該組織提出的。隨著技術(shù)的開展,其傳輸速率不斷提高,現(xiàn)在到達(dá)16Mbps,接收角度不斷擴(kuò)大,現(xiàn)在到達(dá)120度。該紅外連接技術(shù)開展至今已經(jīng)比擬成熟,IrDA技術(shù)在電子設(shè)備中的應(yīng)用非常廣泛,但是這一技術(shù)有著比擬明顯的缺陷。例如傳輸設(shè)備之間要保持通暢,否那么無(wú)法傳輸,同時(shí)其核心部件LED的使用壽命較短。由于上述缺陷,使得這一技術(shù)無(wú)法成為未來(lái)的無(wú)線通信技術(shù)標(biāo)準(zhǔn)。綜合以上3種技術(shù),本文選取射頻技術(shù),其具有低功耗、可靠性強(qiáng)、價(jià)格廉價(jià)等特點(diǎn)。2.3硬件選型由于系統(tǒng)的通訊接口比擬多,過(guò)程復(fù)雜,單從技術(shù)角度來(lái)講,重新開發(fā)一款管理個(gè)模塊的操作系統(tǒng)周期太長(zhǎng),同時(shí)其開發(fā)本錢也不是作者可以承受的[9]。考慮到操作系統(tǒng)附帶的驅(qū)動(dòng)程序,簡(jiǎn)單的移植就可以在本系統(tǒng)上運(yùn)行。高速的CPU和大容量的存儲(chǔ)空間是運(yùn)行操作系統(tǒng)的必要條件。4G的存儲(chǔ)空間已經(jīng)可以滿足運(yùn)行操作系統(tǒng)的需要,顯然ARM處理器滿足要求。對(duì)于系統(tǒng)運(yùn)行速度,32位RISC特性也可以輕松應(yīng)對(duì)。同時(shí),ARM處理器自帶一些接口控制器,對(duì)于構(gòu)成系統(tǒng)比擬方便。成為RISC標(biāo)準(zhǔn)的ARM微處理器已經(jīng)廣泛應(yīng)用于各種通信領(lǐng)域。本設(shè)計(jì)要求實(shí)時(shí)處理數(shù)據(jù),所以選用運(yùn)行速度快的ARM9處理器,它完全可以運(yùn)行WindowsCE.net或者Linux等操作系統(tǒng),還擁有比擬快的數(shù)據(jù)處理速度。在眾多型號(hào)的ARM9處理器中,本文選用的是三星的S3C2410處理器。S3C2410是三星開發(fā)的一款16/32位、擁有ARM920T內(nèi)核的嵌入式微處理器,主要用于便攜式通訊設(shè)備。一塊S3C2410處理器還集成了以下外設(shè)[10]:(1)2.3MhzARM920T內(nèi)核,0.18um工藝,超低功耗,272pinBGA封裝(2)帶MMU,16KB指令緩存,16KB數(shù)據(jù)緩存(3)NANDFlash控制器(4)內(nèi)含SDRAM控制器(5)117個(gè)GPIO,24通道外部中斷源(6)內(nèi)置LCD控制器〔支持SIN和TFT帶有觸摸屏的液晶顯示屏〕(7)豐富的外部接口:4個(gè)通道的DMA,3個(gè)串口,兩個(gè)SPI口,1個(gè)IIC接口(8)一個(gè)USBhost接口,一個(gè)USBdevice接口(9)8通道的10位ADC,4通道的PWM輸出(10)內(nèi)置RTC,PLL(11)內(nèi)置SD,MMC,SmartMedia等存儲(chǔ)卡接口由于S3C2410具有豐富的資源,稍加擴(kuò)展即可到達(dá)設(shè)計(jì)要求。2.4嵌入式系統(tǒng)的比擬幾種嵌入式操作系統(tǒng)的比擬下面對(duì)幾種主流的操作系統(tǒng)進(jìn)行比擬:1嵌入式LinuxLinux是一種自由和開放源代碼的類UNIX操作系統(tǒng)。定義Linux的組件是Linux內(nèi)核,該操作系統(tǒng)內(nèi)核由林納斯·托瓦茲在1991年10月5日首次發(fā)布。嚴(yán)格來(lái)講,術(shù)語(yǔ)Linux只表示操作系統(tǒng)內(nèi)核本身,但通常采用Linux內(nèi)核來(lái)表達(dá)該意思,Linux那么常用來(lái)指基于Linux內(nèi)核的完整操作系統(tǒng),包括GUI組件和許多其他實(shí)用工具。由于這些系統(tǒng)工具和庫(kù)主要由GNU方案提供,自由軟件基金會(huì)提議將該組合系統(tǒng)命名為GNU/Linux。Linux是一個(gè)領(lǐng)先的操作系統(tǒng),可以運(yùn)行在效勞器和其他大型平臺(tái)之上,如大型機(jī)和超級(jí)計(jì)算機(jī)。世界上500個(gè)最快的超級(jí)計(jì)算機(jī)90%以上運(yùn)行Linux發(fā)行版或變種,最快的前10名超級(jí)計(jì)算機(jī)運(yùn)行的都是Linux操作系統(tǒng)。Linux也廣泛應(yīng)用在嵌入式設(shè)備上,如、平板電腦、路由器、電視和電子游戲機(jī)等。在移動(dòng)設(shè)備上廣泛使用的Android操作系統(tǒng)就是創(chuàng)立在Linux內(nèi)核之上[11]。μC/OSIIμC/OS-II是一個(gè)實(shí)時(shí)多任務(wù)內(nèi)核。μC/OS-II的代碼既有C語(yǔ)言編寫的,也有匯編語(yǔ)言編寫的,對(duì)不同處理器具有良好的兼容性。隨著不斷的開展和完善,該系統(tǒng)已經(jīng)在諸多領(lǐng)域得到廣泛應(yīng)用。經(jīng)過(guò)嚴(yán)格測(cè)試,該系統(tǒng)在飛行器上運(yùn)用的可行性得到了美國(guó)航空管理局的認(rèn)證。這說(shuō)明μC/OS-II具有良好的可靠性,可用在有關(guān)的平安系統(tǒng)領(lǐng)域。除此以外,該系統(tǒng)的另外一個(gè)顯著特點(diǎn)就是開源免費(fèi),易于維護(hù)和定制。VxWorks該操作系統(tǒng)是美國(guó)風(fēng)河公司1983年開發(fā)的一種嵌入式操作系統(tǒng),對(duì)于一個(gè)嵌入式開發(fā)環(huán)境來(lái)說(shuō)是核心局部。豐富的可擴(kuò)展性、性能強(qiáng)勁的核心以及方便的用戶圖形界面,在各種嵌入式實(shí)時(shí)操作系統(tǒng)中有很強(qiáng)的競(jìng)爭(zhēng)力。憑借著出色的穩(wěn)定性和優(yōu)秀的靈活性,被廣泛應(yīng)用于高精尖領(lǐng)域。PalmOSPalmOS是Palm公司開發(fā)的專用于PDA上的一種操作系統(tǒng)。PalmOS在個(gè)人數(shù)字助理市場(chǎng)上占據(jù)著絕大局部份額。PalmOS操作系統(tǒng)以簡(jiǎn)單易用為大前提,運(yùn)作需求的內(nèi)存與處理器資源較小,速度也很快;但不支援多線程,長(zhǎng)遠(yuǎn)開展受到限制。這種32位嵌入式操作系統(tǒng)目前還有較為龐大的用戶群。WindowsCEWindowsCE是微軟公司為嵌入式平臺(tái)設(shè)計(jì)的開源可擴(kuò)展的32位操作系統(tǒng),通俗的講,可以把它理解為Windows95的簡(jiǎn)化版。在圖形用戶界面方面有非常好的使用體驗(yàn)。它可以與Internet進(jìn)行信息交換。雖然該系統(tǒng)沒(méi)有開源,使用也需要付費(fèi),但是這并不影響熟悉Widows系統(tǒng)的開發(fā)人員使用該系統(tǒng)開發(fā)出優(yōu)秀的應(yīng)用程序。在互聯(lián)網(wǎng)上,可以找到及其豐富的WindowsCE資源,相關(guān)的開發(fā)團(tuán)隊(duì)也很多。嵌入式操作系統(tǒng)選擇的依據(jù)如何選擇嵌入式操作系統(tǒng)呢?本文認(rèn)為既要立足于現(xiàn)有的硬件平臺(tái)條件,還要考慮到操作系統(tǒng)的綜合本錢,具體來(lái)講,分為以下幾個(gè)局部[12]:上市時(shí)間。對(duì)于一套操作系統(tǒng),特別是商業(yè)操作系統(tǒng),其具體的上市時(shí)間在重要性方面并不亞于開發(fā)該系統(tǒng)的本錢。就目前情況來(lái)看,熟悉WindowsCE的開發(fā)人員是最多的,這可以縮短系統(tǒng)軟件的開發(fā)時(shí)間。如果選用了一套并不流行的操作系統(tǒng),將會(huì)額外的增加開發(fā)系統(tǒng)軟件的時(shí)間本錢。平臺(tái)無(wú)關(guān)性。通俗的說(shuō),平臺(tái)無(wú)關(guān)性就是指一套操作系統(tǒng)可以在不同的硬件根底上運(yùn)行,即具備良好的可移植性。一套操作系統(tǒng)的平臺(tái)無(wú)關(guān)性往往和它的功能成反比,這就要求開發(fā)人員最大程度的考慮到各種條件,使得操作系統(tǒng)具有最大程度的兼容性和功能。在前述幾種操作系統(tǒng)中,本文認(rèn)為WindowsCE的平臺(tái)無(wú)關(guān)性是最優(yōu)的??衫觅Y源。對(duì)于一套操作系統(tǒng),特別是商業(yè)操作系統(tǒng),不同于教學(xué),他們往往有著豐富的自帶資源和第三方相關(guān)應(yīng)用程序,這樣做是為了給用戶更加方便的開發(fā)體驗(yàn),這也是選擇操作系統(tǒng)的一個(gè)重要因素。從前面介紹的情況來(lái)看,Linux和WindowsCE的相關(guān)資源都十分豐富。系統(tǒng)定制能力。操作系統(tǒng)除了要具備強(qiáng)大的功能以外,對(duì)于不同需求的客戶,其應(yīng)當(dāng)還要有出色的客戶定制能力,這樣可以使得客戶完成各種不同的工作任務(wù),而不僅僅是處理幾個(gè)簡(jiǎn)單的問(wèn)題。微軟已經(jīng)開始開放WindowsCE的源碼,這樣使得其在客戶定制方面有著更為強(qiáng)有力的市場(chǎng)競(jìng)爭(zhēng)力。本錢。本錢是開發(fā)所有產(chǎn)品都要考慮的一個(gè)重要因素。雖然Linux免費(fèi),WindowsCE付費(fèi),但本錢不僅僅是使用某一操作系統(tǒng)時(shí)需要支付的費(fèi)用,它是一個(gè)綜合性的概念。應(yīng)該考慮到,使用了某一操作系統(tǒng)之后硬件采購(gòu),人員培訓(xùn)和產(chǎn)品開發(fā)時(shí)間等綜合影響。是否支持中文。由于開發(fā)智能家居系統(tǒng)是針對(duì)國(guó)內(nèi)的情況,所以必須要考慮所選用的操作系統(tǒng)是否支持中文的內(nèi)核,以及是否支持中文接口等因素。通過(guò)上述綜合比擬,本文選用的是WindowsCE嵌入式操作系統(tǒng)。再對(duì)微軟的多種嵌入式操作系統(tǒng)進(jìn)行比擬,其中的XPe雖然對(duì)驅(qū)動(dòng)和應(yīng)用程序具有良好的兼容性,但是只支持X86系統(tǒng);相比之下,WindowsCE在兼容性和支持性上取得了比擬好的兼顧,所以選擇后者作為操作系統(tǒng)。WindowsCE結(jié)構(gòu)及特點(diǎn)WindowsCE.net是一個(gè)兼容多種嵌入式平臺(tái)操作系統(tǒng)。良好的可靠性和豐富的擴(kuò)展性是它的顯著特點(diǎn)。它還具備同時(shí)處理多個(gè)線程任務(wù)的能力,不同的功能模塊使得用戶可以根據(jù)自己的需要定制不同的產(chǎn)品。WindowsCE操作系統(tǒng)的結(jié)構(gòu)圖如下所示[13]。WindowsCE體系結(jié)構(gòu)圖WindowsCE體系結(jié)構(gòu)圖應(yīng)用層Internet客戶效勞WindowsCE應(yīng)用程序客戶應(yīng)用程序用戶界面國(guó)際化硬件層OEM層驅(qū)動(dòng)OAL層引導(dǎo)程序配置文件操作系統(tǒng)層對(duì)象存儲(chǔ)核心核心DLL應(yīng)用和效勞開發(fā)多媒體技術(shù)GWES設(shè)備管理器通訊效勞和網(wǎng)絡(luò)圖2-2操作系統(tǒng)模型整個(gè)體系結(jié)構(gòu)從下至上包括硬件層、OEM層、操作系統(tǒng)層、應(yīng)用層。值得注意的,處于中間的OEM層和操作系統(tǒng)層構(gòu)成了該操作系統(tǒng)的關(guān)鍵局部,接下來(lái)本文將對(duì)這兩層著重加以介紹。OEM層OEM層主要包括以下模塊[14]:(1)OAL模塊。該模塊與硬件的相關(guān)功能密切相關(guān)。(2)引導(dǎo)程序。它負(fù)責(zé)將操作系統(tǒng)的核心導(dǎo)入內(nèi)存。(3)配置文件。將不同的文件配置導(dǎo)入到相應(yīng)的硬件中。(4)驅(qū)動(dòng)。驅(qū)動(dòng)是嵌入式操作系統(tǒng)不可缺少的局部,它將軟件操作和硬件執(zhí)行聯(lián)系起來(lái)。處于第二層的OEM層是WindowsCE操作系統(tǒng)取得良好平臺(tái)無(wú)關(guān)性的關(guān)鍵所在。這一層分為三個(gè)局部,CSP使得該操作系統(tǒng)在不同處理器上都可以運(yùn)行,而BSP那么提供了良好的硬件兼容性,驅(qū)動(dòng)那么是用來(lái)調(diào)動(dòng)各種不同的外設(shè)。操作系統(tǒng)層操作系統(tǒng)層包括以下模塊:(1)CoreDLL[15]。它負(fù)責(zé)系統(tǒng)的功能調(diào)用和API管理。(2)核心。相關(guān)進(jìn)程為NK.exe,所占內(nèi)存不大,但是卻完成大局部的系統(tǒng)功能,如中斷響應(yīng)、系統(tǒng)調(diào)用、異常處理、模塊通信等,同時(shí)為系統(tǒng)的測(cè)試提供支持。(3)設(shè)備管理模塊。相關(guān)進(jìn)程為Device.exe,負(fù)責(zé)對(duì)系統(tǒng)各個(gè)設(shè)備的管理,并提供實(shí)時(shí)的設(shè)備列表,資源情況等。(4)圖形窗口和事件模塊。負(fù)責(zé)將系統(tǒng)內(nèi)發(fā)生的各種時(shí)間以圖表或者窗口的形式顯示出來(lái)供用戶查看。(5)通信和網(wǎng)絡(luò)效勞模塊。它主要完成WindowsCE操作系統(tǒng)與其他軟硬件的網(wǎng)絡(luò)通訊。(6)對(duì)象存儲(chǔ)模塊。通俗的說(shuō),就是WindowsCE操作系統(tǒng)下的硬盤,負(fù)責(zé)存儲(chǔ)各種數(shù)據(jù),注冊(cè)表文件等。(7)應(yīng)用和效勞開發(fā)模塊。為應(yīng)用程序提供相關(guān)的進(jìn)程支持,同時(shí)包含的各種工具可以對(duì)應(yīng)用程序的開發(fā)提供幫助。WindowsCE包含以下根本進(jìn)程:負(fù)責(zé)內(nèi)核相關(guān)效勞的NK.exe;負(fù)責(zé)系統(tǒng)文件效勞的FILESYS.exe;圖形用戶界面的支持離不開GWES.exe;最后的DEVICE.exe那么是管理設(shè)備驅(qū)動(dòng)的必不可少的進(jìn)程[16]。2.5基于WindowsCE.net的應(yīng)用程序開發(fā)過(guò)程本文把應(yīng)用程序的開發(fā)過(guò)程分為以下幾個(gè)局部[17]:1.硬件設(shè)計(jì)第一個(gè)步驟就是進(jìn)行硬件平臺(tái)的選定,它取決于我們想實(shí)現(xiàn)何種功能。一個(gè)完整的產(chǎn)品往往要集成很多不同功能的硬件模塊。2.選定BSPARM系列、X86系列等多種不同的處理器WindowsCE操作系統(tǒng)都支持。通過(guò)往PlatformBuilder里參加其他用戶自定的BSP再結(jié)合其自帶的BSP,WindowsCE系統(tǒng)可以支持不同的底板和設(shè)備。3.定制特定驅(qū)動(dòng)PlatformBuilder自帶的驅(qū)動(dòng)程序還不能滿足特定的開發(fā)需要,這時(shí)就需要根據(jù)開發(fā)目的參加自行開發(fā)的特定驅(qū)動(dòng)程序來(lái)實(shí)現(xiàn)某些特定功能。當(dāng)然如果開發(fā)的只是一般性的產(chǎn)品,那么那些自帶的通用驅(qū)動(dòng)程序完全可以滿足要求。4.裁剪內(nèi)核除了對(duì)驅(qū)動(dòng)程序的修改以外,同樣重要的階段就是修改系統(tǒng)內(nèi)核。通過(guò)PlatformBuilder自帶的BSP可以定制出滿足要求的操作系統(tǒng)。通俗的說(shuō)就是利用PlatformBuilder軟件對(duì)WindowsCE的系統(tǒng)結(jié)構(gòu)進(jìn)行相應(yīng)的修改。如果一個(gè)組件必須添加到定制的操作系統(tǒng)中,那么可以在這個(gè)階段進(jìn)行。5.生成SDK完成上述步驟之后,就可以生成自己定制的SDK。SDK不僅使得程序編寫更加方便,也可以輕易地安裝到其他的編輯器上面。縮短了開發(fā)流程,節(jié)約了時(shí)間。6.開發(fā)應(yīng)用程序完成了以上五個(gè)階段,一個(gè)按照特定需要的開發(fā)平臺(tái)就搭建完成,接下來(lái)要做的就是在這個(gè)平臺(tái)上編寫程序,結(jié)束應(yīng)用產(chǎn)品的開發(fā)。本文所討論的智能家居系統(tǒng)的終端系統(tǒng)的開發(fā)流程就是上述六個(gè)局部,接下來(lái)將對(duì)每個(gè)局部進(jìn)行詳細(xì)介紹。3系統(tǒng)硬件設(shè)計(jì)對(duì)于嵌入式家居系統(tǒng)的開發(fā)而言,設(shè)計(jì)出完整嚴(yán)謹(jǐn)?shù)挠布植渴钦麄€(gè)開發(fā)過(guò)程的根底和關(guān)鍵局部。設(shè)計(jì)出一個(gè)符合要求的硬件系統(tǒng),既可以完成當(dāng)初確定的家居系統(tǒng)應(yīng)該具有的功能,還要考慮到硬件系統(tǒng)的可擴(kuò)展性和可選擇性。同時(shí)也必須考慮到和軟件系統(tǒng)的兼容性,在盡量保證軟件的高效簡(jiǎn)潔的同時(shí),也要充分認(rèn)識(shí)到在該硬件根底上開發(fā)軟件的困難。3.1主機(jī)系統(tǒng)的硬件設(shè)計(jì)3.1.1S3C2410嵌入式處理器本設(shè)計(jì)主機(jī)采用的是三星公司推出的一款16/32位基于ARM920T內(nèi)核的RISC嵌入式處理器S3C2410。它具有功耗低、結(jié)構(gòu)簡(jiǎn)單、全靜態(tài)設(shè)計(jì)等優(yōu)點(diǎn),對(duì)于低本錢和低功耗系統(tǒng)的開發(fā)非常適合。通過(guò)集成眾多常用資源降低了它的本錢,其中包括LCD、NANDFlash、SDRAM等控制器、系統(tǒng)片選邏輯以及一些常用的通訊接口等資源[18]。S3C2410的內(nèi)部結(jié)構(gòu)如圖3-1所示。APBAPB總線AHB總線BUS控制中斷控制功率控制存儲(chǔ)控制LCD控制器USBHOSTExtMasterNAND控制器IISIICGPIORTCADCTIMER/PWMUARTUSB設(shè)備SDI/MMC看門狗BUS控制SPI圖3-1S3C2410內(nèi)部結(jié)構(gòu)圖3.1.2Flash模塊設(shè)計(jì)圖3-1S3C2410內(nèi)部機(jī)構(gòu)圖Flash模塊設(shè)計(jì)S3C2410具有兩種啟動(dòng)方式,一種NORFlash啟動(dòng)方式,一種是NANDFlash啟動(dòng)方式。一般的嵌入式處理器均使用第一種啟動(dòng)方式,存在本錢較高的缺點(diǎn);但是三星的處理器卻采用第二種啟動(dòng)方式,對(duì)于NANDFlash技術(shù),三星是其主要的支持廠家?,F(xiàn)在市場(chǎng)上主要的非易失閃存技術(shù)就是NOR和NAND。前者由英特爾公司1988年開發(fā)出來(lái),打破了之前EPROM和EEPROM這兩種技術(shù)的市場(chǎng)壟斷。次年,后者由東芝公司開發(fā)出來(lái),它集成了更強(qiáng)的性能,卻沒(méi)有提高每比特的本錢,使用接口的它有著出色的可升級(jí)性。本文選用硅存儲(chǔ)技術(shù)公司的39VF16016MNORFlash和三星的64MNANDFlashK9F1208作為存放應(yīng)用程序的存儲(chǔ)空間。選擇閃存的原因在于很多內(nèi)容在開發(fā)階段需要經(jīng)過(guò)頻繁的修改,如果采用ROM,其修改很不方便,相比之下,修改閃存中的內(nèi)容要簡(jiǎn)單得多。除此之外,閃存對(duì)于系統(tǒng)日后的維護(hù)、升級(jí)也比擬方便。圖3-2和圖3-3分別是NANDFlash和NORFlash的原理圖[19]。圖3-2NANDFlash電路設(shè)計(jì)圖3-3NORFlash電路設(shè)計(jì)3.1.3SDRAM接口電路設(shè)計(jì)由于S3C2410極其有限的存儲(chǔ)空間完全不能滿足操作系統(tǒng)運(yùn)行的要求,那么就必須為其外接存儲(chǔ)系統(tǒng)。雖然WindowsCE操作系統(tǒng)要求的最小內(nèi)存是32MB,但是考慮到系統(tǒng)的運(yùn)行效率,本文選用64MSDRAM。在微機(jī)系統(tǒng)中廣泛使用的SDRAM既有較大的存儲(chǔ)空間和讀取速度,有具有較低的本錢。它是一種存放執(zhí)行代碼和變量并在系統(tǒng)啟動(dòng)后進(jìn)行存取操作的存儲(chǔ)器。同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器需要定時(shí)刷新才能保存存儲(chǔ)的內(nèi)容,所以微處理器必須具備刷新控制邏輯。本文選用的S3C2410擁有片內(nèi)獨(dú)立的控制SDRAM刷新的邏輯電路,這樣可以方便地和SDRAM進(jìn)行連接。一般的SDRAM數(shù)據(jù)寬度大多為8位或者16位。本文考慮到系統(tǒng)的運(yùn)行速度,選用了兩片三星16位芯片K4S561632C-TC75組成了32位的存儲(chǔ)系統(tǒng)。兩片K4S561632C-TC75連接的差異在于LDQM、UDQM、SCLK引腳的不同,其他連線相同。3.1.4UART串口電路設(shè)計(jì)無(wú)論是微控制器還是PC都具有串行接口,都使用電子工業(yè)協(xié)會(huì)推薦的RS-232-C這一常用的串行數(shù)據(jù)傳輸總線標(biāo)準(zhǔn)。這一標(biāo)準(zhǔn)早期用于基于線和MODEN的遠(yuǎn)距離數(shù)據(jù)傳輸,但是隨著微處理器技術(shù)的開展,現(xiàn)在也被用于近距離通信。并且現(xiàn)在的近距離通信也不再使用線和MODEN,采用的是端對(duì)端技術(shù)。S3C2410的UART〔通用異步收發(fā)器〕單元具有兩個(gè)異步串行I/O口,并且它們之間相互獨(dú)立,其工作方式分為DMA方式和中斷方式??梢灾С?至8位的串行數(shù)據(jù)的收發(fā),1位和2位是停止位。另外包括奇偶校驗(yàn)、對(duì)于波特率支持編程,對(duì)于紅外收發(fā)也是支持的。RS-232-C標(biāo)準(zhǔn)采用的接口是9芯或25芯的D型插頭,9芯D型插頭更為常用。其中的RXD,TXD和GND這3個(gè)引腳就可以完成根本的串行信息交換,但是上述標(biāo)準(zhǔn)與S3C2410系統(tǒng)的LVTTL電路相比,兩者定義的上下電平信號(hào)完全不同,后者的高電平對(duì)應(yīng)2V至3.3V信號(hào),低電平對(duì)應(yīng)0V至0.4V信號(hào),與之相比,前者采用的是負(fù)邏輯方式,高電平對(duì)應(yīng)-5V至-15V電平,低電平對(duì)應(yīng)+5V至+15V電平。通過(guò)比擬可以看出,只有經(jīng)過(guò)電平信號(hào)的轉(zhuǎn)換,兩者才能進(jìn)行通信。本問(wèn)基于這種情況選用MAX3232電平轉(zhuǎn)換芯片[20]。圖3-4串口電路設(shè)計(jì)3.1.5USB接口電路USB接口被廣泛應(yīng)用于鍵盤和鼠標(biāo)以及U盤等設(shè)備的數(shù)據(jù)傳輸。選用的S3C2410處理器提供了兩個(gè)USB接口,其片內(nèi)的兩個(gè)USB控制器的分配方案可以設(shè)置為2個(gè)主機(jī)或1個(gè)主機(jī)與1個(gè)從設(shè)備。本文選用的是兩個(gè)主機(jī)的分配方案,其USB電路原理圖如下列圖所示。圖3-5USB電路原理圖3.1.6JTAG接口電路JTAG〔聯(lián)合測(cè)試行動(dòng)小組〕是一種用于對(duì)芯片內(nèi)部測(cè)試及對(duì)系統(tǒng)進(jìn)行仿真的國(guó)際測(cè)試標(biāo)準(zhǔn)協(xié)議。支持該技術(shù)的芯片內(nèi)部封裝了專門的測(cè)試訪問(wèn)口TAP,并使用支持該技術(shù)的專用測(cè)試工具對(duì)內(nèi)部節(jié)點(diǎn)進(jìn)行測(cè)試。對(duì)于比擬復(fù)雜的器件,該協(xié)議都可以支持。支持該技術(shù)的標(biāo)準(zhǔn)接口有TMS測(cè)試模式選擇、TCK測(cè)試時(shí)鐘、TDI測(cè)試數(shù)據(jù)輸入、TDO測(cè)試數(shù)據(jù)輸出這4條線,如圖3-7所示。如果要訪問(wèn)芯片內(nèi)部的任何部件,只需要通過(guò)JTAG接口就可以輕松實(shí)現(xiàn),對(duì)于開發(fā)調(diào)試嵌入式系統(tǒng)來(lái)說(shuō)簡(jiǎn)化了流程,使其變得更加簡(jiǎn)單。訪問(wèn)ARM芯片邊界的JTAG掃描口是此技術(shù)的調(diào)試方法。JTAG仿真器基于其邊界掃面實(shí)現(xiàn)與處理器的信息交換,這是一種完全不使用片上資源的調(diào)試方式,不需要目標(biāo)存儲(chǔ)器,更不占用系統(tǒng)的任何端口,對(duì)于監(jiān)控軟件來(lái)說(shuō)是必備的特性。需要說(shuō)明的是,基于JTAG技術(shù)的調(diào)試程序的執(zhí)行位于目標(biāo)板,是仿真結(jié)果更接近于目標(biāo)硬件。在這種條件下,許多其他的問(wèn)題如調(diào)試頻率限制、直交流參數(shù)匹配問(wèn)題、所用電線長(zhǎng)度等造成的影響被最大程度的消除。目前最為流行的調(diào)試方式就是利用JTAG仿真器進(jìn)行基于集成調(diào)試環(huán)境的測(cè)試,該調(diào)試方法的優(yōu)缺點(diǎn)如下:優(yōu)點(diǎn):不受至于軟硬件的條件,簡(jiǎn)單快捷。缺點(diǎn):要求工作正常的目標(biāo)板,并且要具有調(diào)試接口。圖3-6JTAG連接原理電源電路設(shè)計(jì)對(duì)于要設(shè)計(jì)的整體系統(tǒng)來(lái)說(shuō),電源管理系統(tǒng)是極其關(guān)鍵的局部。對(duì)于一個(gè)電源系統(tǒng)來(lái)說(shuō),良好的穩(wěn)定性和出色的抗干擾能力是必不可少的。一塊電路板上往往有著不同的電壓和功率分布,這就要求我們先準(zhǔn)確計(jì)算各個(gè)局部的電壓和功率,然后選擇適宜的電源管理單元。本文在考慮了上述要求之后對(duì)電源電路做出了設(shè)計(jì),其功能框圖如圖3-7所示。+12V直流輸入+12V直流輸入電壓調(diào)節(jié)器電壓調(diào)節(jié)器電壓調(diào)節(jié)器+3.3V直流輸出+1.8V直流輸出+5V直流輸出圖3-7電源管理系統(tǒng)功能框圖S3C2410工作時(shí)向IO口提供3.3V電壓,向內(nèi)核提供1.8V電壓。為了到達(dá)穩(wěn)定電壓的要求,將5V電壓轉(zhuǎn)換成3.3V的任務(wù)交給了電壓轉(zhuǎn)換芯片LM1117-3.3,再用LM1117-1.8將5V電壓轉(zhuǎn)為1.8V。系統(tǒng)電源電路如圖3-8所示。圖3-8電源電路原理圖3.2分機(jī)系統(tǒng)的硬件設(shè)計(jì)在分機(jī)的MCU選取上,本文選用的是MSP43OF149,即一種超低功耗的混合信號(hào)控制器,可以使用紐扣電磁并且具有很長(zhǎng)的電池續(xù)航能力。將低電壓、超低功耗、出色的運(yùn)行能力、優(yōu)秀的穩(wěn)定性和豐富的外設(shè)集于一體。nRF905收發(fā)模塊負(fù)責(zé)進(jìn)行與主分機(jī)無(wú)線通訊。因?yàn)檫B接了不同的傳感器和控制器,所以可以實(shí)現(xiàn)不同的功能??紤]到分機(jī)安裝的家居位置不同,所以分機(jī)的尺寸要比擬小。以安裝在廚房中的一個(gè)分機(jī)為例,分機(jī)各種硬件的選型如表3-1所示。MSP430MSP430聲光報(bào)警模塊電源監(jiān)控模塊nRF905通訊模塊泄漏檢測(cè)模塊電磁閥控制模塊圖3-9分機(jī)系統(tǒng)的硬件結(jié)構(gòu)表3-1各硬件模塊型號(hào)硬件芯片和模塊型號(hào)描述MCU處理器MSP430F149超低功耗的混合信號(hào)控制器泄漏檢測(cè)模塊QM2N2型傳感器阻值隨檢測(cè)氣體濃度變化而變化電磁閥控制模塊ZD20型電磁閥雙穩(wěn)態(tài)高效節(jié)能型電磁閥聲光報(bào)警模塊LED和蜂鳴器紅光和聲音報(bào)警通訊模塊nRF905無(wú)線通訊射頻模塊3.2.1MCU微控制器MSP430F14x是德州儀器公司推出的Flash型16位RISC指令單片機(jī),具有超低的功耗。由于采用的結(jié)構(gòu)是“馮-諾依曼”,在同一個(gè)地址空間內(nèi)集成了隨機(jī)和制度存儲(chǔ)器和所有的外圍模塊。極高的性價(jià)比是因?yàn)榫哂胸S富的片內(nèi)外設(shè)。在TI的MSP430F1x系列閃存單片機(jī)中,該系列閃存的功能最為強(qiáng)大。該系列具有更大的存儲(chǔ)空間以及更豐富的外圍模塊。同時(shí)它的調(diào)試工具簡(jiǎn)單易用,得益于固化的閃存,程序可以輕松的升級(jí)或者調(diào)試,是開發(fā)移動(dòng)產(chǎn)品的不錯(cuò)的選擇。在該系列的單片機(jī)設(shè)計(jì)上,表達(dá)了功耗至上的設(shè)計(jì)理念。一切設(shè)計(jì)均圍繞低功耗。以下幾個(gè)局部是這種低功耗結(jié)構(gòu)的介紹:1.高度集成的完全單片化設(shè)計(jì)該MCU集成了盡可能多的外圍模塊,最大程度的增加硬件空間。在配合超低的功耗結(jié)構(gòu),使得系統(tǒng)性能強(qiáng)勁,工作可靠,本錢低廉,適合微型化。2.內(nèi)部電路可選擇性工作特殊功能存放器使得該系列單片機(jī)可以根據(jù)不同的工作要求和環(huán)境狀態(tài),選擇不同的內(nèi)部工作電路,始終保持強(qiáng)勁性能和超低功耗。3.具有高速和低速兩套時(shí)鐘電源功耗與系統(tǒng)運(yùn)行頻率有密切關(guān)系。為了實(shí)現(xiàn)超低功耗,F(xiàn)14x單片機(jī)具有高速的主時(shí)鐘和低頻時(shí)鐘以及DCO片內(nèi)時(shí)鐘三套獨(dú)立的時(shí)鐘源??梢愿鶕?jù)不同的工作頻率選用不同的時(shí)鐘頻率,最大程度的降低整體功耗。4.具有多種節(jié)能工作模式該單片機(jī)除了正常模式外,還有4種節(jié)能模式。保證了出色的功耗控制,同時(shí)又不會(huì)影響到單片機(jī)的工作性能。根據(jù)工作要求和狀態(tài)的不同的,可以在5種工作模式之間隨時(shí)切換。本文選用的MSP430F149單片機(jī)是TI公司MSP430F14x系列的產(chǎn)品。該系列對(duì)功耗的控制極為出色,將不同的應(yīng)用模塊集成在一起,電壓范圍1.8V至3.6V的電池可以保證長(zhǎng)時(shí)間的供電。由于RISC結(jié)構(gòu)是16位的,同時(shí)還具有16位存放器和特殊存放器,使得它的代碼效率很高。通過(guò)數(shù)字控制振蕩器,該單片機(jī)從睡眠恢復(fù)到工作的時(shí)間不到6ms。該系列單片機(jī)有兩個(gè)具有看門狗功能的16位定時(shí)器和高速8通道12位A/DC以及一個(gè)內(nèi)部比擬器和兩個(gè)通用同異步收發(fā)器、I/O口多達(dá)48個(gè)并且均可獨(dú)立編程。無(wú)論對(duì)于硬件還是程序,都擁有極高的兼容性,高達(dá)10萬(wàn)次的擦寫次數(shù)保證了修改程序的可行性,抗干擾能力一流。無(wú)論是隨機(jī)存儲(chǔ)局部還是只讀存儲(chǔ)局部,可以隨意進(jìn)行局部或者整體的擦除,大大方便了軟硬件的設(shè)計(jì)。芯片各引腳的連接如圖3-10所示[21]。圖3-10MSP430F149引腳連接電路電源監(jiān)控模塊設(shè)計(jì)NCP302HSN27T1電壓監(jiān)測(cè)器,工作電壓為0.8V到10V之間的任意值,難以想象的0.5μA的靜態(tài)工作電流;與同類芯片相比,其電壓檢測(cè)最小精度可以到達(dá)2%。一旦電源電壓缺乏2.7V,1號(hào)引腳輸出高電平,對(duì)MCU發(fā)出中斷請(qǐng)求,同時(shí)蜂鳴器發(fā)聲提示更換電源。泄漏檢測(cè)模塊設(shè)計(jì)泄漏檢測(cè)模塊的核心是QM2N2型氣敏傳感器,其電阻值隨有害氣體濃度的變化而變化。其電路圖如下所示。當(dāng)濃度處于正常范圍時(shí),氣敏傳感器C和D間電阻值較大,D端輸出低電平。一旦有害氣體濃度超過(guò)正常閥值后〔通常為25%的氣體體積濃度〕,迅速減小的C、D間電阻值,將使D除輸出高電平,導(dǎo)通三極管,連接單片機(jī)P4.3口的E點(diǎn)由高電平變?yōu)榈碗娖剑S即向單片機(jī)發(fā)出報(bào)警信息[22]。圖3-11泄漏檢測(cè)電路電磁閥控制模塊設(shè)計(jì)本文選用ZD20型電磁閥〔控制電路見圖3-12〕來(lái)控制煤氣的開關(guān),它具有節(jié)能高效的特點(diǎn),供電的是3.6V鋰電池,采用點(diǎn)開工作方式。無(wú)論開關(guān),均可一直保持該狀態(tài)。微控制器P4.2腳的電平上下控制電磁閥的開關(guān)狀態(tài)。輸出低電平時(shí),三極管截止,電磁閥關(guān)閉;輸出高電平時(shí),三極管導(dǎo)通,電磁閥翻開。該電磁閥通過(guò)控制電路與單片機(jī)控制系統(tǒng)相連,通過(guò)單片機(jī)實(shí)現(xiàn)對(duì)電磁閥的開關(guān)。圖3-12電磁閥控制電路聲光報(bào)警模塊設(shè)計(jì)如果有害氣體濃度超標(biāo),紅色LED點(diǎn)亮,同時(shí)蜂鳴器鳴響,發(fā)出聲光報(bào)警。圖3-13聲光報(bào)警電路單片機(jī)的P4.0腳輸出的電平控制蜂鳴器,高電平時(shí)蜂鳴器鳴響低電平時(shí)那么蜂鳴器關(guān)閉。當(dāng)P4.1引腳輸出的電平上下控制LED的亮滅,高電平時(shí)LED發(fā)亮,低電平時(shí)熄滅。3.3主分機(jī)通信模塊設(shè)計(jì)3.3.1nRF905射頻芯片無(wú)線數(shù)據(jù)傳輸已經(jīng)開始用于各種特殊的數(shù)據(jù)測(cè)控中,本文選用的MSP430+nRF905的組合具有低功耗、傳輸距離較遠(yuǎn)、傳輸數(shù)據(jù)量適中等特點(diǎn)。其中的MSP430有著出色的功耗控制,而nRF905無(wú)線收發(fā)芯片除了低功耗,操作簡(jiǎn)單并且可以自動(dòng)進(jìn)行CRC校驗(yàn),兩者的組合已經(jīng)被廣泛用于很多產(chǎn)品中。nRF905是一款挪威Nordic公司開發(fā)的射頻發(fā)射芯片,工作電壓范圍在1.9V至3.6V之間,32引腳QFN封裝〔5mm*5mm〕,工作頻段有433/868/915MHz。該芯片可以自動(dòng)進(jìn)行CRC校驗(yàn),配置方便,超低功耗。它采用非實(shí)時(shí)數(shù)據(jù)傳輸方式,在接收端收到發(fā)送端傳來(lái)的數(shù)據(jù)之后先暫存與芯片內(nèi)部存儲(chǔ)器,MCU可以在需要的時(shí)候訪問(wèn)內(nèi)部存儲(chǔ)器。nRF905一次可以傳輸不超過(guò)32B的數(shù)據(jù)。nRF905可以工作在掉電或者待機(jī)這兩種不同的模式下,節(jié)能模式有ShockBurstTM和ShockBurstTM,PWR_UP、TRX_CE和TX_EN這3個(gè)引腳的電平上下決定著該芯片處于何種模式,如表3-2所列。表3-2nRF905的工作模式PWR_UPTRX_CETX_EN工作模式0--掉電模式10-待機(jī)模式110射頻接收模式111射頻發(fā)送模式3.3.2nRF905與MCU連接電路主機(jī)與分機(jī)的MCU分別連接各自的nRF905芯片,再通過(guò)無(wú)線方式進(jìn)行信息交換,其連接電路圖如下列圖所示。圖3-14nRF905與MCU連接電路圖其中TRX_CE、PWR、CD、AM、DR、MISO、MOSI、SCK、CSN等控制管腳分別與主機(jī)和分機(jī)的MCU的通用IO口相連接,nRF905與S3C2410的連接見圖3-15。PWR_UPTRX_CETX_ENnCDRPWR_UPTRX_CETX_ENnCDRAMFDR9MISO0MOSI5SCKCSNPC0PC1SPC23PC3CPC82PC94PC101PC110PC12PC13圖3-15S3C2410與nRF905連接圖圖3-15S3C2410與nRF905連接圖4系統(tǒng)軟件開發(fā)在基于WindowsCE操作系統(tǒng)進(jìn)行產(chǎn)品開發(fā)時(shí),離不開內(nèi)核定制和開發(fā)應(yīng)用程序這兩個(gè)重要的方面。本文使用的是進(jìn)行內(nèi)核定制的PlatformBuilder工具和程序開發(fā)工具的EmbeddedVisualC++。4.1搭建特定操作系統(tǒng)搭建基于WidowsCE的特定系統(tǒng)步驟如下:(1)選擇適宜的微處理器和板級(jí)支持包BSP。本文根據(jù)具體要求選用的是導(dǎo)入了smdk2410.cec文件的S3C2410處理器。(2)使用開發(fā)向?qū)гO(shè)置好硬件參數(shù),壓縮功能模塊,得到編譯后的OS鏡像文件;(3)將鏡像文件導(dǎo)入開發(fā)板,使用PB工具查看其運(yùn)行情況,并做出修改。(4)在EVC中導(dǎo)入SDK開發(fā)工具,完成開發(fā)環(huán)境的創(chuàng)立。其具體流程如下列圖所示。平臺(tái)定制平臺(tái)定制開發(fā)設(shè)備驅(qū)動(dòng)程序增加組件修改配置文件平臺(tái)配置下載到目標(biāo)設(shè)備平臺(tái)創(chuàng)立完成?導(dǎo)出SDK平臺(tái)調(diào)試創(chuàng)立OS鏡像文件定制目標(biāo)設(shè)備?開發(fā)OAL、BSP和下載程序圖4-1WindowsCE定制系統(tǒng)流程圖平臺(tái)定制工具PlatformBuilder簡(jiǎn)介平臺(tái)構(gòu)造器〔PlatformBuilder〕負(fù)責(zé)在新的硬件平臺(tái)上完成WindowsCE操作系統(tǒng)的移植。該工具的版本與WindowsCE操作系統(tǒng)的版本有關(guān)。它是在進(jìn)行基于WindowsCE的嵌入式操作系統(tǒng)開發(fā)時(shí)的必備工具[23]。通過(guò)該工具,開發(fā)人員可以根據(jù)具體要求對(duì)WindowsCE操作系統(tǒng)的進(jìn)行程序驅(qū)動(dòng)的開發(fā)和測(cè)試。該工具包含常用的CPU和外圍模塊的OEM層源代碼。通過(guò)該工具,只要對(duì)其包含的標(biāo)準(zhǔn)BSP進(jìn)行修改,就可以驅(qū)動(dòng)標(biāo)準(zhǔn)硬件設(shè)備。接下來(lái)要做的就是添加應(yīng)用程序,就可以使目標(biāo)硬件運(yùn)行起來(lái)。下面是安裝WindowsCE操作系統(tǒng)時(shí)的考前須知:(1)PB工具和CE操作系統(tǒng)必須安裝在同一個(gè)路徑下。(2)根據(jù)特定的系統(tǒng)平臺(tái)進(jìn)行定制安裝,由于本文選用的是S3C2410,所以選擇ARMV4和ARMVI。在該工具的用戶界面中,有左右兩個(gè)窗口。左側(cè)窗口顯示已經(jīng)選定的特性,會(huì)被導(dǎo)入定制的操作系統(tǒng),右窗口顯示所有可選特性,可以根據(jù)要求把它們導(dǎo)入左側(cè)窗口。利用該工具可以實(shí)現(xiàn)基于CEC文件的目錄擴(kuò)展。開發(fā)人員可以通過(guò)CEC文件將現(xiàn)有BSP開發(fā)包導(dǎo)入,根據(jù)具體要求設(shè)置各種特性從而定制出基于目標(biāo)平臺(tái)的操作系統(tǒng)。完成定制后,自定義的軟件開發(fā)工具包SDK還可以從PlatformBuilder中導(dǎo)出用于應(yīng)用程序的開發(fā)。安裝BSP通俗的說(shuō),在硬件平臺(tái)上構(gòu)建CE系統(tǒng),實(shí)際就是在PlatformBuilder〔下文簡(jiǎn)稱PB〕自定義一個(gè)新的環(huán)境,搭建環(huán)境根底需要確定適宜的BSP。它是由主板設(shè)備驅(qū)動(dòng)、開發(fā)板硬件程序等組成的。PB包含多種目標(biāo)硬件平臺(tái)BSP,對(duì)于已經(jīng)包含的開發(fā)板,把再編譯的鏡像文件下載到開發(fā)板就可以了。如果開發(fā)板的外圍接口沒(méi)有包含在BSP中,可以使用開發(fā)向?qū)ё远x一個(gè)新的BSP。如果現(xiàn)有的開發(fā)環(huán)境中沒(méi)有滿足特定要求的BSP,那么PB也支持開發(fā)人員自定義新的BSP[24]。在整個(gè)WindowsCE系統(tǒng)的定制過(guò)程中,定制BSP過(guò)程最長(zhǎng)。只有了解系統(tǒng)硬件根底才能縮短定制時(shí)間。對(duì)于S3C2410微處理器,可以直接在PB的BSP列表中選取。為了節(jié)省時(shí)間并提高成功率,本文直接選用廠商提供的BSP。下面是安裝SMDK2410開發(fā)板BSP的步驟:〔1〕翻開PB工具,在文件菜單下找到特性管理目錄,顯示當(dāng)前特性列表??梢宰约禾砑有翪EC文件擴(kuò)充該列表。如下列圖所示。圖4-2選擇的CEC文件列表〔2〕接下來(lái)在列表中選擇“smdk2410.cec”,選擇移除。再選擇導(dǎo)入,添加“platform\smdk2410\smdk2410.cec”文件。特性管理目錄是由CEC文件組成的,同時(shí)包括系統(tǒng)的資源配置等信息。選擇下一步直到完成。圖4-3導(dǎo)入光盤中的CEC文件〔3〕在列表中,系統(tǒng)會(huì)自動(dòng)添加“SamsungSMDK2410:ARMV4/V4I”項(xiàng),BSP安裝完成。定制WindowsCE操作系統(tǒng)鏡像不同嵌入式系統(tǒng)除了鏡像文件不同之外,操作方法大同小異。下面討論的是如何創(chuàng)立操作系統(tǒng)鏡像文件。其具體步驟如下[25]:〔1〕選擇文件菜單中的新平臺(tái)選項(xiàng)?!?〕選擇BSP:本文選用的是S3C2410處理器,所以選擇“SAMSUNGSMDK2410:ARMV4”BSP,選擇“NEXT”。圖4-4選擇BSP〔3〕選擇平臺(tái)類型。在可用配置列表中,選擇移動(dòng)手持設(shè)備,并把平臺(tái)命名為sbc2410,點(diǎn)下一步繼續(xù)?!?〕選擇根本類庫(kù)。通過(guò)新平臺(tái)安裝向?qū)нx取適宜的配置,點(diǎn)擊下一步?!?〕繼續(xù)在該向?qū)е性O(shè)置網(wǎng)絡(luò)效勞?!?〕設(shè)置完成,點(diǎn)擊結(jié)束?!?〕右鍵單擊特性選項(xiàng)中的設(shè)置。在創(chuàng)立屬性對(duì)話框中,進(jìn)行如下設(shè)置:[EnableFullKernelMode]->checked[EnableImagesLagerthan32MB]->checked在允許所有核心模式下,可以提高CE系統(tǒng)的運(yùn)行效率,但是增大了系統(tǒng)的不穩(wěn)定性。選擇允許大于32MB映像,那么系統(tǒng)的運(yùn)行映像就可以大于32MB?!?〕利用PB提供的特性目錄進(jìn)行特性選擇是基于WindowsCE操作系統(tǒng)的定制的一個(gè)重要的過(guò)程。PB提供了CE系統(tǒng)的常用組件特性。因?yàn)樾枰I盤鼠標(biāo)等輸入設(shè)備,所以點(diǎn)擊翻開Catalog->CoreOS->Displaybaseddevices->CoreOSService->USBHostSupport->USBHumanInputDevice(HID)ClassDriver,右擊添加到平臺(tái),選擇USB人體工程學(xué)鍵盤和鼠標(biāo),右擊添加到平臺(tái)?!?〕與上一步類似,添加移動(dòng)存儲(chǔ)設(shè)備支持,在USBStorageClassDriver處右擊添加到平臺(tái),Catalog->BSPs->SamsungSMDK2410:ARMV4->DeviceDrivers->Networking->LANdevices->CS8900,然后右鍵點(diǎn)擊參加平臺(tái)?!?0〕右鍵點(diǎn)擊PrinterDevice->PCLPrinterDriver,選擇參加平臺(tái),必須添加打印設(shè)備驅(qū)動(dòng),否那么編譯時(shí)會(huì)出錯(cuò)?!?1〕設(shè)置好相關(guān)網(wǎng)絡(luò)參數(shù),可以通過(guò)修改注冊(cè)表相關(guān)鍵值來(lái)進(jìn)行設(shè)置。本文將所以目標(biāo)機(jī)的IP設(shè)為:0?!?2〕點(diǎn)擊創(chuàng)立開始編譯。編譯完畢,將會(huì)生成NK.bin和NK.nb0映像文件。編譯時(shí)有警告是正常的,如果有錯(cuò)誤,那么需要修改。通過(guò)USB將主機(jī)和開發(fā)板連接起來(lái),將上面生成的兩個(gè)鏡像文件下載到開發(fā)板上。4.1.4創(chuàng)立平臺(tái)SDK接下來(lái)要做的就是使用PB來(lái)創(chuàng)立SDK,其他應(yīng)用程序的開發(fā)離不開它的支持。組成SDK的是一些頭文件、庫(kù)文件、文檔和運(yùn)行庫(kù)。完成了SDK的創(chuàng)立,再將其導(dǎo)入或者安裝到其他的計(jì)算機(jī)上,再通過(guò)EVC或VisualStudio就可以進(jìn)行應(yīng)用程序的開發(fā)、調(diào)試和運(yùn)行。微軟的PlatformSDK對(duì)于開發(fā)人員來(lái)說(shuō)比擬熟悉,使用這一工具可以開發(fā)出幾乎適合所有版本W(wǎng)indows系統(tǒng)的應(yīng)用程序。這是由于嵌入式系統(tǒng)的特性所致,由于是一個(gè)可以定制并修改的操作系統(tǒng),每一個(gè)定制的WindowsCE平臺(tái)的功能不完全相同,它們向應(yīng)用程序提供的API集合自然也不完全相同。只有導(dǎo)入了特定的SDK,VisualStudio和EVC才能進(jìn)行應(yīng)用程序的開發(fā)。在EVC中,PlatformManager〔簡(jiǎn)稱PM〕管理SDK。值得注意的是,該工具會(huì)默認(rèn)安裝一個(gè)“標(biāo)準(zhǔn)”SDK。其實(shí)也就是集成了一些常用功能的SDK。通過(guò)“標(biāo)準(zhǔn)”SDK開發(fā)的應(yīng)用程序,兼容大多數(shù)定制的WindowsCE系統(tǒng)。但是標(biāo)準(zhǔn)不代表萬(wàn)能,例如,對(duì)于中文和DirectX,StandardSDK就不支持。使用SDK向?qū)蒘DK過(guò)程如下:〔1〕在PB中選擇平臺(tái)菜單,選擇設(shè)置SDK,翻開向?qū)С绦??!?〕為創(chuàng)立的SDK輸入一個(gè)名稱。圖4-5SDK名稱〔3〕選擇SDK特性開發(fā)工具,本文選擇的是EVC,所以EVC和SDK文件路徑必須一樣?!?〕點(diǎn)擊下一步完成向?qū)гO(shè)置。(5)在平臺(tái)菜單中選擇創(chuàng)立SDK。(6)把上述步驟之后生成名SBC2410_SDK.msi的SDK文件安裝到EVC程序路徑?!?〕雙擊該MSI文件出現(xiàn)向?qū)А!?〕為其命名?!?〕設(shè)置與開發(fā)工具相同的安裝目錄。設(shè)置錯(cuò)誤那么無(wú)法下載應(yīng)用程序?!?0〕完成基于向?qū)У腟DK安裝。4.2應(yīng)用軟件開發(fā)WinCE的API和其他的微軟操作系統(tǒng)大致相同,但它們之間也有區(qū)別。進(jìn)行CE程序開發(fā)時(shí)應(yīng)該注意如下幾點(diǎn)[26]:1.CE操作系統(tǒng)的根底是Unicode系統(tǒng),向用戶顯示的所有文本都是Unicode文本,所以應(yīng)用程序必須使用Unicode字符集。只有使用Unicode類型的運(yùn)行函數(shù)才能對(duì)字符串進(jìn)行定義和處理。2.有限的內(nèi)存。由于基于CE的嵌入式設(shè)備內(nèi)存非常有限,所以基于此操作系統(tǒng)的應(yīng)用程序代碼應(yīng)該盡可能簡(jiǎn)潔,大的程序意味著長(zhǎng)的加載時(shí)間。較少的代碼可以獲得更快的加載速度,也有利于系統(tǒng)的穩(wěn)定性。3.相對(duì)于Windows所有的API函數(shù),WindowsCE支持的超過(guò)1000種公共MicrosoftWin32API只是一小局部。有些WindowsAPI在WindowsCE不一定能使用。必須對(duì)現(xiàn)有的Windows程序做一些修改才能被WindowsCE編譯[27]。4.電源管理。WindowsCE設(shè)備的電量通常非常有限,為了節(jié)省電量,WindowsCE設(shè)備會(huì)在長(zhǎng)時(shí)間沒(méi)有使用時(shí)關(guān)閉。一旦恢復(fù)設(shè)備使用,應(yīng)用程序必須迅速恢復(fù),同時(shí)應(yīng)用程序必須考慮到運(yùn)行時(shí)突發(fā)的電量缺乏的情況并較好地予以解決。開發(fā)工具比擬進(jìn)行WindowsCE應(yīng)用開發(fā)時(shí),應(yīng)該根據(jù)具體要求選用適宜的開發(fā)工具。當(dāng)前流行的開發(fā)工具有PB、EVC、VS.NET、EVT3.0等。下面逐一介紹每種開發(fā)工具。1.PlatformBuilder。簡(jiǎn)稱PB,開發(fā)環(huán)境是Win32API,如果要修改相連之后的應(yīng)用程序,需要再編譯鏡像。方便內(nèi)核的調(diào)試,但是應(yīng)用程序的修改比擬繁瑣。debug版鏡像和環(huán)境解決了這一問(wèn)題。其界面如下。2.EVC支持WinCEApp/DLL/COM/LibusingWin32API、MFC、ATLandSTL。它是一種可視化開發(fā)工具。和VC++6.0相比,工程管理模式和用戶界面相似,對(duì)于應(yīng)用程序的調(diào)試非常方便,是程序開發(fā)的必備工具之一,對(duì)于特定程序開發(fā)要安裝特定的SDK。3.VisualStudio.NE,簡(jiǎn)稱VS.NET。調(diào)試應(yīng)用程序非常方便,開發(fā)環(huán)境也比擬完整,但是要求安裝frameworkcompact.NET環(huán)境。可以明顯縮短開發(fā)時(shí)間,但是效率較低同時(shí)資源占用過(guò)高。它的開發(fā)環(huán)境必須包含在CE操作系統(tǒng)內(nèi)核中,否那么不能進(jìn)行程序編譯。對(duì)于對(duì)資源占用和運(yùn)行速度要求不高的軟件來(lái)說(shuō),使用VS.NET開發(fā)很適宜。4.EmbeddedVisualTools3.0〔簡(jiǎn)稱EVT3.0〕分為EVBasic3.0和EVC++3.0,擁有和VisualStudio6.0相似的用戶界面,但是只有WindowsCE3.0才能運(yùn)行其開發(fā)的應(yīng)用程序。經(jīng)過(guò)綜合比擬,本文選用的是簡(jiǎn)單易用的EVC開發(fā)工具。本文選用的具體版本是EVC4.0+SP4,它是最新的版本,包含了以前版本的所有功能。系統(tǒng)鏡像文件的大小以及使用的開發(fā)工具決定了使用何種模式。其他因素也需要給予考慮,特別是開發(fā)速度和系統(tǒng)的兼容性以及可靠性??紤]到運(yùn)行效率和內(nèi)存使用率,以及對(duì)WindowsCE操作系統(tǒng)的兼容性,本文選用EVC4.0作為應(yīng)用程序開發(fā)工具。它是開發(fā)嵌入式設(shè)備應(yīng)用程序的必備工具[28]。4.2.2EmbeddedVisualC++伴隨著WindowsCE系統(tǒng)的推出,微軟也推出了與VC++類似的EVC語(yǔ)言和開發(fā)環(huán)境,開發(fā)人員可以基于WindowsCE進(jìn)行應(yīng)用程序開發(fā),同時(shí)也可以訪問(wèn)開發(fā)工具文檔?;谠摴ぞ叨_發(fā)出的程序可以直接運(yùn)行在特定的平臺(tái),無(wú)需編寫額外代碼,系統(tǒng)自動(dòng)完成平臺(tái)轉(zhuǎn)換工作。下列圖為EVC++4.0的用戶界面。圖4-6EmbeddedVisualC++集成開發(fā)環(huán)境對(duì)于從事VC開發(fā)的程序員來(lái)說(shuō),這個(gè)開發(fā)環(huán)境并不陌生。本文接下來(lái)將介紹EVC開發(fā)環(huán)境的特殊局部[29]。使用EVC編程應(yīng)該針對(duì)目標(biāo)平臺(tái),CE操作系統(tǒng)的運(yùn)行設(shè)備資源較少,必須明確編程的硬件根底。不同的CPU對(duì)應(yīng)不同的系統(tǒng),明確編譯目標(biāo)和類型是首要任務(wù),如圖4-24紅色局部所示。EVC提供了不同的目標(biāo)機(jī)器及編譯類型選項(xiàng)來(lái)編譯不同的可執(zhí)行文件。在目標(biāo)硬件測(cè)試方面,EVC具有硬件模擬器。針對(duì)不同硬件平臺(tái)在調(diào)試、運(yùn)行程序時(shí)的差異,EVC具有模擬大多數(shù)硬件平臺(tái)的模擬器,可以很方便的在EVC環(huán)境中進(jìn)行程序的調(diào)試或修改??梢栽谀M器中設(shè)計(jì)好應(yīng)用程序用戶界面,相應(yīng)硬件平臺(tái)功能的參加,節(jié)約了調(diào)試時(shí)間,同時(shí)開發(fā)速度也得以提高。WindowsCE操作系統(tǒng)是32位的操作系統(tǒng),EVC只有在32位系統(tǒng)下才能運(yùn)行。由于兩者的API不完全相同,有些函數(shù)兩者之間不能通用。某些函數(shù)只能在CE操作系統(tǒng)中運(yùn)行。WindowsCE操作系統(tǒng)的本地文本格式是Unicode。和桌面操作系統(tǒng)程序開發(fā)不同的是,必須將應(yīng)用程序下載到目標(biāo)設(shè)備上才能運(yùn)行,調(diào)試時(shí)也是這樣。所以在進(jìn)行基于WindowsCE的應(yīng)用程序開發(fā)時(shí),必須將EVC與WindowsCE目標(biāo)設(shè)備進(jìn)行連接。這需要用到ActiveSync同步軟件。點(diǎn)擊就會(huì)啟動(dòng)CE操作系統(tǒng)。之后通過(guò)USB連接到PC,點(diǎn)擊移動(dòng)設(shè)備圖標(biāo),開發(fā)板中的內(nèi)容就會(huì)顯示出來(lái)。指定的文件夾中必須拷貝編譯成功的執(zhí)行文件〔一般選MyDocuments〕。圖4-7瀏覽開發(fā)板中文件主機(jī)終端的應(yīng)用程序開發(fā)完成了開發(fā)環(huán)境的創(chuàng)立,接下來(lái)就可以進(jìn)行應(yīng)用程序的開發(fā)了。終端要控制收到的數(shù)據(jù)并將其顯示出來(lái)。訪問(wèn)緩沖區(qū)數(shù)據(jù)即可實(shí)現(xiàn)智能家居系統(tǒng)的上位機(jī)與下位機(jī)之間的通訊。在判斷上位機(jī)發(fā)送的命令后,如果是讀取命令,微處理器就會(huì)讀取緩沖區(qū)數(shù)據(jù);如果是寫入命令,微處理器就會(huì)向緩沖區(qū)寫入數(shù)據(jù)。應(yīng)用程序通過(guò)兩個(gè)對(duì)話框控制分機(jī)讀寫數(shù)據(jù):測(cè)量對(duì)話框監(jiān)視系統(tǒng)運(yùn)行狀態(tài)并采集輸入信息,Control對(duì)話框向分機(jī)發(fā)送控制信息。整個(gè)家居系統(tǒng)的測(cè)控通過(guò)主窗體實(shí)現(xiàn)。主機(jī)程序流程如下列圖所示。智能家居系統(tǒng)應(yīng)用程序的輸入分為1路模擬量、3路數(shù)字量及相應(yīng)的4路控制輸出,從而到達(dá)智能控制。YYYY測(cè)量子程序測(cè)量子程序測(cè)量子程序YNNNN開始調(diào)用主窗體選擇測(cè)量?選擇控制?選擇幫助?選擇退出?結(jié)束圖4-8主機(jī)應(yīng)用程序流程圖人機(jī)界面開發(fā)是主機(jī)程序開發(fā)的重要局部。人機(jī)界面〔Human-MachineInterface〕是一種人機(jī)對(duì)話的環(huán)境,用戶通過(guò)該界面向機(jī)器發(fā)出指令。它對(duì)于用戶的使用體驗(yàn)非常重要。由于開發(fā)者熟悉開發(fā)的應(yīng)用程序,所以對(duì)他們來(lái)說(shuō)人機(jī)界面甚至是一個(gè)多余的局部。但是一個(gè)人機(jī)界面對(duì)于用戶來(lái)說(shuō)就是一個(gè)系統(tǒng)的全部,它包括輸入指令發(fā)送、信息反應(yīng)和界面控制。對(duì)于界面設(shè)計(jì)來(lái)說(shuō),應(yīng)該給用戶一種輕松快樂(lè)的操作體驗(yàn),如果讓用戶覺(jué)得使用起來(lái)很不方便或者太過(guò)復(fù)雜,那么用戶很可能不再愿意使用這個(gè)程序。由于和VisualC++的開發(fā)環(huán)境根本一致。確定工程的類型、存儲(chǔ)空間以及名稱和平臺(tái)類型之后,再設(shè)置好工程類型和語(yǔ)言支持,程序的根本構(gòu)架就建立起來(lái)了。本文選擇的工程類型是WCEMFCAPPWizard,將其命名為SmartHome,本文選擇的CPU支持類型是ARM和X86〔應(yīng)該根據(jù)開發(fā)環(huán)境來(lái)選擇〕。如同前述,在PC上調(diào)試之后,再編譯成相應(yīng)的應(yīng)用程序,本文選用ARMCPU作為目標(biāo)機(jī),因此選擇WCEX86和WCEARM,其他類型的CPU沒(méi)有考慮。圖4-9創(chuàng)立工程(1)對(duì)話框資源。在插入資源對(duì)話框中,選擇Dialog選項(xiàng)。將ID設(shè)置為“IDD_MODELESSDLG1”,標(biāo)題為“智能集成控制家居系統(tǒng)-測(cè)量窗口”,選擇“Visible”?!?〕編輯對(duì)話框。如下圖[30]:〔3〕創(chuàng)立對(duì)話框類。選擇Createanewclass選項(xiàng),彈出NewClass對(duì)話框,在Name文本框內(nèi)輸入名稱“CModelessDlg1”。圖4-10創(chuàng)立對(duì)話框類(4)重復(fù)以上三步,創(chuàng)立一個(gè)名為“IDD_MODELESSDLG2”,標(biāo)題設(shè)置為“智能集成控制家居系統(tǒng)-控制窗口的”,類名取為“CModelessDlg2”。(5)確定了資源和實(shí)體之后,并不能馬上顯示出來(lái),還沒(méi)有確定顯示時(shí)間和地點(diǎn)。要正確地顯示出來(lái),在增減的窗口選擇菜單中,選擇增加測(cè)量窗口項(xiàng),并命名為“ID_MODELESSDLG_TEST1”,將“控制窗口”選項(xiàng)的ID號(hào)設(shè)置為“ID_MODELESSDLG_TEST2”[31]。(6)對(duì)于控制指定映射變量,需要確定它們的類型、范圍、變量名并為其添加代碼。由于篇幅所限,不贅述詳細(xì)的代碼。(7)翻開“SmarthomeView.cpp”和“SmartHomeView.h”文檔,向其中添加如下頭文件:#include“ModelessDlg1.h”#include“ModelessDlg2.h”(8)完成編譯后使用ActiveSync把可執(zhí)行程序文件拷貝到移動(dòng)設(shè)備下的MyDocuments文件夾下。(9)智能家居系統(tǒng)應(yīng)用程序的輸入分為1路模擬量和3路數(shù)字量,而對(duì)應(yīng)的輸出是4路控制量,通過(guò)這些輸入輸出量來(lái)實(shí)現(xiàn)智能控制。5總結(jié)與體會(huì)無(wú)論智能家居系統(tǒng)技術(shù)如何開展,其核心始終是控制器。結(jié)合了無(wú)線和網(wǎng)絡(luò)通訊技術(shù)基于嵌入式系統(tǒng)的家居控制器具有超低的功耗,可以穩(wěn)定運(yùn)行,具有十分廣闊的開展前景。通過(guò)對(duì)理論和設(shè)計(jì)實(shí)際的討論,本文智能家居控制系統(tǒng)的微處理器選用了S3C2410芯片,以嵌入式操作系統(tǒng)為軟件根底,以無(wú)線通訊技術(shù)為硬件根底,提出了一種本錢較低、性能較強(qiáng)的設(shè)計(jì)方案?,F(xiàn)在對(duì)本課題設(shè)計(jì)所完成的任務(wù)進(jìn)行如下總結(jié):1.確定了整體設(shè)計(jì)方案以及所用元器件。本設(shè)計(jì)選用的主控制器是三星的32位S3C2410處理器,在主分機(jī)無(wú)線通訊方面,選用nRF905射頻芯
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全球及中國(guó)飼料中間體化學(xué)品行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球高速標(biāo)簽打印機(jī)行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)汽車座椅加熱通風(fēng)線束行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球條形碼庫(kù)存管理系統(tǒng)行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025-2030全球生物基電池行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)農(nóng)場(chǎng)畜牧管理軟件行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球印刷級(jí)熱敏紙行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 擔(dān)保函保證合同
- 2025監(jiān)控售后維修合同
- 房屋買賣合同范文
- 如何提高售后服務(wù)的快速響應(yīng)能力
- ?;愤\(yùn)輸安全緊急救援與處理
- Unit-3-Reading-and-thinking課文詳解課件-高中英語(yǔ)人教版必修第二冊(cè)
- 高數(shù)(大一上)期末試題及答案
- 北方春節(jié)的十大風(fēng)俗
- 婚介公司紅娘管理制度
- 煤礦電氣試驗(yàn)規(guī)程
- JCT796-2013 回彈儀評(píng)定燒結(jié)普通磚強(qiáng)度等級(jí)的方法
- 物業(yè)客服培訓(xùn)課件PPT模板
- 火力發(fā)電廠節(jié)能管理制度實(shí)施細(xì)則
- 華為攜手深圳國(guó)際會(huì)展中心創(chuàng)建世界一流展館
評(píng)論
0/150
提交評(píng)論