7设备驱动程序开发.pptx

嵌入式软件开发导论7. 设备驱动程序开发2005主要内容概述流驱动接口设备驱动程序架构USB mouse 驱动开发示例Windows CE 系统服务什么是设备驱动程序设备驱动程序是与硬件设备进行通信的系统程序。一个设备可以是物理设备,也可以是一个逻辑实体。通常,这些实体需要操作系统对其进行控制,资源管理。设备驱动程序就是管理这些物理设备或者虚拟设备,协议 或者系统服务的软件模块。 对于每一个基于Windows CE的设备,设备驱动程序都是必不可少。--译自 MSDN“一般”驱动程序开发的理解必须使用汇编语言对端口进行读写设备驱动程序是操作系统的一部分,难于开发与调试。设备驱动程序控制硬件中断比较难于处理必须使用汇编语言读写端口CEDDK.dll 提供 APIs与硬件进行通信HalGetBusDataREAD_PORT_UCHARWRITE_REGISTER_ULONG对于逻辑设备驱动程序,采用Win32 APIs 从硬件获取数据设备驱动程序是操作系统的一部分,难于开发与调试对于UNIX或者是 Windows 9x,设备驱动程序是与操作系统映像连接的,并运行于系统内核态。对于windows CE,大多数的设备驱动程序运行于用户态,简单的来说就是一个DLL文件。设备驱动程序控制硬件大多数的设备驱动程序用来控制硬件。对于某些硬件,是没有驱动的。CPU内存对于虚拟设备驱动程序,没有物理设备。文件系统驱动程序RAM disk中断有时难于处理Windows CE提供逻辑中断 (SYSINTRs) 中断由一个用户态的线程进行处理 (IST)为什么应当写驱动程序?当我们设计硬件时,就需要提供这一硬件的驱动软件。硬件OEM厂商不提供基于Windows CE的硬件驱动,但是提供硬件的规格说明。对于一个现有硬件驱动的功能进行扩展。驱动分类—整体 Windows CE 整体上将设备驱动分为三种: 内置驱动总线流接口内置驱动硬件所必须的驱动程序,这些驱动程序通常由设计OEM厂商进行设计。如:键盘,触摸屏,音频设备。可能不支持一般的驱动接口,也有可能带有扩展的接口或者完全提供一个用户自定义的接口。内置驱动通常需要针对具体的操作系统进行小幅改动。总线驱动管理系统总线如PCI总线等。PCMCIA与 CompactFlash也在其列。负责处理总线上硬件的询问,以及资源的分配。 同时也请求设备管理器为总线上的硬件安装适当驱动程序。驱动分类 – 详细mk:@MSITStore:D:\Program Files\Windows CE Platform Builder\4.20\CEPB\help\wceddk40.chm::/html/cxconaudiodrivers.htmAudio Drivers mk:@MSITStore:D:\Program Files\Windows CE Platform Builder\4.20\CEPB\help\wceddk40.chm::/html/cxconbatterydrivers.htmBattery Drivers mk:@MSITStore:D:\Program Files\Windows CE Platform Builder\4.20\CEPB\help\wceddk40.chm::/html/cxconblockdrivers.htmBlock Drivers mk:@MSITStore:D:\Program Files\Windows CE Platform Builder\4.20\CEPB\help\wceddk40.chm::/html/cxconbluetoothhcitransportdriver.htmBluetooth HCI Transport Driver mk:@MSITStore:D:\Program Files\Windows CE Platform Builder\4.20\CEPB\help\wceddk40.chm::/html/cxcondirect3ddevicedriverinterface.htmDirect3D Device Driver Interface mk:@MSITStore:D:\Program Files\Windows CE Platform Builder\4.20\CEPB\help\wceddk40.chm::/html/_dxce_directdraw_display_drivers_ddhal.htmDirectDraw Display Drivers mk:@MSITStore:D:\Program Files\Windows CE Platform Builder\4.20\CEPB\help\wceddk40.chm::/html/_w

文档评论(0)

1亿VIP精品文档

相关文档