單片機解密 單片機破解 芯片解密 IC解密 設為首頁 │ 網站地圖 │ 聯系我們     
      
    仿真器 編程器 ARM/DSP/USB CPLD/FPGA/SOPA 單片機開發板
    實驗儀 工控板卡 適配器 其它產品 測試/分析儀
     
     
      IT搜索 
      熱門關鍵詞:仿真器 編程器 ARM/DSP/USB CPLD/FPGA/SOPA 單片開發機 實驗儀 工控板卡 適配器 其他產品 測試/分析儀
     
      技術主頁
     
    WIN32編程示例:嵌入式軟件開發程序入門
    如何在嵌入式LINUX中增加自己的設備驅動程序
    PCB抄板為什么是反向學習
    雙面板抄板方法
    多層板抄板方法
    FIB技術的在芯片設計及加工過程中的應用介紹
    SMT貼片概述及加工需要注意的問題
    面對挑戰電路板抄板該如何創新
    PCB線路板疑難解答(一)
    PCB設計過程中軟件缺陷的查找
    PCB阻焊保護層工藝研究
    簡析PCB會出現開路的原因以及改善方法
    怎樣整合將多張PCB原理圖
    PCB抄板中反推原理圖秘技
    如何避免PCB互連和接地產生的嚴重問題
    影響PCB價格的因素
    PCB表面涂層有什么優缺點
    華宇晶反推遠離圖技術
    PCB抄板的技術實現過程
    IC解密時是否損害母片
    IC芯片解密三種常見技術
    芯片解密報價上存在差異原因解釋
    單片機可以讀出程序,但不能用這個單片機,是否加密了?
    單片機解密之探針技術
    單片機解密之過錯產生技術
    單片機解密之軟件攻擊
    單片機解密之電子探測攻擊
    單片機解密過程
    芯片解密跟PCB抄板有什么樣的依存關系
    如何選擇一家合適的抄板IC解密公司
    PCB工藝中底片變形原因及其解決方法
    SMT加工中無鉛焊接工藝優化注意事項
    SMT表面貼裝焊錫珠缺陷的解決方法
     
      技術主頁
     
     
    WIN32編程示例:嵌入式軟件開發程序入門
        MicrosoftWindows CE是緊湊的、高效的和可升級的操作系統,它被廣泛的應用在各種嵌入式式的產品中,從手持電腦到專門的工業控制器和消費用電子產品中。Windows CE已經通過了其自身的能力證明:它能夠滿足32位嵌入式式程序開發的需求。同樣重要的是: Windows CE使嵌入式式系統的設計者得以充分利用Microsoft的32位基于Windows的開發工具的全部的函數。
        嵌入式的應用軟件選擇Windows CE的首要原因之一是Microsoft Win32應用編程接口(API)的廣泛應用。從運行在Microsoft WindowsNT操作系統下的高端服務器到最小的臺式機和內嵌式的應用中,WIN32 API幾乎是所有為面向Windows開發32位應用軟件的內核。
        本文的目的是向那些開發基于Windows CE的新的嵌入式式系統的開發者介紹WIN32 事件驅動編寫程序。 本文將: 
    概述32位Windows操作系統和WIN32編程模型。 
    介紹線程,事件和消息是如何操作的。 
    給出Win32如何管理Windows CE的內存。 
    解釋 Win32意外操作的概念。 
    比較同步和不同步設備的界面的不同的方法。 
    總結明確定義的API的優位。 
        本文并不是刻意要完全做Win32的編程指南,而是要介紹用Win32作為嵌入式式應用程序的開發工具。
     
    簡介
        對于全世界的成千上萬的程序開發者來說,Win32程序模式很常見。WIN32是臺式機或企業廣泛應用的強大目標,而且隨著Windows CE的涌現,它也成了嵌入式式系統的理想的程序界面形式。WIN32為Windows CE操作系統提供了一致的,文檔完備的并且函數強大的程序界面。
        用WIN32在Windows CE平臺開發的程序同其他的WIN32程序差不多;這意味著程序開發者在開發新的面向Windows CE操作系統的應用程序的時候,能夠應用這些大量的WIN32的程序資源、第三代工具和外部的專門的技術。具有WIN32編程經驗的程序員會發現創建新的(維護已有的)面向Windows CE設備(如手持電腦)的應用程序遠比創建類似的面向特殊的平臺或其他應用不廣的嵌入式式的操作系統的應用程序簡單。
        嵌入式式系統的設計者們很快意識到Windows CE的強大,并且以驚人的快速使這個操作系統與它們的新產品一體化?墒,許多嵌入式式軟件的開發者對Windows的事件驅動程序的一般技術不熟悉。對于這些軟件開發者來說,在他們開始他們第一次的基于Windows CE的項目之前,了解一些WIN32的基礎的知識是有好處的。

    什么是WIN32?
    “WIN32”表示對于所有的Microsoft 32位平臺的一種普通的應用編程接口(API)。這些平臺通常指: 
    Windows 95, Windows 98 
    Windows NT 
    Windows CE 
        本文我們主要關注Windows CE操作系統,可是需要弄清楚的是大多數 Win32的應用編程接口對上面所有三種平臺都適用。這種同用的應用編程接口的優位有很多:容易登錄到應用程序中,有大量的已有程序的知識,范例和第三代軟件的資源。
     
    平臺的差別
        WIN32的應用編程接口定義了你作為一個程序員有用的Windows平臺。WIN32應用編程接口的目的是提供了一個常用的界面的設置,可是虛擬,不同的平臺由于不同的特性及硬件的約束,其應用編程接口也不同。WIN32平臺家族的一些成員支持全部的WIN32的應用編程接口(下簡稱API),而其他的只支持一部分的API。 為緊湊的、嵌入式式的應用軟件和小型設備而設計的Windows CE,WIN32的API最受限制。盡管如此, Windows CE 的API也是足夠完善的,能夠處理實際的大量的高級的嵌入式式應用程序。
     
    WIN32與Microsoft基本類庫(MFC)
        用WIN32界面設計并不是創建32位基于 Windows的應用程序的唯一的途徑。另一種重要的途徑是可在WIN32與 Microsoft Visual C++開發環境使用的Microsoft基本類庫(MFC)。MFC為許多(不是所有)的WIN32的API進行了高度的封裝(圖1)。通常,MFC提供了代表重要的WINDOWS的用戶界面對象的類,象窗口,對話框,畫刷,畫筆,和字體。MFC也為沒有任何用戶界面要求的嵌入式式應用軟件提供了相應的類。MFC類的成員函數調用WIN32API的函數,可以使復雜的應用程序的設計巧妙的簡化。
        作為WIN32的程序員,你可以自由的選取使用C或C++和WIN32 API, 或者用C++與MFC。VISUAL C++開發系統對于所有的,包括 Windows CE 的WIN32的目標操作系統都支持以上的兩種開發系統。
         本文直接介紹WIN32 API。應用 Windows CE下的MFC的詳細的消息,參閱 Windows CE SDK文檔。
     
    WIN32程序模型
         WIN32是超越所有32位WINDOWS平臺的常用和一致的(盡管并不全部相同)API。為了對WIN32 API有一個透徹的了解,以便高效的使用它的函數,了解一些底層操作系統的基礎十分重要。本節總結了32位操作系統和 Win32 API的最重要的概念,為你更深入的學習提供基礎。要得到更多更詳細的關于32位WINDOWS的體系結構、 Win32 API、以及其他的程序設計的主題,你可以讀一本關于那個主題出版的書。Microsoft出版社能提供一些這樣的書籍;在本文的最后,列著部分這些書的條目。
     
    Windows CE的內核和 Win32 API
        那些對WINDOWS CE的人可能會有一個錯覺,認為它僅僅是現有的操作系統(如WINDOWS95)降級版。但事實上Windows CE是以小型的、高度用戶化的面向嵌入式式應用程序的操作系統開發起來的。在WINDOWS CE排除(或代替)了一些基于WINDOWS CE的應用軟件所不需要的操作系統特性的同時,它的內核也具有大量的其他Microsoft 32位的操作系統的最精華的東西。例如在Windows NT下, 所有的在Windows CE下運行所應用軟件都運行在有優先權的多任務處理環境下,在被全保護的內存空間里。還有,象 Windows NT一樣,Windows CE支持本地統一的字符編碼標準碼字符串,使它更適于國際推廣?墒,不象其他的32位WINDOWS平臺,, Windows CE是十分緊湊和用戶化的,僅僅占用小于200K的內存。
        Windows CE的WIN32 API比其他的32位的Windows操作系統的WIN32 API要;它只包括大約相當于Windows NT的半數的API。但是 Windows CE的WIN32 API也有其他系統所沒有的特性。例如:通知API,它能夠操作系統的層次,而不是在運行的應用程序的層次上處理通知事件(如時鐘)。觸屏的API和對Windows CE的數據庫的內置的支持是其他的操作系統所沒有的。觸屏的API使用于觸覺敏感顯示器的屏幕校正和用戶交互的管理容易實現,而數據庫的API提供了快速簡捷的訪問緊湊的、一般用途的數據庫的工具。另一個關于Windows CE的鮮為人知的方面是它的高度的模塊化;嵌入式式系統開發者(用Microsoft Windows CE內含的面向Visual C++的軟件包)能夠創建一個對于它們的獨特的硬件平臺和應用軟件用戶化了的Windows CE的版本。
        Windows CE操作系統為設計提供了全新的設計環境。Windows CE的開發者幾乎不需要支持原有的應用程序或設備,所以操作系統在設計時可以考慮到應用一些最新的思想和應用程序,并且應用最先進的嵌入式式的32位微處理器產品作為它的硬件目標平臺。
         這對于一個使用Windows CE平臺的WIN32 API的用戶來說意味著什么呢?這意味著對于現代的、32位的嵌入式式系統,它是一種更簡單的API,更加優化的目標操作系統。下面,我們將研究一些重要 的WIN32 API和Windows CE操作系統的內部的內容。
     
    程序和線索
        了解WIN32 API和Windows CE操作系統的底層內容的第一步就是了解多任務和多線索索應用程序是如何組織的。WIN32術語中,程序被定義成一個正在運行中的程序實例。象其他的32位Windows 平臺一樣,Windows CE是一個多任務的操作系統,在一個運行中的程序里,它支持執行多個線索所。
        對于嵌入式式的應用程序,Windows CE的多線索索執行能力是它函數的重要的體現。這樣就使WIN32嵌入式式程序開發者優先考慮WIN32的線索索的創立與同步。
        WIN32的線索索的處理同其他常用的嵌入式式的操作系統是有區別的。不象Unix或其派生的系統,32位Windows平臺從一開始設計就支持多線索索應用程序。線索索管理(時序安排,同步和資源管理)由內核來完成,程序開發者利用函數裝入內核(通過WIN32 API訪問)來建立和管理他們應用程序中的線索索。
        例如,如果一個嵌入式式應用程序必須監視多個輸入設備并且在監視到一個或多個設備上不同步發生的事件的時候要作出恰當的反映。更進一步,如果這樣一個程序也需要更新一些共享的資源(如全局數據結構,磁盤上的文件,或其他設備)來作為與相關設備事件的反映。象這樣的一個程序需要一個可靠的線索索管理系統。這恰恰是WIN32 API能夠提供的函數:多個線索索能夠快捷并且容易的用WIN32 API線索索創建界面建立;同步線索索(多個線索索同時訪問一個數據)可以通過不同的方式完成,包括關鍵的段,有名稱和沒有名稱事件,以及互斥的目標。
        Windows CE 被設計成在執行這些同步時占用最少的程序資源。這位對那些函數不強大的開發者來說十分重要;因為內核來負責線索索的管理,不需要使用另外的處理器來循環檢測程序或線索索完成,以及執行其他的無用的應用程序層次上的線索索管理。內核已構建好如何管理若干的線索索并且使程序高效地進行的程序。
        對于包括若干個程序的應用程序,WIN32 向用于線索索、程序管理和同步提供了一套的完備的處理方法。這些線索索管理特性非常適于嵌入式式應用程序軟件,并且對Windows CE開發者是容易得到的。
     
    消息
        在32位windows平臺上運行的程序更專門化,程序的線索依賴于消息來初始化程序,控制系統資源并且與操作系統和用戶通信。 windows消息有各種各樣來源 ,包括操作系統,用戶活動諸如鍵盤輸入、鼠標、觸到屏幕,以及其它運行的程序或者線索。
        當消息被送到線索時,這條消息被放置在消息隊列中等待最后處理(圖3)。每一條線索擁有完全不獨立于其它線索所擁有的消息隊列的消息隊列。線索一般有不斷運行的消息循環,恢復和處理消息。當隊列地沒有消息,并且線索不從事于其它任何活動,系統掛起線索,以節省中央控制器資源。
        消息也能用于控制目的,初始化你的應用程序中各種類型的程序,并且他們能利用消息參數傳遞數據。例如,線索可能收到觸屏被激活的消息,消息參數可以表明X和Y為用戶行動的坐標。 在另一種類型的消息中,參數可以包括指針或者指向數據結構、窗口或其他對象的句柄。
     
    中斷處理
        作為一嵌入式的的軟件開發者,你可能最關心windows CE消息的處理規則是如何影響你的外部系統接口的時序的。windows CE通過細心設計和準確的衡量以保證其中斷時序以及其它相關的特位與嵌入式式的系統設計是適用的。
        嵌入式應用程序經常有時間臨界的設備接口需要,需要發現并且在一最小的規定的時間之內對設備和系統事件作出反應。 為了支持這樣應用程序, windows CE包括高度優化中斷傳送,優先級和服務系統。
        在windows CE內核中 ,中斷處理分成兩個明顯的部分:中斷服務程序(ISR )以及中斷服務線索(IST )。這個系統的目的是使ISR 盡可能小和快。在硬件的層次上,每一中斷要求(IRQ )線索路與一特定的軟件ISR聯系。當被觸發時,給定的ISR除了通知內核IST的位置外,還做少量的工作。一旦IST 被初始化(盡管沒必要完成),系統便準備好接受下一中斷并且處理下一中斷。
        每一個中斷有一個優先級與他們相聯系。 windows CE為確定的線索時時序,利用基于優先級的時間片段算法。與每一ISR 被聯系的IST 是正常的線索,因此為IST設置優先級以滿足應用程序的時序需要是應用程序軟件開發者的責任。
        這種將ISR 和IST在中斷程序中分開處理最終結果是,典型的中斷等待時間被大大地減少了,在中斷程序中發生不可接受的延遲的可能性也大大減少。此外, 嵌入式式軟件包 和windows CE內核的特性使有可能按習慣定制中斷時序和優先級,以滿足特定應用程序的需要。 Windows CE和其使用的時間臨界、實時應用程序在另一篇文章中包括比本文更詳細的內容,文章名為《 Real-time Systems with Microsoft Windows CE》。
     
    內存管理
        WIN32 API為向開發者提供了一套完備的和一致的接口。 當開發絕大部分應用程序的時候,軟件開發者不需要考慮特定內存結構。 然而對于許多嵌入式應用程序,特別是那些有嚴格的內存資源約束或者臨界時序的要求的,對內存被管理的方法有好的理解是重要的。
        Windows的內存的一般結構對于不同的32 位Windows平臺是不同的,并且特殊的細節結構在同一32 位Windows操作系統下不同的處理機之間也不同。 (例如,Windows NT的內存結構在X86 平臺上與在DEC Alpha 平臺上的用法十分不同 。) 對于這段的討論,我們將專門集中在Windows CE操作系統的部分中進行。
     
    Windows CE的存儲結構
        像其它的32 位Windows平臺一樣,Windows CE操作系統也有虛擬內存的特性。內存總在某一時間被分配給應用程序一頁,頁的大小由系統設計者決定(并在操作系統為目標硬件平臺創建時被指定)。例如 在手持電腦,內存頁大小是典型的1KB 或者4KB 。
        在初始化期間(導入),Windows CE創造一個獨立的被所有程序共享的4GB 虛擬地址空間。當程序引用一個虛擬的地址時,它被內核記錄在物理的內存上。 這使得應用程序軟件開發者不必去考慮目標系統內存的物理的布局。雖然所有程序共享單一地址空間,應用程序仍然可避免相互誤用。Windows CE 通過改變每頁的保護來保護程序內存,而不是分配給每一程序不同地址空間。 作為應用程序開發者,你可能不會太在乎目標系統的內存的物理的結構。 內存可以全部是隨機存取內存,或者它可能包括閃存卡或者硬盤驅動器。Windows CE操作系統為你管理內存資源,同時WIN32 API 向你提供必要的分配、使用和釋放的內存的接口。
        然而,作為一個嵌入式的系統的設計者,你將需要細心考慮將在你新的硬件平臺上執行的應用程序的內存需要,并且全面考慮成本、速度和可靠性,平衡各種目標的沖突。 如果你為使用Windows CE開發一個新的硬件平臺 ,Windows CE的面向Visual C++ 的嵌入式軟件包包括資源可以幫助你做出這些決策,并且從而構成操作系統。
        無論你的系統內存的配置如何,ROM(只讀內存)將占用十分重要的地位。不同于其它的32位Windows操作系統,Windows CE操作系統的代碼在只讀內存中,并且在那個只讀內存中原地執行。 依據你的產品需要,你也能選擇在只讀內存中放置應用程序代碼。 例如,Pocket Word,Pocket Excel和其它應用程序程序,包括在手持電腦只讀內存中被提供的。
        存儲在ROM中的程序組在Windows CE下當地執行,所以嵌入式系統的設計者能夠只占用很少的RAM用于堆棧存儲的需要。相應地,你的嵌入式應用程序可以利用RAM既作為程序的內存又可作臨時存儲空間。
        為了進一步的增加應用程序軟件的性能, Windows CE采用按需求將內存分葉;操作系統僅僅需要解壓縮并且裝入基于RAM的一小部分程序準備執行。ROM和 基于RAM的程序的靈活性與速度意味著基于Windows CE的設備能夠被構造成各種內存結構形式。
     
    手持電腦的內存結構
        典型的Windows CE的硬件平臺的內存結構是與基于 Windows系統的臺式電腦的內存結構十分不同的。 為了知道內存通常如何在Windows中被處理的 ,考查基于Windows CE的最普通的代表性的設備-手持電腦,是很有用的。
        在手持電腦中,RAM被分割成兩個主要的部分:存儲內存和程序內存。 向兩部分分配的RAM的量能被手持電腦用戶修改(在限制范圍內)。 這個RAM的劃分圖如圖4所示。
        在手持電腦中的存儲內存類似于臺式電腦的硬盤RAM。 它被用來存儲數據和非系統應用程序。它的三段中每一段被不同的一套WIN32 API 訪問函數: 
        Windows CE系統寄存器類似于Windows NT和Windows 95的操作系統的寄存器。你能利用WIN32 寄存器函數來操縱寄存器中鍵和數值。 
    被用戶安裝的應用程序和數據在一般文件存儲段中。Windows CE文件系統API 是標準WIN32 文件系統的子集函數。 
        對于數據庫應用程序,由Windows CE 數據庫API來存儲被管理存儲。這API 對Windows CE是唯一的 ,并且在其它的WIN32 平臺中沒有。
    程序內存被用于系統和非系統程序的堆棧存儲。 非系統應用程序從存儲內存(或者或許PC卡)被取得,非壓縮的并且被裝入要執行程序內存中。
     
    意外情況處理
        意外情況處理是強大的編程技術,相應一套的WIN32 API 起函數能容易的發現未預料到的錯誤狀況,并且使之恢復。結構化的意外情況處理,允許危險的段的代碼可能由于硬件資源的問題、設備的沖突和微小的編碼錯誤而導致失敗,以使這部分程序與其余的應用程序分開。這保護了應用程序,使之免于過早的終止或者產生敏感的系統問題。
        結構化的意外情況處理包括定義一系列聲明作為保護,并且為第一套的聲明定義了另一個套聲明作為意外情況句柄。 意外情況句柄定義了一個或多個聲明來保障系統的運行,而不管保護聲明的現有的狀態。
        在大多數32 位Windows平臺上應用WIN32 API 的程序員在運用意外情況句柄的時候通常有兩種選擇,用C或 C++ 編寫應用程序,并且利用WIN32提供的處理意外情況的宏,或者利用C++ 編寫應用程序,并且使用C++ 語言定義的意外情況處理函數。
        對于這種程序的編寫,Windows CE的開發者因無法訪問C++的(面向Windows CE的Visual C++ 目前還不支持意外情況處理,所以必須使用WIN32 API的意外情況處理宏。
        為了應用WIN32意外情況處理,你將使用一套在WIN32 API 中被定義的宏。 下面一段代碼顯示其基本概念:
    __try {
    // The statements in here have a possibility of failure
    // and so are guarded.
    }
    __finally {
    // This is the exception handler. This code will execute
    // after the guarded statements, no matter what happened
    // in the guarded block of code above.
    }
    // This code will execute normally if the program flow allows
    // it (no goto, exit, etc.)
    __try 以及__finally 宏產生了使用意外情況句柄的所必要的底層代碼。
        意外情況的處理對諸如在嵌入式的應用程序中的那些普通的多線程序是有用的。WIN32結構化意外情況處理宏 是一種容易并且強大的保護應用程序使之免受未預料到的失敗的方法。
     
    設備處理
        有無數硬件設備(外圍設備)與應用Windows的平臺(Windows NT以及 Windows 95)臺式機是兼容的,并且每一年都有更多的東西在市場上涌現。而Windows CE的平臺,通常不支持臺式計算機支持的設備的很多品種的外圍硬件。 然而,為一嵌入式的的系統創造可靠的設備接口在嵌入式的程序設計的過程中,是比較富有挑戰性的部分。 這部分地因為典型的嵌入式的系統接口的時序與其它可操作性的需要遠比臺式電腦計算系統和應用程序的更難。
        幸運地,WIN32 API 提供了一套豐富使設備接口方法,使得設備接口程序寫起來更容易并適合于特定嵌入式的系統的需要。
        WIN32 API是如何幫助的 WIN32 API在你的硬件平臺為你提供一套一致的基于流的接口。 為了使用設備,你首先利用適合于設備類型的函數打開它。 對于大多數設備,你利用的函數是在下列例子中的CreateFile 函數:
    HANDLE hPort = CreateFile("COM1"); // Open the serial port
        CreateFile函數打開規定的設備(串口)并且返回用于以后在該種設備上的操作(例如讀和寫)的句柄。 各種各樣函數的(包括ReadFile ,WriteFile ,LockFile 和其他)接受這個句柄為參數,并且允許你(例如)讀寫數據,檢查設備狀態,并且將從其它程序的存取被鎖住的設備或者文件列入清單。 文件輸入輸出操作被處理成與其它設備類型利用同樣的API 函數,并且在文件之內包括隨機的訪問的函數。 被若干程序或線索同時訪問的設備和文件可以分區域地利用LockFile 函數鎖定。
        在你的應用程序已完成設備或者文件之后,它將調用CloseFile 函數關閉設備,并且進行必要的清除設備的工作。
     
    同步和異步的設備的處理
        嵌入式系統的經常有關鍵的設備有時序需要。 對于這個理由,對底層的操作系統的軟件接口必須能夠在軟件層次上管理同時(或者幾乎同時)的系統中不同類型的設備的事件。 WIN32 API 支持對設備的同步和異步的訪問,并且用復雜的設備接口設計。
        同步的接口是那些在軟件需要從設備得到動作的要求,然后等候結果。在同步的設備接口中,最常用的是前面已經提到的ReadFile 以及WriteFile函數。當在同步I/O中使用的時候,不論你與磁盤上的文件、并口或是串口、一個通道或其它類型的設備接口時,都是公用的并且是兼容的。
        異步的接口是那些設備要求應用程序為之服務的接口。一個異步的設備的好的例子是鍵盤。適當和適時的處理異步事件,對于許多嵌入式應用程序是至關緊要的。幸運的是,為Windows CE編寫的設備驅動程序能支持同時的多線索訪問驅動器。這大大地簡化異步輸入設備的處理。
        你所訪問的給定的設備的方法,取決于那個設備的特性和你開發的特定的應用程序的要求。如果你在基于你的Windows CE的硬件平臺上創建一個全新的設備(和設備驅動程序),你可以既從你的硬件設備和驅動器的層次,又可以從應用程序的層次有許多選擇。
     
    定制設備和WIN32
        盡管嵌入式系統可以支持較小數量的設備,嵌入式系統能形成唯一的和挑戰型的設備接口問題。當你開發一個新的硬件平臺并且它支持輸入輸出設備,在模你設計的不同層次上,你將不得不作出決策和折衷方案。例如,除非你只使用通常的off-the-shelf硬件,你必然套寫用戶設備驅動程序支持你的新外圍設備。 你也能需要配置你的Windows CE來包含一些設備處理必要的組件。同時從應用程序的層次,為滿足新的設備的需要,你將需要寫接口代碼。在有如此多變量的情況下,你如何保持你的設備的一定程度的一致行呢?答案就在WIN32 API 中。在WIN32 API環境下,寫你的目標驅動程序,你有理由自信的認為那些新設備的接口的應用程序開發者能夠創造可信的,可檢驗和可維護的基本代碼。Windows CE設備驅動程序開發工具包,或者簡稱DDK ,提供了如何創造WIN32功能強大的設備驅動程序信息和范例。
     
    設備的類型
        Windows CE支持兩種基本類型的設備驅動程序,內置固化的驅動程序和可安裝的驅動程序。 如同名字所暗示的,內置固化的驅動程序是被指定用于一個給定的Windows CE的硬件平臺的設備。Windows CE的嵌入式系統設計者有責任提供一個內置固化的驅動程序來驅動系統所包括的設備。例如,許多Windows CE平臺有一個LCD 觸摸屏。這些平臺的制造廠為他們的設備提供設備驅動程序,使此硬件可以用于Windows CE操作系統。在完備的系統中,這些內置固化的驅動程序位于Windows CE只讀內存中內核的周圍。
        可安裝的設備驅動程序是被設定為為了任何與Windows CE 硬件平臺臨時連接的外圍的設備。這個類型的設備包括:調制解調器,打印機,數字的照相機,PC卡,以及任何數量的其它外部的設備。 可安裝的設備驅動程序可能位于只讀內存中,但是更典型與臨時性的設備的接口的應用程序軟件一同裝載。
     
    總結
        本文已為概略地介紹了面向Windows CE的WIN32 API,其目的是為了突出這種被廣廣泛應用的并且十分重要的API的一般的特點和優點。有許多其它的細節你需要在第一次使用Windows CE嵌入式產品之前來學習掌握;幸運的是,有很多的WIN32 API 的信息的資源。
     
    單片機解密,單片機破解,芯片解密,IC解密
     
    公司簡介 | 新聞動態 | 新品推薦 | 產品信息 | 下載中心 | 解密服務 | 項目開發 | 技術主頁 | 網上訂購 | 網站地圖 | 谷歌地圖
    地址:深圳市南山區高新技術產業園中區科文路中鋼大廈東 電話:李小姐,易小姐0755-26001683 26008661 手機:18123979133,18138851533
    粵ICP備15080534號-1 版權所有:深圳市華宇晶電子科技有限公司 單片機解密,芯片解密公司,芯片解密,IC解密
    国产精品日韩精品3p合集