Windows CE 工程實踐完全解析(簡體書)
商品資訊
系列名:Windows CE 項目開發實踐叢書
ISBN13:9787508374734
出版社:中國電力出版社
作者:李大為
出版日:2008/10/01
裝訂/頁數:平裝/399頁
規格:26cm*19cm (高/寬)
商品簡介
目次
商品簡介
本書是《Windows CE項目開發實踐叢書》之一。本書講述了Windows CE操作系統底層驅動軟件開發技術。全書共分5篇25章,內容包括開發Windows CE的BootLoader、OAL、顯示設備驅動程序、串口驅動程序和PC卡總線接口驅動程序,通過解析和研讀微軟的DeviceEmulator開發板的BSP的源代碼,旨在幫助讀者系統、全面、具體地了解Windows Embedded CE的BSP的原理與開發技術,從而達到理解和實踐Windows CE嵌入式系統軟件開發目的。本書注重系統性、先進性和實用性,具有特色鮮明、邏輯性強、針對性強的特點。本書適合于從事Windows CE操作系統軟件開發的工程技術人員使用,也可作為高等院校自動化、電子、計算機、通信工程等專業師生的科研參考書。
目次
前言
緒論
第一篇 開發Windows CE的BootLoader
第1章 BootLoader的理論知識介紹
1.1 BootLoader是大多數嵌入式操作系統運行最初的開始
1.2 微軟建議Windows CE的BootLoader所應實現的功能
1.3 BootLoader并不是基於Windows CE的嵌入式軟件系統的必不可少的組成部分
第2章 Windows CE BootLoader的軟件框架和支持庫
2.1 以Eboot為實例學習WindOWS CE BootLoader的軟件框架
2.2 BLCOMMON支持庫
2.3 Eboot支持庫
2.4 EthDbg驅動程序
第3章 案例解說開發實現OEM函數
3.1 DeviceEmulator虛擬平臺的硬件設計
3.2 開天闢地的Startup函數
3.3 控制流OEM函數
3.4 調試功能OEM函數
3.5 下載功能OEM函數
3.6 以太網收發幀OEM函數
3.7 Flash操作OEM函數
3.8 時鐘功能OEM函數
3.9 可選實現的OEM函數
3.10 在BootLoacler和操作系統之間共享信息的數據結構
3.11 保存用戶選項配置參數的數據結構
第4章 認識Windows CE操作系統鏡像文件的格式
第二篇 開發Windows CE的OAL
第5章 Windows CE操作系統的系統啟動執行流程
5.1 圖覽Windows CE的初始化啟動流程
5.2 開天闢地的StartUp函數
5.3 KemelStart函數
5.4 ARMlnit函數
5.5 kernel.d11模塊的入口點函數NKStartup
5.6 ARMSetup函數
5.7 KemelStart函數
第6章 案例解說WindOWS CE OAL的開發任務匯總
6.1 OAL是什麼
6.2 OEMGLOBAL結構體及其全局變量
6.3 OEM地址映射表
6.4 OEMIoControl函數
6.5 OAL的Cache操作OEM函數
第7章 Windows CE操作系統的中斷處理機制
7.1 ISR和IST協同處理外設的中斷請求
7.2 設置系統中斷向量表
7.3 初始化函數OEMInit并啟用硬件中斷處理機制
7.4 實現OEMInterruptHandler函數供操作系統處理IRQ中斷
7.5 實現OEMInterruptHandlerFIQ函數處理FIQ中斷
7.6 案例解說中斷處理的另一組成部分IST
7.7 為IST做哪些事情
第8章 系統時鐘管理
8.1 初始化函數OEMInit并啟用系統時鐘
8.2 ISR必須處理系統時鐘的定時中斷請求
第9章 TOC的秘密
9.1 初識pTOC指針
9.2 解析實例以加深認識TOC數據
9.3 TOC的條目
9.4 TOC數據的實質
第10章 KITL調試技術
10.1 什麼是KITL
10.2 圖覽KITL的初始化流程
10.3 初始化KITL庫
10.4 初始化Windows CETL連接
10.5 0AL KITL ARGS結構體
10.6 0AL KITL DEVICE結構體
10.7 主動的KITL模式與被動的KITL模式
10.8 KITLTRANSPORT結構體
10.9 匯總OAL的開發者需要為啟用KITL功能做哪些事情
第11章 案例解說以太網端口設備EthDbg驅動程序的開發
11.1 CS8900A的硬件原理知識
11.2 讀寫ReadlPacketPage和WritePacketPage
11.3 硬件初始化函數CS8900AInit
11.4 發送以太網數據幀函數CS8900ASendFrame
11.5 接收以太網數據幀函數CS8900AGetFrame
11.6 啟用與禁用CS8900A的中斷功能的函數CS8900AEnableInts和CS8900ADisableInts
11.7 CS8900A的配置地址過濾機制的函數CS8900ACurrentPacketFilter和 CS8900AMultleastList
第三篇 開發Windows CE的顯示設備驅動程序
第12章 從DDI系列函數開始
12.1 DDI函數是什麼
12.2 WindLOWS CE的GWES子系統如何獲得DDI函數
12.3 DrvGradientFill和DrvAlphaBlend函數
12.4 DrvEnablePDEV和DrvDisablePDEV函數
12.5 DrvEnableSurface和DrvDisableSurfaee函數
12.6 DrvCreateDeviceBitmap和DrvDeleteDeviceBitmap函數
12.7 DrvRealizeBrush函數
12.8 DrvStrokePath函數
12.9 DrvFillPath函數
12.10 DrvPaim函數
12.11 塊傳輸功能函數DrvAnyBlt、DrvBitBlt、DrvCopyBits和DrvTransparentBlt
12.12 DrvSetPalette函數
12.13 DrvSetPointerShape函數
12.14 DrvMovePointer函數
12.15 DrvGetModes函數
12.16 DrvRealizeColor和DrvlJnrealizeColol‘函數
12.17 DrvGetMasks函數
12.18 DrvContrastControl函數
12.19 DrvPowerHandler函數
12.20 DrvEscape函數
12.21 DrvDisableDriver函數
第13章 Windows CE的顯示表面及與之相關的數據結構
13.1 顯示表面
13.2 調色板、顏色轉換對象和顏色轉換類
13.3 SLIRFOBJ結構體和TmpGPESmf類
13.4 路徑
13.5 剪切板對象CLIPOBJ
13.6 畫筆
第14章 GPE類是用戶開發WindOWS CE的顯示設備驅動程序工作的起點
14.1 從DDI到CPE
14.2 GPE類
14.3 GPE類和塊傳輸操作
14.4 GPE類和畫線操作
14.5 DeviceEmulator的顯示設備驅動程序實現——S3C2410DISP類
第15章 顯示設備及其驅動程序對DirOCtDraw功能的支持
15.1 由導出函數HALInit引出DDHALINFO結構體
15.2 DDHALINFO結構體
15.3 DDCAPS結構體
15.4 DDHAL DDCALLBACKS結構體
15.5 DDHAL_DDSURFACECALLBACKS結構體
15.6 DirectDraw顯示表面
15.7 DDGPE類
第四篇 開發Windows CE的串口驅動程序
第16章 設備管理器和流式接口設備驅動程序
16.1 串口驅動程序是典型的流式接口設備驅動程序
16.2 設備管理器以總線枚舉的方式加載流式接口的設備驅動程序
16.3 總線枚舉器加載一個設備驅動程序的具體步驟
第17章 串口設備句柄和串口文件句柄
17.1 從COM—Init導出函數到HW INDEP INFO結構體
17.2 pHWObji成員
17.3 pHWHead成員
17.4 DCB成員
17.5 CommTimeouts成員
17.6 RxBufferInfo和TxBufferInfo成員
17.7 pAccessOwner、0penList、OpenCS和OpenCnt成員
17.8 fEventMask成員
17.9 pDispatchThread、PIiority256、hKillDispatchThread、KillRxThread和 hSerialEvent成員
17.10 hReadEvent和hTransmitEvem成員
17.11 fAbortRead和fAboffTransmit成員
17.12 DroppedBytesMDD、DroppedIBytesPDD、RxBytes、TxBytes、TxBytesPendillg和 TxBytesSent成員
17.13 XFlow、StopXmit、SentXoff、DtrFlow和RtsFlow成員
17.14 ReceiveCritSecl和TransmitCritSecl成員
17.15 dwMddErrors成員
第18章 CSeriaIPDD類是OEM用戶開發WindOWS CE串口驅動程序PDD層工作的起點
18.1 CSerialPDD類定義
18.2 CSerialPDD類的初始化部分
18.3 CserialPDD類的串口設備操作部分
18.4 CSerialPDD類的中斷接口部分
18.5 CSerialPDD類的數據發送與接收部分
18.6 CSerialPDD類的MODEM功能部分
18.7 CSerialPDD類的線路功能部分
18.8 CSerialPDD類的串口配置部分
18.9 CSerialPDD類的IR特殊處理部分和錯誤處理部分
第19章 Windows CE操作系統對外設的電源狀態管理
19.1 電源管理架構和電源管理器
19.2 設備電源狀態和系統電源狀態
19.3 電源管理器與設備驅動程序之間的編程接口
19.4 電源管理器與應用程序之間的編程接口
19.5 例說設備驅動程序開發中的電源管理實務
第20章 案例解說串口驅動程序的具體開發
20.1 DeviceEmulator的串口驅動程序PDD層的類定義
20.2 CReg2410uan類
20.3 S3C2410串口驅動程序PDD層的初始化
20.4 CPdd2410Uart類的PostInit成員函數
20.5 串口數據接收中斷請求處理函數Recei、veInterruptHandler
20.6 串口MODEM事件中斷請求處理函數:ModemInterruptHandler
20.7 串口線路中斷請求處理函數LineInterruptHandler
20.8 串口驅動程序PDD層的流控功能函數xmitcomchaT、SetDTlR和SetRTs
20.9 串口數據發送中斷請求處理函數XmitInterruptHandler
20.10 串口發送間斷信號的功能函數SetBreak
20.11 CancelReceive函數和CantelXlmit函數
20.12 SetOutputMode函數和SetBaudRate函數
第五篇 開發Windows CE的PC卡總線接口驅動程序
第21章 PC卡總線橋驅動程序
21.1 PC卡驅動程序的分層結構
21.2 PC卡接口驅動程序實體分離的MDD層和PDD層
21.3 PC卡總線橋驅動程序
第22章 CPCCardBusBridgeBase類是OEM開發者開發PC卡總線橋驅動程序工作的起點
22.1 CPCCardBusBridgeBase類定義
22.2 CPcmciaWindowlnfo類
22.3 CPCCardBusBridgeBase類的數據成員和成員函數
第23章 CPcmciaBusBridge類——DeviceEmulator的PC卡總線橋驅動程序具體實現
23.1 CPcmciaBusBridge類的抽象意義及繼承關係
23.2 CPcmciaBusBradge類的數據成員
23.3 CPcmciaBusBridge類的構造函數要負責生成PC卡總線橋驅動程序的IST線程
23.4 CPcmciaBusBridge類的Init成員函數負責初始化PC卡總線橋硬件和向上提交Socket Service
第24章 PC卡的Socket
24.1 Socket Service的內容
24.2 DeviceEmulator的Pc卡Socket的類數據結構及其繼承關係
24.3 Socket的屬性(信息)和狀態
24.4 PC卡Socket在系統中的組織管理
24.5 Socket的句柄
24.6 Socket的電源管理
24.7 PC卡總線橋設備與Pc卡Socket在軟件數據結構上的關聯
第25章 PCMCIA橋驅動程序的lST線程和ISR
25.1 CPcmciaBusBridge類成員函數Installlsr初始化PCMCIA控制器的卡狀態改變中斷
25.2 PC卡總線橋驅動程序的IST線程負責處理PC卡插拔和Socket電源狀態改變事件
參考文獻
緒論
第一篇 開發Windows CE的BootLoader
第1章 BootLoader的理論知識介紹
1.1 BootLoader是大多數嵌入式操作系統運行最初的開始
1.2 微軟建議Windows CE的BootLoader所應實現的功能
1.3 BootLoader并不是基於Windows CE的嵌入式軟件系統的必不可少的組成部分
第2章 Windows CE BootLoader的軟件框架和支持庫
2.1 以Eboot為實例學習WindOWS CE BootLoader的軟件框架
2.2 BLCOMMON支持庫
2.3 Eboot支持庫
2.4 EthDbg驅動程序
第3章 案例解說開發實現OEM函數
3.1 DeviceEmulator虛擬平臺的硬件設計
3.2 開天闢地的Startup函數
3.3 控制流OEM函數
3.4 調試功能OEM函數
3.5 下載功能OEM函數
3.6 以太網收發幀OEM函數
3.7 Flash操作OEM函數
3.8 時鐘功能OEM函數
3.9 可選實現的OEM函數
3.10 在BootLoacler和操作系統之間共享信息的數據結構
3.11 保存用戶選項配置參數的數據結構
第4章 認識Windows CE操作系統鏡像文件的格式
第二篇 開發Windows CE的OAL
第5章 Windows CE操作系統的系統啟動執行流程
5.1 圖覽Windows CE的初始化啟動流程
5.2 開天闢地的StartUp函數
5.3 KemelStart函數
5.4 ARMlnit函數
5.5 kernel.d11模塊的入口點函數NKStartup
5.6 ARMSetup函數
5.7 KemelStart函數
第6章 案例解說WindOWS CE OAL的開發任務匯總
6.1 OAL是什麼
6.2 OEMGLOBAL結構體及其全局變量
6.3 OEM地址映射表
6.4 OEMIoControl函數
6.5 OAL的Cache操作OEM函數
第7章 Windows CE操作系統的中斷處理機制
7.1 ISR和IST協同處理外設的中斷請求
7.2 設置系統中斷向量表
7.3 初始化函數OEMInit并啟用硬件中斷處理機制
7.4 實現OEMInterruptHandler函數供操作系統處理IRQ中斷
7.5 實現OEMInterruptHandlerFIQ函數處理FIQ中斷
7.6 案例解說中斷處理的另一組成部分IST
7.7 為IST做哪些事情
第8章 系統時鐘管理
8.1 初始化函數OEMInit并啟用系統時鐘
8.2 ISR必須處理系統時鐘的定時中斷請求
第9章 TOC的秘密
9.1 初識pTOC指針
9.2 解析實例以加深認識TOC數據
9.3 TOC的條目
9.4 TOC數據的實質
第10章 KITL調試技術
10.1 什麼是KITL
10.2 圖覽KITL的初始化流程
10.3 初始化KITL庫
10.4 初始化Windows CETL連接
10.5 0AL KITL ARGS結構體
10.6 0AL KITL DEVICE結構體
10.7 主動的KITL模式與被動的KITL模式
10.8 KITLTRANSPORT結構體
10.9 匯總OAL的開發者需要為啟用KITL功能做哪些事情
第11章 案例解說以太網端口設備EthDbg驅動程序的開發
11.1 CS8900A的硬件原理知識
11.2 讀寫ReadlPacketPage和WritePacketPage
11.3 硬件初始化函數CS8900AInit
11.4 發送以太網數據幀函數CS8900ASendFrame
11.5 接收以太網數據幀函數CS8900AGetFrame
11.6 啟用與禁用CS8900A的中斷功能的函數CS8900AEnableInts和CS8900ADisableInts
11.7 CS8900A的配置地址過濾機制的函數CS8900ACurrentPacketFilter和 CS8900AMultleastList
第三篇 開發Windows CE的顯示設備驅動程序
第12章 從DDI系列函數開始
12.1 DDI函數是什麼
12.2 WindLOWS CE的GWES子系統如何獲得DDI函數
12.3 DrvGradientFill和DrvAlphaBlend函數
12.4 DrvEnablePDEV和DrvDisablePDEV函數
12.5 DrvEnableSurface和DrvDisableSurfaee函數
12.6 DrvCreateDeviceBitmap和DrvDeleteDeviceBitmap函數
12.7 DrvRealizeBrush函數
12.8 DrvStrokePath函數
12.9 DrvFillPath函數
12.10 DrvPaim函數
12.11 塊傳輸功能函數DrvAnyBlt、DrvBitBlt、DrvCopyBits和DrvTransparentBlt
12.12 DrvSetPalette函數
12.13 DrvSetPointerShape函數
12.14 DrvMovePointer函數
12.15 DrvGetModes函數
12.16 DrvRealizeColor和DrvlJnrealizeColol‘函數
12.17 DrvGetMasks函數
12.18 DrvContrastControl函數
12.19 DrvPowerHandler函數
12.20 DrvEscape函數
12.21 DrvDisableDriver函數
第13章 Windows CE的顯示表面及與之相關的數據結構
13.1 顯示表面
13.2 調色板、顏色轉換對象和顏色轉換類
13.3 SLIRFOBJ結構體和TmpGPESmf類
13.4 路徑
13.5 剪切板對象CLIPOBJ
13.6 畫筆
第14章 GPE類是用戶開發WindOWS CE的顯示設備驅動程序工作的起點
14.1 從DDI到CPE
14.2 GPE類
14.3 GPE類和塊傳輸操作
14.4 GPE類和畫線操作
14.5 DeviceEmulator的顯示設備驅動程序實現——S3C2410DISP類
第15章 顯示設備及其驅動程序對DirOCtDraw功能的支持
15.1 由導出函數HALInit引出DDHALINFO結構體
15.2 DDHALINFO結構體
15.3 DDCAPS結構體
15.4 DDHAL DDCALLBACKS結構體
15.5 DDHAL_DDSURFACECALLBACKS結構體
15.6 DirectDraw顯示表面
15.7 DDGPE類
第四篇 開發Windows CE的串口驅動程序
第16章 設備管理器和流式接口設備驅動程序
16.1 串口驅動程序是典型的流式接口設備驅動程序
16.2 設備管理器以總線枚舉的方式加載流式接口的設備驅動程序
16.3 總線枚舉器加載一個設備驅動程序的具體步驟
第17章 串口設備句柄和串口文件句柄
17.1 從COM—Init導出函數到HW INDEP INFO結構體
17.2 pHWObji成員
17.3 pHWHead成員
17.4 DCB成員
17.5 CommTimeouts成員
17.6 RxBufferInfo和TxBufferInfo成員
17.7 pAccessOwner、0penList、OpenCS和OpenCnt成員
17.8 fEventMask成員
17.9 pDispatchThread、PIiority256、hKillDispatchThread、KillRxThread和 hSerialEvent成員
17.10 hReadEvent和hTransmitEvem成員
17.11 fAbortRead和fAboffTransmit成員
17.12 DroppedBytesMDD、DroppedIBytesPDD、RxBytes、TxBytes、TxBytesPendillg和 TxBytesSent成員
17.13 XFlow、StopXmit、SentXoff、DtrFlow和RtsFlow成員
17.14 ReceiveCritSecl和TransmitCritSecl成員
17.15 dwMddErrors成員
第18章 CSeriaIPDD類是OEM用戶開發WindOWS CE串口驅動程序PDD層工作的起點
18.1 CSerialPDD類定義
18.2 CSerialPDD類的初始化部分
18.3 CserialPDD類的串口設備操作部分
18.4 CSerialPDD類的中斷接口部分
18.5 CSerialPDD類的數據發送與接收部分
18.6 CSerialPDD類的MODEM功能部分
18.7 CSerialPDD類的線路功能部分
18.8 CSerialPDD類的串口配置部分
18.9 CSerialPDD類的IR特殊處理部分和錯誤處理部分
第19章 Windows CE操作系統對外設的電源狀態管理
19.1 電源管理架構和電源管理器
19.2 設備電源狀態和系統電源狀態
19.3 電源管理器與設備驅動程序之間的編程接口
19.4 電源管理器與應用程序之間的編程接口
19.5 例說設備驅動程序開發中的電源管理實務
第20章 案例解說串口驅動程序的具體開發
20.1 DeviceEmulator的串口驅動程序PDD層的類定義
20.2 CReg2410uan類
20.3 S3C2410串口驅動程序PDD層的初始化
20.4 CPdd2410Uart類的PostInit成員函數
20.5 串口數據接收中斷請求處理函數Recei、veInterruptHandler
20.6 串口MODEM事件中斷請求處理函數:ModemInterruptHandler
20.7 串口線路中斷請求處理函數LineInterruptHandler
20.8 串口驅動程序PDD層的流控功能函數xmitcomchaT、SetDTlR和SetRTs
20.9 串口數據發送中斷請求處理函數XmitInterruptHandler
20.10 串口發送間斷信號的功能函數SetBreak
20.11 CancelReceive函數和CantelXlmit函數
20.12 SetOutputMode函數和SetBaudRate函數
第五篇 開發Windows CE的PC卡總線接口驅動程序
第21章 PC卡總線橋驅動程序
21.1 PC卡驅動程序的分層結構
21.2 PC卡接口驅動程序實體分離的MDD層和PDD層
21.3 PC卡總線橋驅動程序
第22章 CPCCardBusBridgeBase類是OEM開發者開發PC卡總線橋驅動程序工作的起點
22.1 CPCCardBusBridgeBase類定義
22.2 CPcmciaWindowlnfo類
22.3 CPCCardBusBridgeBase類的數據成員和成員函數
第23章 CPcmciaBusBridge類——DeviceEmulator的PC卡總線橋驅動程序具體實現
23.1 CPcmciaBusBridge類的抽象意義及繼承關係
23.2 CPcmciaBusBradge類的數據成員
23.3 CPcmciaBusBridge類的構造函數要負責生成PC卡總線橋驅動程序的IST線程
23.4 CPcmciaBusBridge類的Init成員函數負責初始化PC卡總線橋硬件和向上提交Socket Service
第24章 PC卡的Socket
24.1 Socket Service的內容
24.2 DeviceEmulator的Pc卡Socket的類數據結構及其繼承關係
24.3 Socket的屬性(信息)和狀態
24.4 PC卡Socket在系統中的組織管理
24.5 Socket的句柄
24.6 Socket的電源管理
24.7 PC卡總線橋設備與Pc卡Socket在軟件數據結構上的關聯
第25章 PCMCIA橋驅動程序的lST線程和ISR
25.1 CPcmciaBusBridge類成員函數Installlsr初始化PCMCIA控制器的卡狀態改變中斷
25.2 PC卡總線橋驅動程序的IST線程負責處理PC卡插拔和Socket電源狀態改變事件
參考文獻
主題書展
更多
主題書展
更多書展購物須知
大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。
特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。
無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

