Windows CE工程实践完全解析

Windows CE工程实践完全解析
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2008-10
版次: 1
ISBN: 9787508374734
定价: 45.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 399页
字数: 646千字
正文语种: 简体中文
7人买过
  •   本书讲述了WindowsCE操作系统底层驱动软件开发技术。全书共分5篇25章,内容包括开发WindowsCE的BootLoader、OAL、显示设备驱动程序、串口驱动程序和PC卡总线接口驱动程序,通过解析和研读微软的DeviceEmulator开发板的BSP的源代码,旨在帮助读者系统、全面、具体地了解WindowsEmbeddedCE的BSP的原理与开发技术,从而达到理解和实践WindowsCE嵌入式系统软件开发目的。
      本书注重系统性、先进性和实用性,具有特色鲜明、逻辑性强、针对性强的特点。本书适合于从事WindowsCE操作系统软件开发的工程技术人员使用,也可作为高等院校自动化、电子、计算机、通信工程等专业师生的科研参考书。 前言
    绪论
    第一篇开发WindowsCE的BootLoader
    第1章BootLoader的理论知识介绍
    1.1BootLoader是大多数嵌入式操作系统运行最初的开始
    1.2微软建议WindowsCE的BootLoader所应实现的功能
    1.3BootLoader并不是基于WindowsCE的嵌入式软件系统的必不可少的组成部分

    第2章WindowsCEBootLoader的软件框架和支持库
    2.1以Eboot为实例学习WindOWSCEBootLoader的软件框架
    2.2BLCOMMON支持库
    2.3Eboot支持库
    2.4EthDbg驱动程序

    第3章案例解说开发实现OEM函数
    3.1DeviceEmulator虚拟平台的硬件设计
    3.2开天辟地的Startup函数
    3.3控制流OEM函数
    3.4调试功能OEM函数
    3.5下载功能OEM函数
    3.6以太网收发帧OEM函数
    3.7Flash操作OEM函数
    3.8时钟功能OEM函数
    3.9可选实现的OEM函数
    3.10在BootLoacler和操作系统之间共享信息的数据结构
    3.11保存用户选项配置参数的数据结构
    第4章认识WindowsCE操作系统镜像文件的格式

    第二篇开发WindowsCE的OAL
    第5章WindowsCE操作系统的系统启动执行流程
    5.1图览WindowsCE的初始化启动流程
    5.2开天辟地的StartUp函数
    5.3KemelStart函数
    5.4ARMlnit函数
    5.5kernel.d11模块的入口点函数NKStartup
    5.6ARMSetup函数
    5.7KemelStart函数

    第6章案例解说WindOWSCEOAL的开发任务汇总
    6.1OAL是什么
    6.2OEMGLOBAL结构体及其全局变量
    6.3OEM地址映射表
    6.4OEMIoControl函数
    6.5OAL的Cache操作OEM函数

    第7章WindowsCE操作系统的中断处理机制
    7.1ISR和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.2ISR必须处理系统时钟的定时中断请求

    第9章TOC的秘密
    9.1初识pTOC指针
    9.2解析实例以加深认识TOC数据
    9.3TOC的条目
    9.4TOC数据的实质

    第10章KITL调试技术
    10.1什么是KITL
    10.2图览KITL的初始化流程
    10.3初始化KITL库
    10.4初始化WindowsCETL连接
    10.50ALKITLARGS结构体
    10.60ALKITLDEVICE结构体
    10.7主动的KITL模式与被动的KITL模式
    10.8KITLTRANSPORT结构体
    10.9汇总OAL的开发者需要为启用KITL功能做哪些事情

    第11章案例解说以太网端口设备EthDbg驱动程序的开发
    11.1CS8900A的硬件原理知识
    11.2读写ReadlPacketPage和WritePacketPage
    11.3硬件初始化函数CS8900AInit
    11.4发送以太网数据帧函数CS8900ASendFrame
    11.5接收以太网数据帧函数CS8900AGetFrame
    11.6启用与禁用CS8900A的中断功能的函数CS8900AEnableInts和CS8900ADisableInts
    11.7CS8900A的配置地址过滤机制的函数CS8900ACurrentPacketFilter和CS8900AMultleastList

    第三篇开发WindowsCE的显示设备驱动程序
    第12章从DDI系列函数开始
    12.1DDI函数是什么
    12.2WindLOWSCE的GWES子系统如何获得DDI函数
    12.3DrvGradientFill和DrvAlphaBlend函数
    12.4DrvEnablePDEV和DrvDisablePDEV函数
    12.5DrvEnableSurface和DrvDisableSurfaee函数
    12.6DrvCreateDeviceBitmap和DrvDeleteDeviceBitmap函数
    12.7DrvRealizeBrush函数
    12.8DrvStrokePath函数
    12.9DrvFillPath函数
    12.10DrvPaim函数
    12.11块传输功能函数DrvAnyBlt、DrvBitBlt、DrvCopyBits和DrvTransparentBlt
    12.12DrvSetPalette函数
    12.13DrvSetPointerShape函数
    12.14DrvMovePointer函数
    12.15DrvGetModes函数
    12.16DrvRealizeColor和DrvlJnrealizeColol‘函数
    12.17DrvGetMasks函数
    12.18DrvContrastControl函数
    12.19DrvPowerHandler函数
    12.20DrvEscape函数
    12.21DrvDisableDriver函数

    第13章WindowsCE的显示表面及与之相关的数据结构
    13.1显示表面
    13.2调色板、颜色转换对象和颜色转换类
    13.3SLIRFOBJ结构体和TmpGPESmf类
    13.4路径
    13.5剪切板对象CLIPOBJ
    13.6画笔

    第14章GPE类是用户开发WindOWSCE的显示设备驱动程序工作的起点
    14.1从DDI到CPE
    14.2GPE类
    14.3GPE类和块传输操作
    14.4GPE类和画线操作
    14.5DeviceEmulator的显示设备驱动程序实现——S3C2410DISP类

    第15章显示设备及其驱动程序对DirOCtDraw功能的支持
    15.1由导出函数HALInit引出DDHALINFO结构体
    15.2DDHALINFO结构体
    15.3DDCAPS结构体
    15.4DDHALDDCALLBACKS结构体
    15.5DDHAL_DDSURFACECALLBACKS结构体
    15.6DirectDraw显示表面
    15.7DDGPE类

    第四篇开发WindowsCE的串口驱动程序
    第16章设备管理器和流式接口设备驱动程序
    16.1串口驱动程序是典型的流式接口设备驱动程序
    16.2设备管理器以总线枚举的方式加载流式接口的设备驱动程序
    16.3总线枚举器加载一个设备驱动程序的具体步骤

    第17章串口设备句柄和串口文件句柄
    17.1从COM—Init导出函数到HWINDEPINFO结构体
    17.2pHWObji成员
    17.3pHWHead成员
    17.4DCB成员
    17.5CommTimeouts成员
    17.6RxBufferInfo和TxBufferInfo成员
    17.7pAccessOwner、0penList、OpenCS和OpenCnt成员
    17.8fEventMask成员
    17.9pDispatchThread、PIiority256、hKillDispatchThread、KillRxThread和hSerialEvent成员
    17.10hReadEvent和hTransmitEvem成员
    17.11fAbortRead和fAboffTransmit成员
    17.12DroppedBytesMDD、DroppedIBytesPDD、RxBytes、TxBytes、TxBytesPendillg和TxBytesSent成员
    17.13XFlow、StopXmit、SentXoff、DtrFlow和RtsFlow成员
    17.14ReceiveCritSecl和TransmitCritSecl成员
    17.15dwMddErrors成员

    第18章CSeriaIPDD类是OEM用户开发WindOWSCE串口驱动程序PDD层工作的起点
    18.1CSerialPDD类定义
    18.2CSerialPDD类的初始化部分
    18.3CserialPDD类的串口设备操作部分
    18.4CSerialPDD类的中断接口部分
    18.5CSerialPDD类的数据发送与接收部分
    18.6CSerialPDD类的MODEM功能部分
    18.7CSerialPDD类的线路功能部分
    18.8CSerialPDD类的串口配置部分
    18.9CSerialPDD类的IR特殊处理部分和错误处理部分

    第19章WindowsCE操作系统对外设的电源状态管理
    19.1电源管理架构和电源管理器
    19.2设备电源状态和系统电源状态
    19.3电源管理器与设备驱动程序之间的编程接口
    19.4电源管理器与应用程序之间的编程接口
    19.5例说设备驱动程序开发中的电源管理实务

    第20章案例解说串口驱动程序的具体开发
    20.1DeviceEmulator的串口驱动程序PDD层的类定义
    20.2CReg2410uan类
    20.3S3C2410串口驱动程序PDD层的初始化
    20.4CPdd2410Uart类的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.11CancelReceive函数和CantelXlmit函数
    20.12SetOutputMode函数和SetBaudRate函数

    第五篇开发WindowsCE的PC卡总线接口驱动程序
    第21章PC卡总线桥驱动程序
    21.1PC卡驱动程序的分层结构
    21.2PC卡接口驱动程序实体分离的MDD层和PDD层
    21.3PC卡总线桥驱动程序

    第22章CPCCardBusBridgeBase类是OEM开发者开发PC卡总线桥驱动程序工作的起点
    22.1CPCCardBusBridgeBase类定义
    22.2CPcmciaWindowlnfo类
    22.3CPCCardBusBridgeBase类的数据成员和成员函数

    第23章CPcmciaBusBridge类——DeviceEmulator的PC卡总线桥驱动程序具体实现
    23.1CPcmciaBusBridge类的抽象意义及继承关系
    23.2CPcmciaBusBradge类的数据成员
    23.3CPcmciaBusBridge类的构造函数要负责生成PC卡总线桥驱动程序的IST线程
    23.4CPcmciaBusBridge类的Init成员函数负责初始化PC卡总线桥硬件和向上提交SocketService

    第24章PC卡的Socket
    24.1SocketService的内容
    24.2DeviceEmulator的Pc卡Socket的类数据结构及其继承关系
    24.3Socket的属性(信息)和状态
    24.4PC卡Socket在系统中的组织管理
    24.5Socket的句柄
    24.6Socket的电源管理
    24.7PC卡总线桥设备与Pc卡Socket在软件数据结构上的关联

    第25章PCMCIA桥驱动程序的lST线程和ISR
    25.1CPcmciaBusBridge类成员函数Installlsr初始化PCMCIA控制器的卡状态改变中断
    25.2PC卡总线桥驱动程序的IST线程负责处理PC卡插拔和Socket电源状态改变事件
    参考文献
  • 内容简介:
      本书讲述了WindowsCE操作系统底层驱动软件开发技术。全书共分5篇25章,内容包括开发WindowsCE的BootLoader、OAL、显示设备驱动程序、串口驱动程序和PC卡总线接口驱动程序,通过解析和研读微软的DeviceEmulator开发板的BSP的源代码,旨在帮助读者系统、全面、具体地了解WindowsEmbeddedCE的BSP的原理与开发技术,从而达到理解和实践WindowsCE嵌入式系统软件开发目的。
      本书注重系统性、先进性和实用性,具有特色鲜明、逻辑性强、针对性强的特点。本书适合于从事WindowsCE操作系统软件开发的工程技术人员使用,也可作为高等院校自动化、电子、计算机、通信工程等专业师生的科研参考书。
  • 目录:
    前言
    绪论
    第一篇开发WindowsCE的BootLoader
    第1章BootLoader的理论知识介绍
    1.1BootLoader是大多数嵌入式操作系统运行最初的开始
    1.2微软建议WindowsCE的BootLoader所应实现的功能
    1.3BootLoader并不是基于WindowsCE的嵌入式软件系统的必不可少的组成部分

    第2章WindowsCEBootLoader的软件框架和支持库
    2.1以Eboot为实例学习WindOWSCEBootLoader的软件框架
    2.2BLCOMMON支持库
    2.3Eboot支持库
    2.4EthDbg驱动程序

    第3章案例解说开发实现OEM函数
    3.1DeviceEmulator虚拟平台的硬件设计
    3.2开天辟地的Startup函数
    3.3控制流OEM函数
    3.4调试功能OEM函数
    3.5下载功能OEM函数
    3.6以太网收发帧OEM函数
    3.7Flash操作OEM函数
    3.8时钟功能OEM函数
    3.9可选实现的OEM函数
    3.10在BootLoacler和操作系统之间共享信息的数据结构
    3.11保存用户选项配置参数的数据结构
    第4章认识WindowsCE操作系统镜像文件的格式

    第二篇开发WindowsCE的OAL
    第5章WindowsCE操作系统的系统启动执行流程
    5.1图览WindowsCE的初始化启动流程
    5.2开天辟地的StartUp函数
    5.3KemelStart函数
    5.4ARMlnit函数
    5.5kernel.d11模块的入口点函数NKStartup
    5.6ARMSetup函数
    5.7KemelStart函数

    第6章案例解说WindOWSCEOAL的开发任务汇总
    6.1OAL是什么
    6.2OEMGLOBAL结构体及其全局变量
    6.3OEM地址映射表
    6.4OEMIoControl函数
    6.5OAL的Cache操作OEM函数

    第7章WindowsCE操作系统的中断处理机制
    7.1ISR和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.2ISR必须处理系统时钟的定时中断请求

    第9章TOC的秘密
    9.1初识pTOC指针
    9.2解析实例以加深认识TOC数据
    9.3TOC的条目
    9.4TOC数据的实质

    第10章KITL调试技术
    10.1什么是KITL
    10.2图览KITL的初始化流程
    10.3初始化KITL库
    10.4初始化WindowsCETL连接
    10.50ALKITLARGS结构体
    10.60ALKITLDEVICE结构体
    10.7主动的KITL模式与被动的KITL模式
    10.8KITLTRANSPORT结构体
    10.9汇总OAL的开发者需要为启用KITL功能做哪些事情

    第11章案例解说以太网端口设备EthDbg驱动程序的开发
    11.1CS8900A的硬件原理知识
    11.2读写ReadlPacketPage和WritePacketPage
    11.3硬件初始化函数CS8900AInit
    11.4发送以太网数据帧函数CS8900ASendFrame
    11.5接收以太网数据帧函数CS8900AGetFrame
    11.6启用与禁用CS8900A的中断功能的函数CS8900AEnableInts和CS8900ADisableInts
    11.7CS8900A的配置地址过滤机制的函数CS8900ACurrentPacketFilter和CS8900AMultleastList

    第三篇开发WindowsCE的显示设备驱动程序
    第12章从DDI系列函数开始
    12.1DDI函数是什么
    12.2WindLOWSCE的GWES子系统如何获得DDI函数
    12.3DrvGradientFill和DrvAlphaBlend函数
    12.4DrvEnablePDEV和DrvDisablePDEV函数
    12.5DrvEnableSurface和DrvDisableSurfaee函数
    12.6DrvCreateDeviceBitmap和DrvDeleteDeviceBitmap函数
    12.7DrvRealizeBrush函数
    12.8DrvStrokePath函数
    12.9DrvFillPath函数
    12.10DrvPaim函数
    12.11块传输功能函数DrvAnyBlt、DrvBitBlt、DrvCopyBits和DrvTransparentBlt
    12.12DrvSetPalette函数
    12.13DrvSetPointerShape函数
    12.14DrvMovePointer函数
    12.15DrvGetModes函数
    12.16DrvRealizeColor和DrvlJnrealizeColol‘函数
    12.17DrvGetMasks函数
    12.18DrvContrastControl函数
    12.19DrvPowerHandler函数
    12.20DrvEscape函数
    12.21DrvDisableDriver函数

    第13章WindowsCE的显示表面及与之相关的数据结构
    13.1显示表面
    13.2调色板、颜色转换对象和颜色转换类
    13.3SLIRFOBJ结构体和TmpGPESmf类
    13.4路径
    13.5剪切板对象CLIPOBJ
    13.6画笔

    第14章GPE类是用户开发WindOWSCE的显示设备驱动程序工作的起点
    14.1从DDI到CPE
    14.2GPE类
    14.3GPE类和块传输操作
    14.4GPE类和画线操作
    14.5DeviceEmulator的显示设备驱动程序实现——S3C2410DISP类

    第15章显示设备及其驱动程序对DirOCtDraw功能的支持
    15.1由导出函数HALInit引出DDHALINFO结构体
    15.2DDHALINFO结构体
    15.3DDCAPS结构体
    15.4DDHALDDCALLBACKS结构体
    15.5DDHAL_DDSURFACECALLBACKS结构体
    15.6DirectDraw显示表面
    15.7DDGPE类

    第四篇开发WindowsCE的串口驱动程序
    第16章设备管理器和流式接口设备驱动程序
    16.1串口驱动程序是典型的流式接口设备驱动程序
    16.2设备管理器以总线枚举的方式加载流式接口的设备驱动程序
    16.3总线枚举器加载一个设备驱动程序的具体步骤

    第17章串口设备句柄和串口文件句柄
    17.1从COM—Init导出函数到HWINDEPINFO结构体
    17.2pHWObji成员
    17.3pHWHead成员
    17.4DCB成员
    17.5CommTimeouts成员
    17.6RxBufferInfo和TxBufferInfo成员
    17.7pAccessOwner、0penList、OpenCS和OpenCnt成员
    17.8fEventMask成员
    17.9pDispatchThread、PIiority256、hKillDispatchThread、KillRxThread和hSerialEvent成员
    17.10hReadEvent和hTransmitEvem成员
    17.11fAbortRead和fAboffTransmit成员
    17.12DroppedBytesMDD、DroppedIBytesPDD、RxBytes、TxBytes、TxBytesPendillg和TxBytesSent成员
    17.13XFlow、StopXmit、SentXoff、DtrFlow和RtsFlow成员
    17.14ReceiveCritSecl和TransmitCritSecl成员
    17.15dwMddErrors成员

    第18章CSeriaIPDD类是OEM用户开发WindOWSCE串口驱动程序PDD层工作的起点
    18.1CSerialPDD类定义
    18.2CSerialPDD类的初始化部分
    18.3CserialPDD类的串口设备操作部分
    18.4CSerialPDD类的中断接口部分
    18.5CSerialPDD类的数据发送与接收部分
    18.6CSerialPDD类的MODEM功能部分
    18.7CSerialPDD类的线路功能部分
    18.8CSerialPDD类的串口配置部分
    18.9CSerialPDD类的IR特殊处理部分和错误处理部分

    第19章WindowsCE操作系统对外设的电源状态管理
    19.1电源管理架构和电源管理器
    19.2设备电源状态和系统电源状态
    19.3电源管理器与设备驱动程序之间的编程接口
    19.4电源管理器与应用程序之间的编程接口
    19.5例说设备驱动程序开发中的电源管理实务

    第20章案例解说串口驱动程序的具体开发
    20.1DeviceEmulator的串口驱动程序PDD层的类定义
    20.2CReg2410uan类
    20.3S3C2410串口驱动程序PDD层的初始化
    20.4CPdd2410Uart类的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.11CancelReceive函数和CantelXlmit函数
    20.12SetOutputMode函数和SetBaudRate函数

    第五篇开发WindowsCE的PC卡总线接口驱动程序
    第21章PC卡总线桥驱动程序
    21.1PC卡驱动程序的分层结构
    21.2PC卡接口驱动程序实体分离的MDD层和PDD层
    21.3PC卡总线桥驱动程序

    第22章CPCCardBusBridgeBase类是OEM开发者开发PC卡总线桥驱动程序工作的起点
    22.1CPCCardBusBridgeBase类定义
    22.2CPcmciaWindowlnfo类
    22.3CPCCardBusBridgeBase类的数据成员和成员函数

    第23章CPcmciaBusBridge类——DeviceEmulator的PC卡总线桥驱动程序具体实现
    23.1CPcmciaBusBridge类的抽象意义及继承关系
    23.2CPcmciaBusBradge类的数据成员
    23.3CPcmciaBusBridge类的构造函数要负责生成PC卡总线桥驱动程序的IST线程
    23.4CPcmciaBusBridge类的Init成员函数负责初始化PC卡总线桥硬件和向上提交SocketService

    第24章PC卡的Socket
    24.1SocketService的内容
    24.2DeviceEmulator的Pc卡Socket的类数据结构及其继承关系
    24.3Socket的属性(信息)和状态
    24.4PC卡Socket在系统中的组织管理
    24.5Socket的句柄
    24.6Socket的电源管理
    24.7PC卡总线桥设备与Pc卡Socket在软件数据结构上的关联

    第25章PCMCIA桥驱动程序的lST线程和ISR
    25.1CPcmciaBusBridge类成员函数Installlsr初始化PCMCIA控制器的卡状态改变中断
    25.2PC卡总线桥驱动程序的IST线程负责处理PC卡插拔和Socket电源状态改变事件
    参考文献
查看详情
系列丛书 / 更多
您可能感兴趣 / 更多