Драйвер для Windows-samplesspbSpbTestTool на майстрі · microsoftWindows-драйвер-зразки · GitHub
Зразок SpbTestTool має дві цілі. По-перше, це демонструє, як відкрити дескриптор контролера SPB, використовувати інтерфейс SPB з драйвера KMDF та використовувати пасивні рівні переривання GPIO. По-друге, він реалізує набір команд для обміну даними з периферійним пристроєм для допомоги в налагодженні.

Цей зразок є неповним як драйвер і лише демонструє використання інтерфейсу запиту вводу-виводу SPB та переривань GPIO. Він не призначений для використання у виробничому середовищі.
Щоб встановити периферійний драйвер SpbTestTool, виконайте такі дії:
Переконайтеся, що драйвер збирає без помилок.
Скопіюйте файли SYS та INF в окрему папку.
Запустіть Devcon.exe. Ви можете знайти цю програму в папці tools \ devcon, де ви встановили WDK. Введіть таку команду у вікні команд:
devcon.exe оновлення SpbTestTool.inf ACPI \
Щоб запустити програму SpbTestTool, виконайте такі дії:
Перейдіть до каталогу, що містить SpbTestTool.exe.
Введіть таку команду у вікні команд:
За замовчуванням програма SpbTestTool використовує зразок драйвера SpbTestTool. Однак замість цього можна використовувати альтернативний периферійний драйвер. Щоб вказати альтернативний драйвер, використовуйте такий формат для командного рядка:
Вхідний скрипт може використовуватися замість інтерактивного підказки. Формат сценарію вимагає однієї команди на рядок. Щоб запустити сценарій, використовуйте наступний формат для командного рядка у командному вікні:
Програма SpbTestTool циклічно нескінченно очікує на одну з наступних команд. Команди перекладаються у відповідний запит вводу-виводу SPB без відстеження стану в драйвері. Статус передачі, вміст буфера та коди помилок повертаються за необхідності. Введіть довідку в будь-який час, щоб відобразити цей список команд. Натисніть Ctrl-C у будь-який час, щоб скасувати поточну команду та вийти з програми.
| відчинено | Відкрита ручка для контролера SPB. |
| закрити | Закрийте ручку контролера SPB. |
| замок | Заблокуйте автобус для ексклюзивного доступу. |
| розблокувати | Розблокуйте автобус. |
| lockconn | Заблокуйте спільне підключення для ексклюзивного доступу. Ця команда використовується для синхронізації передачі шини зразком драйвера з доступом до операційної області через прошивку ACPI. |
| unlockconn | Розблокуйте спільне з’єднання. |
| напишіть <> | Запишіть байтовий масив на периферійний пристрій. Приклад:> писати |
| читати | Зчитування з периферійного пристрою. Приклад:> прочитати 5 |
| writeread <> | Атомно запишіть байтовий масив на периферійний пристрій і прочитайте назад. Приклад:> writeread 5 |
| сигналу | Повідомте драйвер SpbTestTool про обробку переривання. |
| допомогти | Відобразити список підтримуваних команд. |
| Ctrl-C | Натисніть Ctrl-C у будь-який час, щоб скасувати невідступну команду та вийти з програми. |