Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Агуров П.В. -> "Интерфейсы USB. Практика использования и программирования" -> 129

Интерфейсы USB. Практика использования и программирования - Агуров П.В.

Агуров П.В. Интерфейсы USB. Практика использования и программирования — СПб.: БХВ-Петербург, 2004. — 576 c.
ISBN 5-94157-202-6
Скачать (прямая ссылка): interface2004.djvu
Предыдущая << 1 .. 123 124 125 126 127 128 < 129 > 130 131 132 133 134 135 .. 166 >> Следующая

'!«Back:.
Next>
Cancel
Help
Рис. 14.6. Первый шаг создания драйвера
Шаг 2. Выбор архитектуры драйвера
На втором шаге необходимо выбрать архитектуру создаваемого драйвера: Windows NT 4.0 или WDM (рис. 14.7). Первый вариант уже практически не используется, поэтому мы выбираем модель WDM.
Шаг 3. Выбор шины
На третьем шаге необходимо выбрать шину, на которой располагается устройство, для которого создается драйвер (рис. 14.8). В нашем случае это USB (заметим, что если драйвер создается для последовательного или параллельного интерфейса, то следует выбрать None, т. к. обращение к таким портам производится напрямую, без дополнительного драйвера шины).
Гпава 14. Создание USB-устройства на основе ATMEL АТ89С5131
413
DiivcrWorks
;r Wizard (DriverWorks) - Step 2 of 10
Choose one of the following as your driver project type and target operating systemr'. ,
T Windows NT 4j)
Select this option if your driver is for NT 4.0 and you want to use the DriverWorks C++ framework. :
, ,^,,« .. ,: „v ..... Select this option if your driver
Uff. WfiM (Windows Driver Model) js for WDM andi,ou want t0
;Windows S8/Windows 2000, ; u?e the QrjVerWorks f>+
u..V¦.'^v'"^:М-:-ґ-Л framework. •'•.y.
< Back Next >
Finish:
Cancel
Help
Рис. 14.7. Второй шаг создания драйвера
NT/WDM Device Driver Wizard (DriverWorks) - Step 3 of 10
If your driver controls a hardware device, select the appropriate bus
rSeteWadwaeBus^*---^^^^-— , .C-N_one-driver does not control hardware • ,-C^lSA'.V. r PCMCIA :.-;'(Г PNPI^a j C USB (WDM only] : Г 1394 (WDM only)
USB Vendor ID
J03EB
USB Product ID
(5803
vNot used
sxt >
Finish
Cancel
Help
DriverWorks
Рис. 14.8. Третий шаг создания драйвера
474
Часть IV. Создание USB-устройств
Для USB-устройств следует указать следующие параметры: идентификатор производителя (USB Vendor ID) и идентификатор продукта (USB Product ID). Конечно, следует указывать те же идентификаторы, что и в дескрипторе устройства.
Заметим, что указанные значения идентификаторов используются только для формирования INF-файла, их можно легко изменить и после генерации файлов драйвера. Так, в нашем случае в INF-файл будет записана строка:
[Manufacturer] %MfgName%«MfgO [MfgO]
%DeviceDesc%-ATDriver_DDI, USB\VID_03EBePID_5803
Шаг 4. Задание набора конечных точек
На четвертом шаге необходимо задать набор конечных точек, поддерживаемых устройством (рис. 14.9). Свойства конечных точек должны в точности совпадать со свойствами, описанными в дескрипторе конфигурации, иначе запуск драйвера приведет к краху системы.
NT/WDM Device Driver Wizard (DriverWorks) - Step 4 of 11
DriverWmiks ^^^^^
<Back
Add an entry foi each endpoint on youi USB device.
One configuration will be created containing all of the endpoint$;you
can add configurations by editing the source code later.
Name
Endpoint! IN
.Address j IN/OUTj Type 1 MaxXfer j
1 IN INTERRUPT 8
Add..
Edit..
Delete
Next>
Finish
Cancel
Help
Рис. 14.9. Четвертый шаг создания драйвера
Глава 14. Создание USB-устройства на основе ATMEL АТ89С5131
415
Для добавления новой конечной точки следует нажать кнопку Add и запол нить требуемые поля свойств конечной точки (рис. 14.10).
[Add USB Endpoint ЕЗІ
і Endpoint Address (1-15). |1
I (* In (this pipe is used to read from the device]
C Qut (this pipe is used to write to the device)
Endpoint Type ' !interrupt J
Max Transfer SJze I8
?.ndpoint Name
JEndpointllN f Supcjest jj
OK j Cancel I

Рис. 14.10. Добавление конечной точки
Кнопка Suggest в диалоговом окне добавления конечной точки позволяет автоматически сгенерировать имя переменной для конечной точки.
Шаг 5. Задание имени класса и файла
На пятом шаге (рис. 14.11) необходимо задать имена для присвоения файлу С++, который содержит класс драйвера (File Name), и самому классу драйвера (Driver Class). Эти имена создаются на основе имени проекта и обычно их оставляют без изменений.
Шаг 6. Выбор функций драйвера
На шестом шаге необходимо выбрать функции, которые будет поддерживать драйвер (рис. 14.12). Возможные варианты функциональности:
О Read — драйвер будет обрабатывать запросы на чтение;
О Write — драйвер будет обрабатывать запросы на запись;
О Flush — драйвер поддерживает функцию сброса буферов;
О Device Control — драйвер будет поддерживать пользовательские запросы с
ПОМОЩЬЮ фуНКЦИИ DeviceloControl;
416
Часть IV. Создание USB-устройств
DrherWorks
it Wizard (DriverWorks) - Step 5 of 11
The next few steps will ask you some questions about your driver : class.
The WDM device driver created by the DriyerWizard has a single; "driver" class and a single ,"device" class,: Drivers for NT 4.0 and earlier may have multiple device classes/
Pjiver Class
This is the name of the C++ class used to implement your driver.
This is the file name ; used for the driver class implementation.
Usually, the defaults shown here do not need to be changed.
<Back
Next > ,
Finish
Cancel
Help
Рис. 14.11. Пятый шаг создания драйвера
Предыдущая << 1 .. 123 124 125 126 127 128 < 129 > 130 131 132 133 134 135 .. 166 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100