將串行應(yīng)用移植到USB接口的簡(jiǎn)便方法(06-100)
現(xiàn)在可以將應(yīng)用連接到PC上,來(lái)看看Windows即插即用技術(shù)的響應(yīng)了。 在對(duì)所有USB應(yīng)用都適用的初始枚舉階段(在USB 2.0標(biāo)準(zhǔn)的第9章描述)之后,屏幕上將彈出一個(gè)對(duì)話框,提醒用戶(hù)已經(jīng)發(fā)現(xiàn)一個(gè)新的硬件設(shè)備,需要為操作系統(tǒng)對(duì)其進(jìn)行配置,以便使用它。 雖然CDC驅(qū)動(dòng)程序已經(jīng)是操作系統(tǒng)的一部分,但仍然需要更多的信息來(lái)幫助將新發(fā)現(xiàn)的設(shè)備與驅(qū)動(dòng)程序進(jìn)行綁定。 這會(huì)在Windows硬件管理器中創(chuàng)建針對(duì)特定端口的“屬性頁(yè)”,以后用戶(hù)可以用它卸載或重新配置端口。 在安裝階段,需要一個(gè)很小的純文本文件(擴(kuò)展名為.inf)。需要先用(文本編輯器)準(zhǔn)備好,當(dāng)即插即用向?qū)б髸r(shí)提供。“.inf”舉例如下:
本文引用地址:http://2s4d.com/article/81086.htm ; Windows USB CDC ACM Setup File
; Copyright (c) 2000 Microsoft Corporation
; Copyright (C) 2004 Microchip Technology
Inc.
[Version]
Signature="$Windows NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-
08002BE10318}
Provider=%MCHP%
LayoutFile=layout.inf
DriverVer=08/17/2001,5.1.2600.0
[Manufacturer]
%MFGNAME%=DeviceList
[DestinationDirs]
DefaultDestDir=12
[SourceDisksFiles]
[SourceDisksNames]
[DeviceList]
%DESCRIPTION%=DriverInstall, USBVID
_04D8&PID_000A
;-----------------------------------------------
-------------------------------
; Windows 2000/XP Sections
;-----------------------------------------------
-------------------------------
[DriverInstall.nt]
CopyFiles=DriverCopyFiles
AddReg=DriverInstall.nt.AddReg
[DriverCopyFiles]
usbser.sys,,,0x20
[DriverInstall.nt.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,usbser.sys
HKR,,EnumPropPages32,,"MsPorts.dll,
Serial PortPropPageProvider"
[DriverInstall.nt.Services]
AddService=usbser, 0x00000002, Driver
Service
[DriverService]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%usbser.sys
;------------------------------------------------ ------ ------------------------
; String Definitions
;------------------------------------------------ ------ -----------------------
[Strings]
MCHP="Microchip Technology Inc."
MFGNAME="Microchip Technology Inc."
DESCRIPTION="Communications Port"
SERVICE="USB RS-232 Emulation Driver"
上面的“.inf”例子可用作模板進(jìn)行快速定制。 文件格式非常簡(jiǎn)單,大多數(shù)Windows程序員都能快速讀懂。 即使對(duì)于不太熟悉的人,也可以很快識(shí)別中文件由不同部分組成,每個(gè)部分的標(biāo)題包含在方括號(hào)中,在相應(yīng)部分內(nèi)有一或多個(gè)由參數(shù)名稱(chēng)和參數(shù)值組成的正文。 在整個(gè)文件中,只能少數(shù)幾個(gè)部分需要用戶(hù)定制,包括:
·[Device List] 部分包括從USB-IF獲得(許可)的公司和應(yīng)用獨(dú)有的VID/PID號(hào)碼對(duì)以及其它信息。
·[Strings]部分包含操作系統(tǒng)在即插即用階段在不同的對(duì)話框中使用的不同字符串和標(biāo)識(shí),以及在硬件管理器中標(biāo)識(shí)設(shè)備的字符串和標(biāo)識(shí)。
評(píng)論