Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

LinuxÏÂUSB´ÓÉ豸ʹÓÃgadget API

Ò»¡¢USB´ÓÉ豸Çý¶¯½éÉÜ
USB×ÜÏßÉÏÖ÷ÒªÓÐÈýÀàÉ豸£ºÖ÷¿ØÖÆÆ÷£¨Host Controller£¬ such as
EHCI¡¢UHCI¡¢OHCI£©¡¢¼¯Ï߯÷£¨hub£©ºÍÉ豸£¨device£©¡£Host controller£¨HC£©¸ºÔð×ÜÏߵĹÜÀí
£¬
ÊÇ×ÜÏßµÄÖ¸»Ó¹Ù£¬×ÜÏßÉÏÒ»Çд«Êä¶¼ÊÇÓÉHC·¢ÆðµÄ£¬Ö§³ÖOTGµÄDeviceÒ²ÄÜ·¢Æð´«Ê䣻HubÊÇ×ÜÏߵĽڵ㣬ÓÃÀ´À©Õ¹×ÜÏßÉϿɽÓÈëÉ豸µÄÊýÁ¿£¬¶ÔÓÚÇý
¶¯À´ËµÊÇ͸Ã÷µÄ£»Device¾ÍÊǸ÷ÖÖ¸÷ÑùµÄÉ豸ÁË£¬Ã¿¸öÉ豸¶¼ÓÐ×Ô¼ºµÄ¹¦ÄÜ£¬±ÈÈçUÅÌ¡¢USBÉãÏñÍ·µÈµÈ¡£
LinuxÏÂÖ÷»ú¶ËUSBÉ豸µÄÇý¶¯£¨device driver£©±àдµÄ×ÊÁÏÓкܶ࣬LDD3ÖÐÓÐÏàÓ¦µÄ½éÉÜ¡£Ö÷ÒªÊÇͨ¹ýÄÚºËÖÐUSB
coreÕâ¸öÄ£¿éÓëÉ豸½»»¥¡£±¾ÎÄÖ»½éÉÜÔËÐÐLinuxµÄǶÈëʽUSBÉ豸Çý¶¯µÄ±àд¡£ÒòΪHost¶ËÒѾ­
ʹ
ÓÃÁËdevice driverÒ»´Ê£¬ÎªÁ˱ÜÃâ»ìÏý£¬Ê¹ÓÃUSB gadget driverÒ»´Î±íʾ´ÓÉ豸Çý¶¯¡£In USB protocol
interactions, the device driver is the master (or client driver) and the
gadget driver is the slave (or function driver).
Linux USB gadget driver API¶¨ÒåÁËÒ»¸öͨÓõÄgadget driverµÄ½Ó¿Ú£¬gadget
driverͨ¹ýAPIÓëµ×²ãUSB controller driverͨÐÅ¡£¸ÃAPIÆÁ±ÎÁ˵ײãÓ²¼þµÄ²»Í¬£¬Ê¹gadget
driver×¢ÖØ¹¦ÄܵÄʵÏÖ£¬¾¡Á¿ÓëÓ²¼þÎ޹ء£Slave¶ËϵͳµÄ¼Ü¹¹ÈçÏÂͼËùʾ£º
ÆäÖУ¬gadgetfsÌṩ¸øÓû§¿Õ¼ä³ÌÐòÖ±½ÓÓëUSB device controller½»»¥µÄÄÜÁ¦¡£
¶þ¡¢Ïà¹Ø×ÊÁÏ
USB gadget API LayerµÄÏà¹Ø×ÊÁÏ£º
1£® http://www.linux-usb.org/gadget/
2£® ÄÚºËÖÐ/KernelDoc/gadget/Ŀ¼ÏµÄÎĵµ
3£®×îÖØÒªµÄ¾ÍÊÇ/include/linux/usb_gadget.hÎļþ£¬¸ÃÎļþÖÐÓÐgadget
API½Ó¿ÚÊý¾Ý½á¹¹ºÍ·½·¨µÄÏêϸ¶¨Òå¼°×¢ÊÍ¡£
Gadget DriverµÄÀý×Ó£º
4£® ÄÚºË/drivers/usb/gadget/Ŀ¼ÏÂÓÐһЩgadget
driverµÄÀý×Ó£¬zero.cΪ×î¼òµ¥µÄÀý×Ó£¬file_storage.cÊÇ´æ´¢É豸µÄgadget driver¡£
Èý¡¢gadget API
ÒªÁ˽âgadget API£¬Ö»ÐèÒªÀí½âÍ·Îļþ£¨usb_gadget.h£©Öм¸¸öÖØÒªµÄÊý¾Ý½á¹¹¾Í¿ÉÒÔÁË¡£ÏêϸµÄ×ֶνéÉÜ¿´hÎļþ×¢ÊÍ¡£
£¨1£©
struct usb_gadget {
const struct usb_gadget_ops *ops;
struct usb_ep                *ep0;
struct list_head              ep_list;
enum usb_device_speed        speed;
unsigned  


Ïà¹ØÎĵµ£º

LinuxÏÂÅäÖÃSVN Server(Ò»)

Ò»¡¢Ê×ÏÈҪ׼±¸±ØÐëµÄÈí¼þ£¬ÎÒÑ¡Óõİ汾ÈçÏ£º
apr-1.4.2£¬ÏÂÔØµØÖ·£ºhttp://archive.apache.org/dist/apr/
apr-util-1.3.9£¬ÏÂÔØµØÖ·£ºhttp://archive.apache.org/dist/apr/
apache£¨httpd-2.2.9£©£¬ÏÂÔØµØÖ·£ºhttp://archive.apache.org/dist/httpd/
SQLite-2.6.23.1£¬ÏÂÔØµØÖ·£ºhttp://www.sqlite.org/
neon- ......

LinuxÖж¨Î»¡¢²éÕÒÎļþµÄÃüÁî

which Óï·¨ which command ˵Ã÷ ÒÀÐò´Ópath»·¾³±äÁ¿ËùÁеÄĿ¼ÖÐÕÒ³öcommandµÄλÖ㬲¢ÏÔʾÍêÕû·¾¶µÄÃû³Æ¡£ÔÚÕÒµ½µÚÒ»¸ö·ûºÏÌõ¼þµÄ³ÌÐòÎļþʱ£¬¾ÍÁ¢¿ÌÍ£Ö¹ËÑË÷£¬Ê¡ÂÔÆäÓàδËÑË÷Ŀ¼¡£ ·¶Àý£¬ÕÒ³ölsÃüÁîµÄ³ÌÐòÎļþµÄλÖ㺠which ls ϵͳÊä³ö£º /usr/bin/ls whereis Óï·¨ whereis [option] name ˵Ã÷ ÕÒ³öÌØ¶¨ ......

linux Ó²Á´½ÓÓëÈíÁ¬½ÓµÄÇø±ð


Ê×ÏÈÎÒÃÇÐèÒªÁ˽âlinux
ÏÂÓ²Á´½ÓÒÔ¼°ÈíÁ¬½ÓµÄ»ù±¾¸ÅÄî.
Ó²Á´½Ó£ºÐ½¨µÄÎļþÊÇÒѾ­´æÔÚµÄÎļþµÄÒ»¸ö±ðÃû£¬µ±Ô­Îļþɾ³ýʱ£¬Ð½¨µÄÎļþÈÔÈ»¿ÉÒÔʹÓÃ.
ÈíÁ´½Ó£ºÒ²³ÆÎª·ûºÅÁ´½Ó£¬Ð½¨µÄÎļþÒÔ“
·¾¶”
µÄÐÎʽÀ´±íʾÁíÒ»¸öÎļþ£¬ºÍWindows
µÄ¿ì½Ý·½Ê½Ê®·ÖÏàËÆ£¬Ð½¨µÄÈíÁ´½Ó¿ÉÒÔÖ¸Ïò²»´æÔÚµÄÎļþ.
ÏÂÃæÏêϸ½ ......

linuxÏÂcÓïÑÔÁ¬½ÓmysqlÊý¾Ý¿â

ÔÚFC8ÖÐĬÈϰ²×°µÄÓÐmysql£¬Ã»Óеϰ¿ÉÒԺܷ½±ãµÄ°²×°Ï¡£
ĬÈϵÄmysqlµÄincludeÎļþĿ¼ÔÚ/usr/include/mysql
ĬÈϵÄmysqlµÄlibÎļþ¼ÐÔÚ/usr/lib/mysql
ÕâÁ½¸öĿ¼ÔÚÎÒÃDZàÒëʱºòÐèÒªµ½¡£
ÎҵIJâÊÔÓõÄC´úÂëΪ£º
££include <stdio.h>
#include <stdlib.h>
#include <mysql.h>
#define CONN_HOST ......

LINUXϹÒÔØusb

Ò»ÔçÉ϶¼ÊÇŪÔÚLINUXϹÒÔØusb£¬ºÜÎÞÓ¼¸ºõÕÒ±éÁËËùÓÐÍøÉÏÈ˼ҽéÉܵķ½·¨£¬¿É¶ÔÓÚÒ»¸öÐÂÊÖÀ´Ëµ£¬ËûÃÇ´ó¶¼½²µÄ²»Çå³þ²»³þ£¬×îºó»¹ÊǾõµÃÕâ¸ö±È½Ï·½·¨±È½Ï³É¹¦£¬ËùÒÔÌù³öÀ´´ó¼Ò·ÖÏí£¬Ëµ²»¶¨ÒÔºó»¹ÄÜÓõõ½
1.USBÒÆ¶¯´æ´¢É豸ͨ³£±»Ê¶±ðΪsda1£¬¾ßÌå¿ÉÒÔͨ¹ýfdisk -lÃüÁî²éѯ¡£Ò»°ãÍâ¹ÒµãµÄ×ÓĿ¼¶¼Êǽ¨Á¢ÔÚ/mntÀïÃæµÄ ʹÓà ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ