新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > Windows CE.NET下ADC驅動開發設計

        Windows CE.NET下ADC驅動開發設計

        作者: 時間:2012-11-26 來源:網絡 收藏

          1 前言

          Windows CE 是為各種嵌入式系統和產品設計的一種壓縮的、高效的、可升級的操作系統。多線性、多任務、全優先的操作系統環境是專門針對資源有限而設計的,它的模塊化設計使嵌入式系統開發者和應用者能夠將其應用于各種產品,例如家用電器、專門的工業控制和嵌入式通信設備等。Windows CE 支持各種硬件外圍設備及網絡系統,應用領域極為廣闊,是微軟專門為信息設備、移動通訊、電子產品、嵌入式應用等非 PC 領域而專門設計的一種戰略性操作系統產品。

          2 Samsung ARM 系列S3C2410 處理器

          S3C2410 是Samsung 公司推出的基于ARM920T 核的32 位RISC 微處理器芯片。S3C2410具有低功耗、低成本和高性能的特點,已成為PDA、智能手機、網絡計算機終端以及智能設備的終端產品等的熱門解決方案之一。

          S3C2410 內部資源豐富、結構復雜、接口眾多,具有相互獨立的16kB 指令緩存和16kB數據緩存,帶有MMU 虛擬存儲單元和AMBA 總線接口。S3C2410 支持的內外圍設備包括外部存儲控制器、中斷控制器、LCD 控制器、8 通道10bit 精度的ADC 和觸摸屏控制器、SD/MMC 卡控制器、4 通道DMA、4 通道具有PW 入1 功能的定時器、具有日歷功能的實時時鐘、看門狗定時器、3 通道UART(包含IRDA 紅外線數據通訊口)、USB 主機/設備接口、I2C 總線接口、IIS 數字音頻總線接口、2 通道SPI 總線接口、通用I/O 端口以及具有鎖相環功能片上時鐘發生器等。同時,也可以根據需要進行功能擴展從而支持以太網接口、PCMCIA接口以及IDE 接口等。

          3 Windows CE.net 下的驅動程序

          目前基于 Windows CE.net 的兩種模型是本機設備驅動程序和驅動程序。本機設備驅動程序用于低級、內置設備,提供一組定制的接口可通過移植、定制微軟提供的驅動樣例來實現。驅動程序實現一組固定的函數,所有的CE 設備皆可使用此模型實現。開發工具Platform. Builder 中包含的樣本設備驅動程序分為兩種:單片驅動程序和分層的驅動程序如圖1 所示。單片驅動程序基于單個碼片,該碼片直接把硬件設備的功能傳遞給操作系統。與彈片驅動程序相比,分層驅動程序由兩個設置好的層組成,上層是模型設備驅動程序(Model Device Driver,MDD),下層是依賴平臺的驅動程序(Platform. Dependent Driver,PDD)。大多數的樣本設備驅動程序都配置成分層的。

          分層驅動程序要利用微軟提供的與應用程序通信的上層,這是一個與硬件平臺無關的上層,稱為模塊驅動程序層MDD(Model Device Driver),MDD 層通過設備驅動程序接口DDI(Device Driver Interface)與應用程序通信,開發驅動程序通常不修改MDD 層,主要關心與具體硬件相關的下層,依賴平臺的設備驅動程序層PDD(Platform. Dependent Driver),PDD層通過設備驅動服務接口DDSI(Device Driver Service Interface)直接管理硬件。單片驅動程序所驅動的設備通常與微軟提供的應用程序沒有直接的關系,如LCD 背光條開關的驅動。通常要求單片驅動程序提供一個特定DDI 接口如上層應用通信,通過編寫相應的動態鏈接庫DDL 實現這個功能。


          4 基于 Windows CE 的流驅動程序的實現

          4.1 選擇代表設備的文件名前綴

          設備前綴名在系統中必須唯一,并且文件前綴名必須是 3 個字母,若有多個同類設備,則通過后綴1 個阿拉伯數字區分,例如COM1、LPT3 等等。文件前綴名將會在驅動的標準接口函數中體現,比如XXX_Init、XXX_Close 等,其中的“XXX”即是我們選擇的設備的文件名前綴。

        鎖相環相關文章:鎖相環原理

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 抚松县| 东明县| 若羌县| 基隆市| 琼海市| 平度市| 都江堰市| 田林县| 融水| 东辽县| 隆回县| 宜宾县| 西吉县| 庄浪县| 尼玛县| 札达县| 南部县| 得荣县| 永州市| 仪征市| 清徐县| 云林县| 新郑市| 前郭尔| 噶尔县| 金坛市| 璧山县| 昌乐县| 右玉县| 江川县| 昌平区| 巴塘县| 印江| 门头沟区| 团风县| 尉犁县| 吐鲁番市| 中阳县| 安义县| 北安市| 光泽县|