关于RS-232,485等系列的驱动编写,类似于USB等,见[1]。
摄像头驱动程序
WDM摄像头驱动程序分两部分,一部分是类驱动(Class Driver)程序,由MS提供,提供了标准接口,一部分是小驱动(Mini Driver)程序,用户编写。
WDM中,Mini Driver首先将自己注册给Class Driver,Class Driver拥有设备对象,而Mini Driver不用创建设备对象,利用Class Driver中的设备对象进行系统调用。
流设备的类驱动主要是控制请求,通过调用小驱动的适配器来访问具体的硬件。在流设备的类驱动与小驱动都初始化,小驱动需要等待类驱动来调用。类驱动用stream request block(SRB)向小驱动发送标准的请求,小驱动通过解析SRB后回答类驱动的请求。SRB可传送命令和数据。
类驱动的目标是与OS交互,包括同步,提供标准接口。小驱动由类驱动调用,负责硬件相关的操作。用户编写小驱动时会向类驱动注册一些回调函数,类驱动作为主程序会有适当的时机调用这些回调函数。
关于小驱动的流控制流程及示例,可以见[1].
[1] Windows驱动开发详解,张帆