色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > “零基礎(chǔ)”學(xué)習(xí)WinCE開發(fā)

          “零基礎(chǔ)”學(xué)習(xí)WinCE開發(fā)

          作者: 時(shí)間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

          在接觸時(shí)候的基礎(chǔ):

          本文引用地址:http://cafeforensic.com/article/201609/303405.htm

          軟件語言基礎(chǔ):C/C++/C#。我不是計(jì)算機(jī)專業(yè)的,所以這些語言基礎(chǔ)也是比較業(yè)余的。經(jīng)驗(yàn)不豐富,遇到問題就是查MSDN或者到網(wǎng)上查找相關(guān)解決方案即可,程序就有這點(diǎn)好處,很多東西都是成熟的技術(shù),到網(wǎng)上甚至連源碼都能找到的。

          硬件平臺(tái)基礎(chǔ):用的是廣州致遠(yuǎn)的開發(fā)板EPCS-6960I-W,這種小型工控板自帶系統(tǒng),而且有比較多的硬件接口可以用來進(jìn)行數(shù)據(jù)采集和數(shù)據(jù)通訊。

          學(xué)習(xí)資源:廣州致遠(yuǎn)公司會(huì)提供一張學(xué)習(xí)光盤,里面有相應(yīng)的開發(fā)示例和工控板的電路結(jié)構(gòu)及一些硬件驅(qū)動(dòng)。在安裝了廠家提供的EPCS-6960I-W工控板對(duì)應(yīng)的SDK開發(fā)包后,會(huì)在相應(yīng)的目錄下找到的幫助文檔,里面對(duì)WinCE系統(tǒng)的相關(guān)API的詳細(xì)介紹。還有就是到遇到問題可以到網(wǎng)上找解決方法,或者直接打電話到廠家的技術(shù)部進(jìn)行咨詢。

          1. 認(rèn)識(shí)WinCE

          Windows CE 是微軟公司開發(fā)的一個(gè)針對(duì)小型設(shè)備(它是典型的擁有有限內(nèi)存的無磁盤系統(tǒng))的通用操作系統(tǒng)。主要用于嵌入式系統(tǒng)和移動(dòng)終端設(shè)備上,操作界面和PC機(jī)上的 WinXp系統(tǒng)比較類似,例如也是窗口化的操作界面,也具有磁盤資源管理器,文件系統(tǒng)和網(wǎng)絡(luò)通訊協(xié)議和WinXp一樣,程序開發(fā)也和WinXp環(huán)境下的程序開發(fā)。具體關(guān)于WinCE的介紹可以到網(wǎng)上搜索相關(guān)資料。個(gè)人的理解就是,WinCE可以看作一個(gè)精簡后的WinXp系統(tǒng),“麻雀雖小,五臟俱全”,在一些小型工控系統(tǒng)中可以發(fā)揮巨大的作用。

          2. 開發(fā)環(huán)境

          2.1 連接設(shè)備

          先安裝ActiveSync4.2同步軟件。安裝完畢后,你的PC機(jī)上的資源管理器中會(huì)多一個(gè)“移動(dòng)設(shè)備”的圖標(biāo)(如下圖),這個(gè)就是和移動(dòng)設(shè)備進(jìn)行文件交互的接口。通過這個(gè)接口,用戶可以在PC機(jī)上對(duì)移動(dòng)設(shè)備的文件進(jìn)行讀取的相關(guān)簡單操作。

          clip_image002

          將工控機(jī)主板用USB連接到PC機(jī)上,給主板接上電源并啟動(dòng)WinCE系統(tǒng)。然后在PC端Micrsoft ActiveSync同步軟件會(huì)自動(dòng)進(jìn)行檢測,并連接到移動(dòng)設(shè)備。連接成功后,會(huì)有如下圖的提示出現(xiàn)。

          clip_image004

          當(dāng)PC機(jī)和移動(dòng)設(shè)備成功建立連接后,用戶就能以PC機(jī)上的資源管理器中的“移動(dòng)設(shè)備”作為入口對(duì)移動(dòng)設(shè)備進(jìn)行文件訪問和其它相關(guān)操作了,比如,假如你是利用PC側(cè)的WinCE模擬器開發(fā)的程序,那么生成的執(zhí)行文件也在PC上,你可以通過“移動(dòng)設(shè)備”接口,將你的程序文件“下載”到移動(dòng)設(shè)備中。

          clip_image006

          注意:只有連接設(shè)備成功了,才能進(jìn)行后面的程序開發(fā)和調(diào)試。

          小建議:最開始的時(shí)候,都以為WinCE開發(fā)只需要一塊安裝了WinCE系統(tǒng)的工控板即可,不需要LCD,然后就直接黑燈瞎火地弄了一個(gè)月,最后實(shí)在忍受不了,然后花了800RMB買了一塊配套液晶板,才突然感覺好起來。開發(fā)Windows程序的時(shí)候,液晶板是必需的,否則你在開發(fā)的時(shí)候?qū)?huì)很難受的,就像給了你一臺(tái)沒有顯示器的電腦,雖然你可以通過鼠標(biāo)進(jìn)行盲操作,但那種感覺應(yīng)該是比較糟糕的吧。

          2.2 開發(fā)環(huán)境中需要進(jìn)行的設(shè)置。

          本次開發(fā)選用的環(huán)境是VS2005,雖然網(wǎng)上很多例程都是用Microsoft eMbedded C++ 4.0(以下簡稱eVC4.0)進(jìn)行開發(fā)的,但是個(gè)人感覺VS2005的功能更強(qiáng)大一些,體驗(yàn)也更好一些。eVC4.0和開發(fā)界面和VC6.0一樣(如下圖),是一款比較經(jīng)典的開發(fā)環(huán)境,喜歡VC6.0風(fēng)格的用戶可以選用eVC4.0進(jìn)行開發(fā)。

          clip_image008

          clip_image010

          2.3 開發(fā)語言選擇

          WinCE5.0的版本,支持C/C++/C#。因?yàn)橹С諧#,也就是說在WinCE5.0集成了.NET框架,但是因?yàn)閃inCE系統(tǒng)在工控板上的應(yīng)用,屬于比較底層的應(yīng)用,會(huì)涉及較多的硬件接口的開發(fā),所以一般建議用C++進(jìn)行開發(fā),但是因?yàn)镃#在高層應(yīng)用上的開發(fā)具有難度低、周期短的特點(diǎn),所以可以進(jìn)行兩種語言的混合編程的(在今后的“DLL應(yīng)用”中將會(huì)講到這種技術(shù)的應(yīng)用)。

          2.4 開發(fā)環(huán)境的設(shè)置

          2.4.1 C#項(xiàng)目的建立和設(shè)置

          用VS2005建立智能設(shè)備Windows CE 5.0的C#項(xiàng)目,開發(fā)環(huán)境就會(huì)自動(dòng)建立一個(gè)模板,用戶可以在此代碼模板中寫自己的程序了。

          clip_image012

          但是此時(shí)如果點(diǎn)擊調(diào)試,將彈出一個(gè)移動(dòng)設(shè)備模擬器,不能和實(shí)際的工控板硬件進(jìn)行連接調(diào)試,所以需要進(jìn)行相關(guān)設(shè)置。在解決方案資源管理器中,選中項(xiàng)目,右擊-屬性,然后會(huì)彈出屬性設(shè)置頁面。

          clip_image014

          在“設(shè)備”選項(xiàng)卡中的部署選項(xiàng)的目標(biāo)設(shè)備選擇為“Windows CE 設(shè)備”,這個(gè)時(shí)候就可以連接工控機(jī)設(shè)備了。輸出文件文件夾中

          “%CSIDL_PROGRAM_FILES%WinCeCsUseDll”

          表示的是在WinCE設(shè)備中的根目錄下的Program Files文件夾中的WinCeCsUseDll目錄下生成此項(xiàng)目的相關(guān)文件。點(diǎn)擊右邊的“瀏覽”按鈕可以進(jìn)行相關(guān)的設(shè)置。因?yàn)楣た貦C(jī)上的除了放在 FlashDisk里面的東西在斷電后不會(huì)丟失外,其余的都會(huì)丟失,所以,你可以通過對(duì)此路徑的設(shè)置,將你的程序生成的目錄放在FlashDisk中,這樣斷電了也不會(huì)丟失了。

          2.4.2 C++項(xiàng)目的建立和設(shè)置

          選擇項(xiàng)目類型:

          clip_image016

          選擇SDK開發(fā)包(工控機(jī)廠家會(huì)提供相應(yīng)的開發(fā)軟件包的):

          clip_image018

          選擇相應(yīng)的開發(fā)環(huán)境:窗口程序,控制臺(tái)程序,DLL和表態(tài)庫,等等。例如,選擇建立“控制臺(tái)應(yīng)用程序”并添加MFC支持:

          clip_image020

          然后點(diǎn)擊完成,VS2005就自動(dòng)為你創(chuàng)建了程序模板了。

          在項(xiàng)目屬性中有一些設(shè)置需要注意一下。在項(xiàng)目解決方案瀏覽器中,右擊項(xiàng)目并選擇屬性,會(huì)彈出一個(gè)屬性對(duì)話框。“部署”選項(xiàng)卡中的“遠(yuǎn)程目錄”是指你的項(xiàng)目在WinCE工控機(jī)上生成的對(duì)應(yīng)目錄。“調(diào)試”選項(xiàng)卡中的“遠(yuǎn)程可執(zhí)行文件”是指你程序調(diào)試要調(diào)用的執(zhí)行文件(注意:如果你建立的是DLL項(xiàng)目,那么,這個(gè)地方要修改一下,修改成調(diào)用了此DLL文件的EXE執(zhí)行程序,只有這樣DLL項(xiàng)目才能夠進(jìn)行調(diào)試)。

          clip_image022

          例如:部署遠(yuǎn)程目錄為

          %CSIDL_PROGRAM_FILES%WinCeCsUseDll

          表示,你在PC機(jī)上對(duì)項(xiàng)目進(jìn)行部署后,你可以在你的WinCE工控機(jī)的根目錄下的Program Files文件夾下的WinCeCsUseDll文件夾下找到此項(xiàng)目的相關(guān)生成文件。

          clip_image024

          例如:調(diào)試選項(xiàng)卡下的遠(yuǎn)程可執(zhí)行文件目錄為:

          %CSIDL_PROGRAM_FILES%WinCeCsUseDllWinCeCsUseDll.exe

          表示,當(dāng)你在PC機(jī)上調(diào)試此項(xiàng)目的時(shí)候,會(huì)調(diào)用的EXE文件目錄。在你選擇調(diào)試的時(shí)候,VS2005會(huì)先執(zhí)行“部署”也就是會(huì)在WinCE設(shè)備的相應(yīng)目錄下生成相關(guān)的文件,然后再進(jìn)行調(diào)用和調(diào)試。如果開發(fā)的是DLL程序,那么,就更好理解了,就是直接啟動(dòng)一個(gè)對(duì)此DLL進(jìn)行了調(diào)用的EXE文件,然后對(duì)引DLL的源碼進(jìn)行調(diào)試。

          小技巧:如果是編寫DLL程序,那么就要同時(shí)編寫一個(gè)調(diào)用此DLL的EXE程序,因?yàn)槟阏{(diào)試DLL程序或者調(diào)用DLL文件的時(shí)候,都需要保證EXE程序和DLL文件在同一目錄下,所以,可以在項(xiàng)目屬性將對(duì)兩項(xiàng)目的部署路徑進(jìn)行設(shè)置,放在同一目錄下面,并將 DLL的調(diào)試所需要調(diào)用的程序的路徑設(shè)置成你編寫的EXE文件路徑。

          3. 開發(fā)過程中的學(xué)習(xí)資源

          如果對(duì)上面的基本知識(shí)了解了,那么后面的基本就是你的編程水平的體現(xiàn)了。遇到問題后的解決方法和你進(jìn)行XP桌面程序開發(fā)一樣了,因?yàn)閃inCE可以理解成一個(gè)小型化的WinXp系統(tǒng),所以,如果你有Xp系統(tǒng)的開發(fā)經(jīng)驗(yàn),那么你就能夠比較快速入門。主要的學(xué)習(xí)參考資料如下:

          3.1微軟幫助文檔MSDN

          一般本地的MSDN是面向XP平臺(tái)的桌面應(yīng)用程序的,但是因?yàn)閃inCE有很多的類似,所以,一些基本的API方法也是可以移植到WinCE上的。不過,建議直接用在線的MSDN,里面有專門針對(duì)WinCE開發(fā)的幫助。

          http://msdn.microsoft.com/en-US/library/ms899235.aspx

          clip_image026

          在線幫助文檔的目錄如上所示。注意是一層一層往下展開的。

          3.2 工控板生產(chǎn)廠家提供的幫助文檔

          當(dāng)你安裝了工控板生產(chǎn)廠家提供的SDK開發(fā)包后,就會(huì)在相應(yīng)的目錄下找到幫助文檔了。例如安裝了EPCS6960的SDK后,會(huì)在目錄

          C:Program FilesWindows CE Toolswce500EPCS_6960Help

          里面找到相應(yīng)的本地WinCE開發(fā)幫助文檔。

          clip_image028

          3.2 網(wǎng)絡(luò)論壇

          到網(wǎng)上多搜索相關(guān)帖子,即使解決不了你的問題,但總會(huì)給你一些啟發(fā)的。即使專門針對(duì)WinCE的帖子不多,但是你可以找WinXp的,一般都是可以移植的(C++的移植性要好一些,但是C#可能移植性差一點(diǎn),因?yàn)閃inCE下安裝的只是一個(gè)精簡的.NET框架)

          總述:做了上述的準(zhǔn)備工作后,后面的就是“體力活”了。任何所謂的腦力勞動(dòng)都是這樣的,當(dāng)你掌握了基本技能后,腦力活動(dòng)也就變成了體力活動(dòng)了。好,有了這些基本的技能后,就開始解決問題吧。

          注:購買硬件平臺(tái)的價(jià)格比較高,比如EPCS6960的工控板一套就要接近兩千,一個(gè)液晶屏又要將近800,所以對(duì)于初學(xué)者,可以自己到網(wǎng)上下載WinCE模擬器,軟件仿真WinCE操作系統(tǒng),熟悉WinCE下的程序設(shè)計(jì)。用硬件工控板的主要好處就是,有硬件接口及相應(yīng)的驅(qū)動(dòng)程序提供給開發(fā)人員,可以進(jìn)行現(xiàn)場數(shù)據(jù)采集和控制。



          關(guān)鍵詞: WinCE

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉