windows USB 虚拟串口的 PC驱动

来源:互联网 发布:php function_exists 编辑:程序博客网 时间:2024/06/08 06:14
LINUX端内核配置需加入USBgadget支持,9261UDP支持以及usb-serial.支持。

    

     i. /linux-kernel/driver/usb/gadget/serial.c中

    #define GS_DEFAULT_USE_ACM 0该为

    #define GS_DEFAULT_USE_ACM 1

     ii. 需在/dev/下加入ttygs0 c 127 0

    命令为mknod /dev/ttygs0 c 127 0

     iii. /etc/inittab中最后加入B:2345:respawn:/sbin/getty 115200 ttygs0

    

    

     windows端需要加入usb- serial驱动支持

    提供文件名为gserial.inf和usbser.sys

    

    l 成功在windows的超级终端用 usb-serial串口进入步骤:

    1. 按照上面编译内核及其文件系统/dev , /etc/inittab文件。

    

    

    2. 用以前的方式打开超级终端,启动9261系统到内核启动完毕,此时连通usb线,在windows端,会出现“发现新硬件,安装驱动的提示,”,手动安装即可,确认成功,在“我的电脑”右击鼠标,查看属性,找到“硬件设备管理器”,并在“端口”项目中找到“Gadget Serial”。

    

    

    3. 重新启动9261系统,进入sh提示符后,等待直到

    gs_open: (0,c0014000,c0cb2ee0) device is not connected

    gs_close: NULL port pointer

    出现,如未出现,说明前面操作有问题。在等待字符出现后,重新拔插一次USB线,会立即出现:

    gs_disconnect: Gadget Serial disconnected

    gs_setup_complete: status error, status=0, actual=16, length=18

    gs_disconnect: Gadget Serial disconnected

    gs_set_config: Gadget Serial configured, full speed CDC-ACM config

    此时你可以新建一个超级终端,选择端口为“gadget serial“,我这里是com5

    其他配置与以前超级终端一样,bd 115200 之后回车进入,就有如下界面:

    Familiar Linux v0.8.3 ebd9261 ttygs0

    

    ebd9261 login:

    

    

    

    

    

    

    附录[一]:

    

    gserial . inf come from :/linux/document/usb/gadget_serial.txt

    

    [Version]

    Signature="$Windows NT$"

    Class=Ports

    ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}

    Provider=%LINUX%

    DriverVer=08/17/2004,0.0.2.0

    ; Copyright (C) 2004 Al Borchers (

    [email=alborchers@steinerpoint.com]alborchers@steinerpoint.com[/email]

    )

    [Manufacturer]

    %LINUX%=GSerialDeviceList

    [GSerialDeviceList]

    %GSERIAL%=GSerialInstall, USB\VID_0525&PID_A4A7

    [DestinationDirs]

    DefaultDestDir=10,System32\Drivers

    [GSerialInstall]

    CopyFiles=GSerialCopyFiles

    AddReg=GSerialAddReg

    [GSerialCopyFiles]

    usbser.sys

    [GSerialAddReg]

    HKR,,DevLoader,,*ntkern

    HKR,,NTMPDriver,,usbser.sys

    HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"

    [GSerialInstall.Services]

    AddService = usbser,0x0002,GSerialService

    [GSerialService]

    DisplayName = %GSERIAL_DISPLAY_NAME%

    ServiceType = 1 ; SERVICE_KERNEL_DRIVER

    StartType = 3 ; SERVICE_DEMAND_START

    ErrorControl = 1 ; SERVICE_ERROR_NORMAL

    ServiceBinary = %10%\System32\Drivers\usbser.sys

    LoadOrderGroup = Base

    [Strings]

    LINUX = "Linux"

    GSERIAL = "Gadget Serial"

    GSERIAL_DISPLAY_NAME = "USB Gadget Serial Driver"

    

    附录[二]:usbser.sys

    

    你可以在\WINDOWS\Driver Cache\i386\sp2.cab中找到

    或者g.cn 找找

原创粉丝点击