亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Windows CE 移植電火花線切割加工數(shù)控編程系統(tǒng)的研究

        2013-09-10 04:09:24魏萬根張永俊黃志剛
        電加工與模具 2013年5期
        關(guān)鍵詞:嵌入式調(diào)試程序

        魏萬根,張永俊,黃志剛

        (廣東工業(yè)大學(xué)機電工程學(xué)院,廣東廣州 510006)

        微軟推出的嵌入式操作系統(tǒng)Windows CE 是一個基于32 位、嵌入式、多任務(wù)、實時性能好、通信能力強大、具有模塊化特性的操作系統(tǒng),適應(yīng)各種嵌入式系統(tǒng)和產(chǎn)品。Windows CE 的可裁剪特性與模塊化設(shè)計方式,使系統(tǒng)及應(yīng)用開發(fā)人員能夠為各種不同的產(chǎn)品來定制它。由于擁有自己的系統(tǒng)結(jié)構(gòu),具備獨立開發(fā)的內(nèi)核,因此被廣泛應(yīng)用于移動計算設(shè)備、工業(yè)控制、車載電子、智能家電、移動通信等領(lǐng)域,使其成為當今嵌入式領(lǐng)域應(yīng)用最廣泛、市場增長最快、最具發(fā)展?jié)摿Φ那度胧讲僮飨到y(tǒng)。本文基于Windows CE 嵌入式移植Windows 軟件,是滿足嵌入式應(yīng)用軟件快速增長需求的一個重要途徑;而移植后的基于Windows CE 平臺的WEDM(電火花線切割)數(shù)控自動編程系統(tǒng),將克服惡劣工業(yè)環(huán)境下控制系統(tǒng)的嚴重不足。

        1 Windows CE 與Windows的區(qū)別

        1.1 Windows CE 的特性

        (1)可裁剪定制內(nèi)核

        Windows CE 是為嵌入式系統(tǒng)設(shè)備(如手持移動設(shè)備)而設(shè)計的操作系統(tǒng),一般這類設(shè)備的硬件資源有限(包括RAM、CPU 處理能力等)。這樣,用戶在定制操作系統(tǒng)時,根據(jù)功能需求,在滿足設(shè)備功能要求的前提下,盡可能地只選擇必需的模塊加入操作系統(tǒng)中,不需要的模塊組件裁剪出去,最后生成的操作系統(tǒng)映像體積小,能滿足在硬件資源受限的設(shè)備上正常運行。Windows CE 內(nèi)核的最小容量只占200 kB,如果增加圖形界面或網(wǎng)絡(luò)支持,內(nèi)核體積大概4 MB 左右。

        (2)跨平臺支持

        由于嵌入式設(shè)備的CPU 體系多種多樣,為了適應(yīng)Windows CE 嵌入式系統(tǒng)在異構(gòu)平臺上的正常運行,微軟設(shè)計的Windows CE 操作系統(tǒng)支持包括x86、ARM、MIPS、SuperH 等主流的CPU 體系結(jié)構(gòu)。

        (3)出色的圖形界面

        Windows CE 之所以取得巨大的成功,其中一個主要原因就是具有出色的圖形交互界面,極大地方便了非專業(yè)用戶的使用,人們不再需要死記硬背大量的命令,而是能通過窗口和菜單方便的操作。

        (4)良好的通信能力

        Windows CE 廣泛支持各種通信硬件、局域網(wǎng)連接和撥號連接,可用于各種級別的數(shù)據(jù)傳輸和設(shè)備之間的連接。由于同為微軟公司的產(chǎn)品,因此它還提供與Windows 9x/NT/XP 的整合及通信。

        (5)高效的開發(fā)工具支持

        從Windows CE 6.0 開始,微軟已將Platform Builder for Windows CE 6.0 作為Microsoft Visual Studio 2005(簡稱VS.NET 2005)的插件集成進VS.NET 開發(fā)平臺中,這就將Windows CE 操作系統(tǒng)定制、驅(qū)動程序開發(fā)、應(yīng)用程序開發(fā)全部統(tǒng)一到VS.NET 2005 環(huán)境中,使Windows CE 的系統(tǒng)開發(fā)與桌面開發(fā)共享一種開發(fā)平臺。

        1.2 Windows CE 與Windows 的區(qū)別

        雖然Windows CE 系統(tǒng)屬于Windows 家族,但兩者具有不同特性,主要體現(xiàn)在:

        (1)Windows CE APIs和Win32 API 的不同

        與Windows 95/NT/2000/XP/Vista 的API 相比,Windows CE API 是Win32 API 的一個子集,且其中部分函數(shù)的功能已精簡,如對顏色和字體的支持更加有限。Windows CE APIs 相對于Win32 API 擴展了一些特定功能,如通知(notification)和觸摸屏(touch screen)需要硬件功能的支持。此外,對異常處理也具有使用限制等。因此,桌面上正常運行的應(yīng)用程序都不能直接在Windows CE 上運行,開發(fā)者需通過其他辦法重新編排程序結(jié)構(gòu)和函數(shù)來實現(xiàn)這些功能。

        (2)Windows CE 的MFC和標準MFC 的不同

        Windows CE 不支持桌面MFC 所有類,如Windows CE 中的MFC 不支持數(shù)據(jù)庫連接中的Data Access Object(DAO)與Open Database Connectivity(ODBC),以及Multiple-Document Interface(MDI)用戶界面、Object Linking and Embedding(OLE)和Rich Edit 控件,因此,需增加、修改和刪除一些類。新增類有CCeSocket、CCeDBEnum、CCeDBDatabase、CCeDBProp和IRecord 等類別,刪除類如CFontDialog和CPrintSetupDialog,因此,也就沒有Font Selection 對話框和Printer Setup 對話框。

        (3)存儲器容量的不同

        桌面Windows 最早擁有512 M 內(nèi)存,如今已發(fā)展到1~2 GB,但Windows CE 設(shè)備一般都配置少量的RAM、頻率較低的微處理器,且像臺式PC 上大容量的存儲設(shè)備和磁盤基本都沒有。Windows CE在內(nèi)存管理方面必須要比其他Windows 操作系統(tǒng)更節(jié)約物理內(nèi)存和虛擬地址空間。當移植一個應(yīng)用程序到Windows CE 時,應(yīng)著眼于頻繁使用的功能。在程序中建立全局內(nèi)存使用機制,自行監(jiān)控、管理內(nèi)存及GDI 對象,避免頻繁的內(nèi)存分配和GDI 創(chuàng)建、銷毀操作。

        (4)測試和調(diào)試的不同

        開發(fā)Win32 目標系統(tǒng)應(yīng)用程序,所有的測試和調(diào)試直接在PC 上完成。但Windows CE 卻不同,如果為一個標準的Windows CE 目標系統(tǒng)開發(fā)程序,基本上所有的開發(fā)和調(diào)試工作在開發(fā)工具提供的Windows CE 仿真環(huán)境中進行。而如果是基于非標準的硬件平臺,當仿真環(huán)境中調(diào)試成功的程序真正運行在目標系統(tǒng)上時,難免出現(xiàn)許多意外的故障,因此,需考慮采用另一種辦法替代虛擬的檢測環(huán)境。Windows CE API 包含了用于調(diào)試的接口(如DebugActiveProcess和DebugEvent),以此建立系統(tǒng)內(nèi)測試;或依據(jù)目標硬件和應(yīng)用程序,使用Windows CE 的Remote API 功能進行輔助調(diào)試。

        此外,Windows CE 設(shè)備電源有限;Windows CE縮減了C/C++運行庫(RTL);由于大部分Windows CE 設(shè)備采用觸摸屏設(shè)計,沒有鼠標,人機交互方式由指示筆輕擊屏幕完成;硬件平臺是一個嵌入式系統(tǒng)存在的必要條件,是嵌入式操作系統(tǒng)運行的基礎(chǔ),Windows CE 不像PC 那樣有標準的配置,硬件并不標準化,在嵌入式系統(tǒng)領(lǐng)域,由于設(shè)備制造商都是由不同領(lǐng)域不同的應(yīng)用廠商發(fā)展而來,所以硬件結(jié)構(gòu)相對復(fù)雜、不盡相同,僅CPU 體系結(jié)構(gòu)就有多種,因此會加大程序開發(fā)的難度;Windows CE 驅(qū)動程序有內(nèi)核和用戶2 種模式,默認運行在內(nèi)核模式,這有利于性能設(shè)備的提高,但也增加了影響系統(tǒng)各方面性能的不確定因素,如不穩(wěn)定的驅(qū)動被加入到內(nèi)核,將會對嵌入式系統(tǒng)的可靠性、穩(wěn)定性等多方面性能產(chǎn)生致命的影響。

        2 Windows CE 應(yīng)用程序的開發(fā)流程

        第一步:搭建應(yīng)用程序開發(fā)平臺,按順序安裝軟件。

        第二步:設(shè)計系統(tǒng)硬件。不同于PC 機追求容量大、功能全,嵌入式系統(tǒng)的硬件選型設(shè)計,在功能符合要求的條件下,盡量去除不需要的硬件部件,以此降低開發(fā)成本和增加系統(tǒng)穩(wěn)定性。

        第三步:開發(fā)BSP。BSP 是介于主板硬件和操作系統(tǒng)之間的一件軟件層,有了BSP 抽象層后,Windows CE 就能通過它間接地和硬件進行通信,讓操作系統(tǒng)在不同體系結(jié)構(gòu)的硬件平臺上移植運行。BSP 與特定的嵌入式操作系統(tǒng)相關(guān),并與開發(fā)板一一對應(yīng)。

        第四步:定制操作系統(tǒng)模塊。

        第五步:完成以上定制后,編譯形成nk.bin 或nk.nb0 文件,至此,Windows CE 的內(nèi)核定制完成。

        第六步:定制與安裝SDK,聯(lián)機調(diào)試建立開發(fā)環(huán)境。

        第七步:開發(fā)應(yīng)用程序,最后形成用戶程序文件.exe、.cab。

        第八步:安裝并通過同步軟件ActiveSync 或網(wǎng)絡(luò)功能下載至Flash,脫機運行。

        Windows 嵌入式系統(tǒng)的開發(fā)比PC 機端開發(fā)復(fù)雜得多,因為PC 機端開發(fā)基本上是純軟件的應(yīng)用開發(fā),而嵌入式系統(tǒng)開發(fā)既要考慮硬件平臺設(shè)計,又要開發(fā)平臺上的應(yīng)用軟件以及庫函數(shù)兼容等各類問題。

        3 移植Windows 程序到Windows CE 的關(guān)鍵要素

        (1)當從PC 平臺移植已有的Win32 應(yīng)用程序到Windows CE 時,主要工作是找到合適的Windows CE API 來替換原有的Win32 API。如Windows CE 去掉了桌面Windows 中的一些用來向前兼容DOS和Windows 3.x 的函數(shù)。因此,移植程序往往考慮改變程序邏輯繞過這些函數(shù)或類;或是提供另一個函數(shù)或一系列函數(shù)的組合,來實現(xiàn)那個函數(shù)的功能;再者,自己編寫函數(shù)或類執(zhí)行與所缺函數(shù)和類相同的任務(wù);最后,尋找其他組織的解決方案。

        (2)由于EVC 只支持單文檔的應(yīng)用程序,所以應(yīng)將多文檔程序轉(zhuǎn)換為單文檔程序,該過程主要在VC 平臺上進行。主要步驟是:首先,查找代碼中的CMultiDoc 將其替換為CSingleDoc;其次,查找到CProjectApp 類中的InitInstance 函數(shù),將多文檔模塊改為添加單文檔模塊;最后,在頭文件和源文件中分別找到CMainFram 函數(shù),將其繼承關(guān)系改為CFrameWnd。相應(yīng)地將CMainFrame 里面頭文件內(nèi)的宏改為DECLARE_DYNCREATE(CMainFrame),同時,源文件里面的宏也相應(yīng)地改為IMPLEMENT_DYNCREATE(CMainFrame,CFrameWnd)。

        (3)VC 編程使用的是ASCII 文本,而在Windows CE 系統(tǒng)環(huán)境下使用的是Unicode 碼。因此,在編譯過程中,一些輸出文本語句會報錯。解決的辦法是:包含Tchar.h 文件;使用Win32 字符串函數(shù)而不是C 運行時態(tài)庫的函數(shù);聲明中使用TCHAR、LPTSTR和其他類型;增加一個數(shù)組指針或字符計數(shù)時,使用sizeof;使用TEXT 宏和_T 宏進行字符串映射。另外,數(shù)據(jù)結(jié)構(gòu)類型的不匹配也會導(dǎo)致報錯。

        (4)用戶界面問題。Windows CE 設(shè)備的屏幕空間較小,為了減少占用,菜單和工具欄不再設(shè)計為獨立的,而是都被包含在命令欄中。命令欄中包含了菜單、按鈕和組合框等,有效節(jié)省Windows CE 設(shè)備較小的屏幕空間,這也正是其界面的獨特所在。但命令欄沒有停靠功能,通常被指定在屏幕的頂部?;赪indows CE MFC 的窗口創(chuàng)建函數(shù)的主要代碼為:

        因此,在掌握CAWEP 功能設(shè)計、數(shù)據(jù)設(shè)計、界面設(shè)計的前提下,按照以上要點將不符合Windows CE 運行環(huán)境的部分進行刪減、替換或重構(gòu),使移植后的CAWEP 在滿足圖形處理和代碼輸出兩大功能的前提下,外觀精簡舒適、系統(tǒng)穩(wěn)定高效。

        4 實現(xiàn)Windows CE 與Windows 同步測試環(huán)境

        4.1 建立同步

        在定制Windows CE 操作系統(tǒng)后,安裝SDK,對于如何實現(xiàn)宿主機與目標機同步是開發(fā)應(yīng)用程序的重要環(huán)節(jié)(圖1)。基于天嵌TQ2440 開發(fā)板為硬件平臺,論述以下幾個主要步驟:

        (1)安裝ActiveSync_4.1_setup.exe。

        (2)啟動Windows CE 系統(tǒng),將PC 的USB 接口與Windows CE 的USB Device 接口連接,PC 端會要求安裝USB 驅(qū)動,在網(wǎng)上下載或直接使用商家提供的驅(qū)動程序,安裝SECBULK 文件。

        (3)連接同步時,需要將目標機時間修改為宿主機當前時。

        圖1 宿主機與目標機建立同步

        4.2 同步運行試驗程序

        在宿主機上先編寫一個程序,建立與目標機同步后,向目標機發(fā)送指令代碼,可看到其在目標機上的運行情況。主要操作過程如下:

        (1)調(diào)出程序。

        (2)選擇菜單“工具欄”—“連接到設(shè)備”,前提是安裝好TQ2440A_SDK。連接成功后(圖2),對話框顯示“至‘TQ2440A_SDK ARMV4I Device’連接成功”。

        圖2 TQ2440A_SDK ARMV4I Device 連接成功

        (3)選擇菜單“調(diào)試”—“啟動調(diào)試”,在開發(fā)工具下端窗口顯示編譯過程。編譯成功后,生成.exe或.cab 文件后,發(fā)送至目標機執(zhí)行程序。程序結(jié)果見圖3。

        圖3 程序運行結(jié)果

        同步工作完成后,即可在PC 端自由設(shè)計程序,根據(jù)Windows 與Windows CE 的異同,及移植程序要素,實戰(zhàn)裝載進目標機測試,從而完成軟件的開發(fā)、移植。

        5 CAWEP 移植后的初期預(yù)想界面

        計算機輔助線切割數(shù)控編程系統(tǒng)CAWEP 在Windows 上運行的界面、功能模塊及結(jié)構(gòu)關(guān)系見圖4和圖5。移植到Windows CE 系統(tǒng)后,基本上繼承了在Windows 環(huán)境下運行的絕大部分功能,能實現(xiàn)在設(shè)備屏幕上創(chuàng)建和編輯2D 矢量制表及模板、文件轉(zhuǎn)換、仿真加工、模擬軌跡、生成輸出B 及ISO 代碼(G 代碼),再通過使用點對點協(xié)議(PPP)和串行線路互聯(lián)協(xié)議(SLIP)進行直接或撥號連接,傳輸代碼至解釋模塊,從而實現(xiàn)一體化控制線切割機床的加工,這種新型的加工控制方式,也將給用戶帶來全新的創(chuàng)意體驗。CAWEP 移植后,在Windows CE上運行的初期預(yù)想界面見圖6。

        圖4 CAWEP 在Windows 上運行的界面

        圖5 CAWEP 系統(tǒng)功能設(shè)計

        圖6 CAWEP 在Windows CE 上運行的預(yù)想界面

        6 結(jié)束語

        工業(yè)化PC 數(shù)控系統(tǒng)由于振動、灰塵、潮濕、高溫及其他環(huán)境影響,經(jīng)常會出現(xiàn)故障和數(shù)據(jù)丟失。而正值Windows CE 操作系統(tǒng)被嵌入式領(lǐng)域廣泛應(yīng)用的數(shù)字時代,基于該平臺應(yīng)用軟件的開發(fā)需求已成為不可抵擋的趨勢。在掌握Windows CE 與Windows 應(yīng)用程序之間的聯(lián)系和區(qū)別之后,將對Windows CE 應(yīng)用軟件的開發(fā)提供方便與科學(xué)依據(jù),Windows 程序移植到Windows CE 儼然成為加快軟件開發(fā)效率和提高軟件質(zhì)量的重要途徑?;赪indows CE 的線切割數(shù)控編程廉價微小型控制系統(tǒng),將能在工業(yè)極端環(huán)境里連續(xù)長期高效穩(wěn)定地工作,具有很強的適應(yīng)性,克服PC 的弊端,提供統(tǒng)一的、可伸縮的解決方案,將專用硬件的耐用性與PC的靈活性結(jié)合在一起。因此,Windows CE 在工業(yè)控制領(lǐng)域有著很好的應(yīng)用前景。

        [1]周振喜,戴國駿.Windows 應(yīng)用程序移植到Windows CE下的策略[J].計算機工程與設(shè)計,2004(9):1560-1562.

        [2]范躍華,張素芹,徐飛.基于WinCE 平臺的應(yīng)用程序移植研究[J].西安工業(yè)大學(xué)學(xué)報,2007,27(1):91-94.

        [3]徐陽.Windows CE 6.0 嵌入式應(yīng)用程序開發(fā)初探[J].科技廣場,2010(12):4-9.

        [4]贠汝文,祁廣云.基于VS2005 的WinCE 應(yīng)用程序開發(fā)環(huán)境研究[J].大慶師范學(xué)院學(xué)報,2010,30(3):20-22.

        [5]傅曦,齊宇.嵌入式系統(tǒng)Windows CE 開發(fā)技巧與實例[M].北京:化學(xué)工業(yè)出版社,2004.

        [6]汪兵,李存斌,陳鵬,等.EVC 高級編程及其應(yīng)用開發(fā)[M].北京:中國水利水電出版社,2005.

        [7]何宗鍵.Windows CE 嵌入式系統(tǒng)[M].北京:北京航空航天大學(xué)出版社,2006.

        [8]王浩,楊正校.Windows CE 系統(tǒng)應(yīng)用開發(fā)編程[M].北京:中國水利水電出版社,2011.

        [9]姜波.Windows CE.NET 程序 設(shè)計[M].北 京:機械工業(yè)出版社,2007.

        [10]尹成,黃永兵,胡耀文,等.Windows CE 7 開發(fā)實戰(zhàn)詳解[M].北京:人民郵電出版社,2012.

        [11]郭磊.基于ARM 的嵌入式線切割系統(tǒng)設(shè)計與實現(xiàn)[D].南昌:南昌大學(xué),2008.

        [12]黃志剛.電火花線切割計算機輔助數(shù)控編程系統(tǒng)的研究和開發(fā)[D].廣州:廣東工業(yè)大學(xué),2003.

        猜你喜歡
        嵌入式調(diào)試程序
        試論我國未決羈押程序的立法完善
        基于航拍無人機的設(shè)計與調(diào)試
        電子制作(2018年12期)2018-08-01 00:47:44
        搭建基于Qt的嵌入式開發(fā)平臺
        FOCAS功能在機床調(diào)試中的開發(fā)與應(yīng)用
        “程序猿”的生活什么樣
        英國與歐盟正式啟動“離婚”程序程序
        無線通信中頻線路窄帶臨界調(diào)試法及其應(yīng)用
        電子制作(2017年19期)2017-02-02 07:08:38
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        調(diào)壓柜的調(diào)試與試運行探討
        創(chuàng)衛(wèi)暗訪程序有待改進
        91成人午夜性a一级毛片| 精品国产这么小也不放过| 亚洲av日韩综合一区在线观看| 伊人网综合在线视频| 人妻丰满熟妇av一区二区| 国产精品视频白浆免费视频| 亚洲av成人片在线观看| 亚洲永久精品ww47| 91精品综合久久久久m3u8 | 国产精品av免费网站| 一二三区无线乱码中文在线| 性欧美videofree高清精品| 久久精品国产99精品九九| 视频福利一区二区三区| 国产农村妇女精品一区| 久久99久久99精品中文字幕| 亚洲阿v天堂网2021| 久久久精品久久久国产| 人人澡人人妻人人爽人人蜜桃麻豆| 亚洲国产精品日韩av专区| 国产欧美日韩不卡一区二区三区| 偷窥偷拍一区二区三区| av无码电影一区二区三区| 国产手机在线αⅴ片无码观看| 嗯啊 不要 啊啊在线日韩a| 免费看黄片的视频在线观看| 国产乱人激情h在线观看| 国产精品自在线免费| 亚洲国产成人av第一二三区| 不卡日韩av在线播放| 无码人妻丰满熟妇区五十路百度| 极品诱惑一区二区三区| sm免费人成虐漫画网站| 日本肥老妇色xxxxx日本老妇| 欧美z0zo人禽交欧美人禽交| 亚洲国产精一区二区三区性色| 国产一区二区三区久久悠悠色av| аⅴ资源天堂资源库在线| 正在播放淫亚洲| 亚洲成人激情深爱影院在线| 国产精品久久久久9999小说|