<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式智能家居控制系統(tǒng)的研究與設(shè)計(jì)

          嵌入式智能家居控制系統(tǒng)的研究與設(shè)計(jì)

          作者: 時(shí)間:2010-02-01 來(lái)源:網(wǎng)絡(luò) 收藏
          定制Windows CE操作系統(tǒng)鏡像

          本文引用地址:http://www.ex-cimer.com/article/152107.htm


          PB定制基于本平臺(tái)的操作系統(tǒng)鏡像的步驟如下。


          (1)選擇板級(jí)支持包:本系統(tǒng)開(kāi)發(fā)板CPU是S3C2410,所以選“SAMSUNGSMDK2410:ARMV4”BSP。


          (2)選擇平臺(tái)類(lèi)型。本文選擇了手持設(shè)備。在“Available configurations”列表中,選擇“Mobile Handheld”,并輸入“Platform name:sbc2410”。


          (3)選擇基本類(lèi)庫(kù)及所需要的網(wǎng)絡(luò)通信服務(wù),平臺(tái)配置完畢。


          (4)右鍵單擊“SBC2410 features”選項(xiàng)的“Setting…”。在對(duì)話框Build Option屬性頁(yè)中,選擇[Enable Full Kernel Mode],Windows CE中所有線程都會(huì)運(yùn)行在核心態(tài)。這會(huì)使整個(gè)系統(tǒng)相對(duì)不穩(wěn)定,但是也可提高系統(tǒng)的運(yùn)行效率。選擇[Enable Images Larger than 32MB],Windows CE的最終運(yùn)行時(shí)映像可大于32MB。


          (5)利用Platform Builder進(jìn)行Windows CE.net操作系統(tǒng)的定制和開(kāi)發(fā)一個(gè)重要的步驟就是在Platform Builder提供的特性目錄(Catalog)中進(jìn)行特性選擇。這是因?yàn)镻latform Builder中已經(jīng)將Windows CE.net操作系統(tǒng)用到的大量的組件以特性(Feature)的形式列在特性目錄中。加入U(xiǎn)SB鍵盤(pán)鼠標(biāo)支持特性,加入U(xiǎn)SB移動(dòng)存儲(chǔ)設(shè)備(U盤(pán)、移動(dòng)硬盤(pán))支持,加入打印機(jī)設(shè)備相關(guān)的驅(qū)動(dòng)(如果不加入打印機(jī)設(shè)備相關(guān)的驅(qū)動(dòng),在編譯應(yīng)用程序時(shí)會(huì)出現(xiàn)“syntax error:identifier ‘LPDOCINFO’”錯(cuò)誤),加入網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)。


          (6)更改適合自己網(wǎng)絡(luò)環(huán)境的IP地址、DNS、網(wǎng)關(guān)地址等網(wǎng)絡(luò)參數(shù),通過(guò)編輯platform.reg平臺(tái)注冊(cè)表文件中相關(guān)的鍵值,來(lái)修改網(wǎng)絡(luò)參數(shù)。我的PC的IP:202.114.57.102,所以目標(biāo)機(jī)的IP設(shè)定為202.114.57.10,在同一網(wǎng)段內(nèi)。


          (7)單擊菜單Build→Build Platform開(kāi)始編譯系統(tǒng)。編譯完畢,將會(huì)在C:WINCE420PUBLICsbc2410RelDirSAMSUNG_SMDK2410ARMV4Release目錄下生成NK.bin和NK.nb0映像文件。編譯開(kāi)始大約10分鐘后看到編譯信息:SBC2410-0 error(s),30 warning(s)。有警告是正常的,因?yàn)槟承┙M件是有風(fēng)險(xiǎn)的,例如,一些網(wǎng)絡(luò)組件,所以只要沒(méi)有錯(cuò)誤,說(shuō)明定制沒(méi)有問(wèn)題。


          此時(shí),我們用USB電纜連接主機(jī)和目標(biāo)機(jī)(開(kāi)發(fā)板),在PC端已安裝了SAMSUNG提供的USB驅(qū)動(dòng)的前提下,使用2410提供的專(zhuān)用下載工具DNW把生成的NK.bin和NK.nb0下載到開(kāi)發(fā)板中,這樣根據(jù)我們的目標(biāo)機(jī)系統(tǒng)定制的Windows CE就可以在開(kāi)發(fā)平臺(tái)上正常運(yùn)行了。
          創(chuàng)建平臺(tái)SDK


          完成了平臺(tái)的定制后,接著可以利用Platform Builder來(lái)創(chuàng)建SDK,SDK為平臺(tái)上其他應(yīng)用程序的開(kāi)發(fā)提供支持。SDK(Software Development Kit)是一系列頭文件、庫(kù)文件、文檔、平臺(tái)管理器和運(yùn)行時(shí)庫(kù)的總稱(chēng)。一旦創(chuàng)建了SDK,就可以將它導(dǎo)出或者安裝到別的計(jì)算機(jī)上,開(kāi)發(fā)者可以將創(chuàng)建的SDK導(dǎo)入Embedded Visual C++或 Visual Studio中,進(jìn)行應(yīng)用程序的開(kāi)發(fā)、調(diào)試和運(yùn)行。


          在Embedded Visual C++中,提供了Platform Manager來(lái)管理已經(jīng)安裝的SDK。注意,在安裝開(kāi)發(fā)工具時(shí),默認(rèn)會(huì)安裝一個(gè)稱(chēng)作“Standard SDK”的SDK。由于Windows CE操作系統(tǒng)特性,不可能存在“標(biāo)準(zhǔn)”的SDK。所謂Standard SDK,只不過(guò)是微軟把Windows CE中最常用的一些功能取出來(lái)作為一個(gè)“標(biāo)準(zhǔn)”的SDK,使用Standard SDK開(kāi)發(fā)的應(yīng)用程序,可在大多數(shù)Windows CE平臺(tái)上運(yùn)行。但是Standard SDK也并不是萬(wàn)能的,例如,Standard SDK不支持中文和DirectX等。Platform Builder提供了SDK Wizard向?qū)В瑏?lái)創(chuàng)建和生成SDK,最后Build過(guò)程完成后即可生成名為SBC2410_SDK.msi的SDK文件。此時(shí)在生成目錄中找到SBC2410_SDK.msi,雙擊安裝,就可以將生成的SDK安裝到EVC中進(jìn)行應(yīng)用程序的開(kāi)發(fā)了。


          2 應(yīng)用軟件開(kāi)發(fā)
          目前,針對(duì)Windows CE應(yīng)用開(kāi)發(fā)的軟件有很多種,在使用的時(shí)候根據(jù)具體情況選擇適合應(yīng)用的軟件開(kāi)發(fā)工具。Embedded Visual C++支持WinCE App/DLL/COM/Lib using Win32 API,MFC,ATL and STL等功能,它與Visual C++6.0具有相似的工程管理模式和用戶界面,易于調(diào)試和測(cè)試。但是必須安裝相應(yīng)的為特定平臺(tái)開(kāi)發(fā)的SDK,本文就是自己導(dǎo)出的SDK。


          系統(tǒng)的主機(jī)應(yīng)用程序通過(guò)兩個(gè)對(duì)話框?qū)崿F(xiàn)分機(jī)設(shè)備的基本讀/寫(xiě)過(guò)程:Measure對(duì)話框主要實(shí)現(xiàn)對(duì)輸入量信息的采集及對(duì)系統(tǒng)運(yùn)行狀態(tài)的監(jiān)視,Control對(duì)話框主要用于主機(jī)發(fā)送控制信息給分機(jī)系統(tǒng)。這兩個(gè)對(duì)話框通過(guò)主窗體調(diào)用完成對(duì)整個(gè)家居系統(tǒng)的測(cè)量與控制。主機(jī)應(yīng)用程序流程圖如圖3所示。系統(tǒng)應(yīng)用程序以1路模擬量輸入、3路數(shù)字量輸入及相應(yīng)的4路輸出控制量為例實(shí)現(xiàn)智能控制功能。

          圖3 主機(jī)應(yīng)用程序流程圖

          圖4 運(yùn)行界面


          EVC的開(kāi)發(fā)環(huán)境與Visual C++基本一致。首先,選擇項(xiàng)目類(lèi)型、項(xiàng)目存放路徑、項(xiàng)目名稱(chēng)及平臺(tái)類(lèi)型;然后選擇項(xiàng)目的樣式和支持的語(yǔ)言;接下來(lái),確定一些其他的選項(xiàng);選擇完畢后,就可以得到一個(gè)程序的框架。項(xiàng)目類(lèi)型我們選擇WCE MFC APPWizard,項(xiàng)目名稱(chēng)為SmartHome,在支持的CPU類(lèi)型中我們選中了ARM和X86(應(yīng)該根據(jù)開(kāi)發(fā)環(huán)境來(lái)選擇)。對(duì)于我們來(lái)說(shuō),首先要在PC上進(jìn)行調(diào)試,然后編譯成適合使用的應(yīng)用程序,目標(biāo)機(jī)是ARM CPU,所以我們需要WCE X86和WCE ARM。(如果你要開(kāi)發(fā)商用軟件或者想讓更多的人使用你的程序,應(yīng)該考慮更多種類(lèi)的CPU)編譯運(yùn)行,成功啟動(dòng)Microsoft ActiveSync同步軟件,這時(shí)可將在PC上生成的exe文件復(fù)制到移動(dòng)設(shè)備下My Documents文件夾下。系統(tǒng)應(yīng)用程序以1路模擬量、3路數(shù)字量輸入及相應(yīng)的4路輸出控制量為例實(shí)現(xiàn)智能控制功能,如圖4所示。

          linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();