一. 装置
a. 将设备插入个人电脑中
b. 安装WinDriver

二. 选择你的硬件设备
a. 开启DriverWizard:选择「Start」 →「Programs」 → 「WinDriver」 → 「DriverWizard」(在Windows环境下)或者执行< Path to WinDriver > /wizard/wdwizard(注:若你的操作系统为Windows 8 / 7 或 Vista,你需要用管理员来驱动DriverWizard 。
b. 在视图中点选「New host driver project」

c. DriverWizard将会显示所有你在主机中即插即用的插卡。

三. 为即插即用设备下载INF文件(适用于Windows系统)
当你想要在Windows系统中开发一个针对即插即用设备(PCI / PCI Express/PCMCIA)的驱动程序时,为了更准确的检测设备资源以及通过WinDriver与设备产生交互,你需要安装INF文件来注册设备使WinDriver能够运作。
DriverWizard会自动创建 INF文件以及进入安装步骤,若你想通过DriverWizard来生成并安装 INF,你需要遵循以下的步骤:
- 在wizard 的「Select Your Device」目录中选择「Generate. INF file」 。DriverWizard在检测你的设备时会显示供应商身份码、设备身份码、制造商名称以及设备名称等信息,你也可以针对制造商名称和设备名称进行修改。
- 当你在 Windows环境下使用DriverWizard,你可以点选自动安装INF文件,执行步骤为在DriverWizard生成的生 INF 对话窗口中选择「Automatically Install the INF file」。若此步骤执行失败时,DriverWizard会提供你下载安装下载指示。
- 选择「Next」生成INF文件并安装。
- 若 INF安装完成,你可从上述步骤2开始从清单中选择并开启你的设备。注:若「Support Message Signaled Interrupts」选项能启用,你可用它生成INF 來手动处理讯 中断(Message – Signaled Interrupts)或是处理延长讯 中断(Message – Signaled Interrupts-X)。此为当你选择针对虚拟的PCI设备生成 INF文件时的预设选项,是在Windows Vista或者更高级的操作系统中对于MSI / MSI-X 状况发生时所可做的选项。若想了解关于 MSI / MSI-X 以及 INF文件的更多信息,请参考WinDriver PCI使用手册。
四. 检测与定义硬件资源



五. 硬件测试
在编写驱动程序之前,请务必确认你的硬件是否处于预期中可运作的情况,接着可使用DriverWizard 来诊断硬件。
对I/O端口进行读与写、存储器空间以及你定义的暂存器。


注:对于敏感层集的中断状况,和传统的PCI中断一样,在“监听”中断前。你必须使用DriverWizard 来进行确定中断情况的注册,并指定读/写指令来确认(清除)中断,否则操作系统可能会down掉,需要注意的是,中断状况的确认情况是因设备而异的。

六. 编写驱动程序代码
a. 选择工具栏「Project」→「Generate Code」建立编码。
b. 选择你想要开发的程序语言。

c. 选择你是否想要驱动程序代码处理即插即用和电源管理事件,以及是否希望产生内核插件的代码。注:如何你想要在Windows 操作系统中创建内核插件驱动程序,请先安装Windows Driver Kit ( WDK)。

d. 点击「OK」 ,DriverWizard 将会开启你想要开发的环境(如上述 Step b)

DriverWizard生成的文件如下:
- API从应用端(以及从内核端)连接到你的硬件。
- 上述AP所I建立的应用示例连接到你的硬件。
- 可用于所有选择的开发环境的Project/Make文件。
- 用于你的设备(Windows上的即插即用硬件)的INF文件。
七. 编译并运行
- 使用你喜欢的编译器和DriverWizard生成的make文件
- 编译示例诊断应用程序并运行,该示例是你完成最终驱动程序的健壮骨架。
- 根据应用程序的需求,修改示例应用程序或者以 WinDriver所提供的其它示例中为起点。
标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!