实验 1e:将驱动程序添加到映像

在此实验中,我们将添加示例驱动程序 Toaster,将其打包,并将其部署到我们的设备。

先决条件/要求

确保已根据创建基本映像创建了一个基本映像。

要完成此部分,需要安装以下工具:

  • Windows 评估和部署工具包 (Windows ADK)
  • IoT 核心版 PowerShell 环境
  • Windows 10 IoT 核心版程序包
  • IoT 核心版 ADK 加载项
  • 文本编辑器,比如记事本或 VS Code

检查类似的驱动程序

在添加驱动程序之前,你可能需要查看预先生成的电路板支持包 (BSP),以确保没有类似的驱动程序。

例如,查看文件中的驱动程序列表:\\IoT-ADK-AddonKit\\Source-arm\\BSP\\Rpi2\\Packages\\RPi2FM.xml

  • 如果没有现有的驱动程序,你通常可以添加一个。

  • 如果有驱动程序,但不满足你的需求,则需要通过创建新的 BSP 来替换驱动程序。 我们将在实验 2 中介绍这一点。

创建驱动程序文件

  • 完成 Toaster 驱动程序示例下列出的步骤以生成此示例。 你将创建一个文件 wdfsimple.sys,你将使用它来安装驱动程序。

你也可以使用自己的 IoT 核心版驱动程序,只要它与现有的电路板支持包 (BSP) 不发生冲突。

  • 将文件 wdfsimple.sys 和 wdfsimple.inf 复制到测试文件夹中,例如:C:\wdfsimple\

为驱动程序生成一个包

创建驱动程序文件后,我们需要创建一个包含它们的包,然后将该包添加到我们的 Windows IoT 核心版映像。

  1. 以管理员身份运行 IoT 核心版 PowerShell 环境。 选择合适的体系结构。

  2. 使用 New-IoTDriverPackage 创建驱动程序包。

Add-IoTDriverPackage C:\wdfsimple\wdfsimple.inf Drivers.Toaster
(or) newdrvpkg C:\wdfsimple\wdfsimple.inf Drivers.Toaster

这会在 C:\MyWorkspace\Source-<arch>\Packages\Drivers.Toaster 创建一个新文件夹。

这还会将 FeatureID DRIVERS_TOASTER 添加到 C:\MyWorkspace\Source-<arch>\Packages\OEMFM.xml 文件中。

  1. 使用 New-IoTCabPackage 生成包。
New-IoTCabPackage Drivers.Toaster
(or) buildpkg Drivers.Toaster

更新项目的配置文件

使用 Add-IoTProductFeature 更新产品测试配置文件。

Add-IoTProductFeature ProductB Test DRIVERS_TOASTER -OEM
(or) addfid ProductB Test DRIVERS_TOASTER -OEM

生成和测试映像

再次生成 FFU映像,如创建基本映像中所述。 只需运行 New-IoTFFUImage 命令:

New-IoTFFUImage ProductX Test
(or)buildimage ProductX Test 

验证驱动程序是否正确安装

你可以按照 Toaster 驱动程序示例中的步骤来测试你的驱动程序,以验证测试驱动程序是否安装正确。

如果你使用了其他测试驱动程序,则可以按照以下步骤操作:

  1. 启动你的 Windows 10 IoT 核心版设备并记下其 IP 地址。
  2. 在你的技术人员 PC 上,打开文件资源管理器并在地址栏中输入 \\<TARGET_DEVICE_IP>\c$ 并按 Enter。 TARGET_DEVICE_IP 将对应于你 rdevice 的 IP 地址。

如果系统提示你输入凭据,请输入这些凭据并单击“确定”。 如果你尚未更改默认凭据,请使用以下内容:

User ID: Administrator
Password: p@ssw0rd
  1. 接受你的凭据并且文件资源管理器显示设备的 c$ 目录后,导航到并查找 gpiokmdfdemo.sys 文件。c:\Windows\System32\Drivers 如果存在,这将验证你的驱动程序已正确安装在你的设备上。

后续步骤

实验 1f:将 Win32 服务添加到映像