Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1340076
  • 博文数量: 92
  • 博客积分: 10389
  • 博客等级: 上将
  • 技术积分: 1918
  • 用 户 组: 普通用户
  • 注册时间: 2006-08-10 16:13
文章存档

2014年(1)

2012年(15)

2009年(6)

2008年(37)

2007年(72)

2006年(54)

我的朋友

分类: LINUX

2008-11-06 14:06:40

 
 
 
超级终端如何应用usb模拟的串口
 
 
 

双向USB转串口实现例子步骤:

 

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.infusbser.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 ()
[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  找找
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
阅读(3474) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~