编者:因为LINUX内核对S3C2440的Host驱动的已经支持,而且支持的外设相当的丰富,所以这一部分只是进行配置就可以使用。因为配置的东西较多,没有给出详细的截图,看手册上介绍的就很明白。需要手册的请留下邮箱索取。
1 配置和测试USB 键盘、扫描器和鼠标
在内核源代码目录的终端输入:make menuconfig,依次选择如下子菜单项:
Device Drivers --->
[*] HID Devices --->
按空格键选中“USB Human Interface Device (full HID) support”,这样就配置好了USB键盘和鼠标项。
提示:这里的配置选项对应的内核源代码目录是:linux-2.6.32.2/drivers/hid/usbhid,其中USB 键盘和条码扫描器的原理是一样的,因此它们的代码是相同的。
2 测试USB 键盘、扫描器和鼠标
在内核源代码根目录下执行:make zImage,把生成的新内核烧写到开发板中,我们这里依然使用友善之臂提供的文件系统root_qtopia 做测试,因为它可以同时支持USB 键盘、鼠标和触摸屏,并且是支持热插拔,所以使用起来十分方便。在前面的步骤中,我们通过触摸屏点击已经进入了qtopia 图形系统,因此这里直接找个USB HUB,同时连上USB 鼠标和键盘,甚至是USB 条码扫描器就可以了,使用鼠标找到一个应用程序,比如qtopia 自带的“便签”,点击打开它,这时就可以使用键盘输入各种英文字符了,还可以使用USB 条码扫描器直接扫描条码进行输入。
3 配置优盘
因为优盘用到了SCSI 命令,所以我们先增加SCSI 支持。在Device Drivers 菜单里面,选择SCSI devicesupport,按回车进入出现菜单,按空格键选择选项--SCSI device support,然后进入选择SCSI disk support,返回Device Drivers 菜单,再选择 USB support,按回车进入USB support 菜单,找到并选中“<*> USB Mass Storage support”,另外,现在的优盘等移动存储器使用的大都是FAT/FAT32 格式的,因此我们还需要添加FAT32 文件系统的支持,在内核配置主菜单下依次选择如下菜单项:
File systems --->
DOS/FAT/NT Filesystems --->
进入FAT32 文件系统配置子菜单,并选择:MSDOS fs support
除此之外,为了支持中英文的编码,在“File systems”菜单下选择“-*- Native languagesupport --->”并进入,在这里,我们要选择如下几个编码的支持:
<*> Codepage 437 (United States, Canada)
<*> NLS ISO 8859-1 (Latin 1; Western European Languages)
<*> NLS UTF-8
退出保存以上配置。
4 测试优盘
接上面的步骤,在内核源代码根目录下执行:make zImage,把生成的新内核烧写到开发板中,先不要插入优盘(这样做是为了看插入时的打印信息),等系统启动后,进入命令行控制台,此时优盘,可以看到优盘信息:此时优盘已经被自动挂载到开发板的/udisk 目录,同时,在Qtopia 系统中,可以看到任务栏上多了一个图标,优盘中的所有文件会在“文档”组中全部显示出来,但它是不显示目录名称的,如果你的文件太多,那么其列表也是相当可观的。
说明:在Qtopia 中支持优盘自动挂载是通过友善之臂开发的一个Qtopia 2.2.0 插件实现的,目前它只识别MMC/SD 卡或优盘的第一个分区,并且格式为常见的VFAT/FAT32/FAT16,如果你的优盘或者SD 卡不能识别,请检查是否为VFAT/FAT32/FAT16 格式。
5 配置和测试USB 摄像头
Linux 内核版本之所以经常会有更新,其中不断加入更多的驱动支持是主要原因之一,目录Linux-2.6.32.2 已经支持几乎所有的USB 摄像头驱动,但是每个厂家的USB 摄像头驱动对上层提供的接口各不相同,因此即使内核支持了这么多摄像头,普通的USB 摄像头应用程序也无法识别到它们。下面是在内核中配置USB 摄像头的步骤:在Device Drivers 菜单里面,选择 Multimedia devices,回车进入选择“*”号选项,并选择Video capture adapters 进入
出现菜单,找到V4L USB device选项并进入出现如图菜单,选择如图“*”号选项,再选GSPCA based webcams 进入。GSPCA 是一个法国程序员在业余时间制作的一个万能USB 摄像头驱动程序,在此可以选择所有类型USB 摄像头的支持,
--- GSPCA based webcams
<*> ALi USB m5602 Camera Driver
<*> STV06XX USB Camera Driver
<*> GL860 USB Camera Driver
<*> Conexant Camera Driver
<*> Etoms USB Camera Driver
<*> Fujifilm FinePix USB V4L2 driver
<*> Jeilin JPEG USB V4L2 driver
<*> Mars USB Camera Driver
<*> Mars-Semi MR97310A USB Camera Driver
<*> OV519 USB Camera Driver
<*> OV534 USB Camera Driver
<*> Pixart PAC207 USB Camera Driver
<*> Pixart PAC7311 USB Camera Driver
<*> SN9C20X USB Camera Driver
<*> SONIX Bayer USB Camera Driver
<*> SONIX JPEG USB Camera Driver
<*> SPCA500 USB Camera Driver
<*> SPCA501 USB Camera Driver
<*> SPCA505 USB Camera Driver
<*> SPCA506 USB Camera Driver
<*> SPCA508 USB Camera Driver
<*> SPCA561 USB Camera Driver
<*> SQ Technologies SQ905 based USB Camera Driver
<*> SQ Technologies SQ905C based USB Camera Driver
<*> Syntek DV4000 (STK014) USB Camera Driver
<*> SUNPLUS USB Camera Driver
<*> T613 (JPEG Compliance) USB Camera Driver
<*> TV8532 USB Camera Driver
<*> VC032X USB Camera Driver
<*> ZC3XX USB Camera Driver
这样,我们就配置好了万能的USB 摄像头驱动,如果有新的内核版本,或许还有很多的选项。
6 测试USB 摄像头
接上面的步骤,在内核源代码目录执行:make zImage,把生成的内核烧写到开发板中,依然使用友善之臂自带的文件系统root_qtopia,因为里面已经有一个USB 摄像头动态预览和拍照的程序。把摄像头插到开发板的USB Host 端口,然后在“友善之臂”程序组中,点击打开“USB摄像头”程序,你将会看到动态的预览界面,调节一下摄像头的对焦,拍好姿势,点下“Snap”按钮就可以拍照了,拍摄的照片将会保存到“文档”组中。本程序还可以调节亮度、对比度和伽马值;每个型号的摄像头在出厂时已经设定了最佳值或者缺省值,程序开启时会读取它们并以此设定