USB驱动1

usb总线和pci总线一样,总线的作用都是提供通道,各种设备利用总线通道来实现自己的功能。

USB OTG接口中有5条线: 2条用来传送数据(D+ 、D-); 1条是电源线(VBUS); 1条则是接地线(GND)、1条是ID线。

基于通用连接技术,实现外设的简单快速连接,达到方便用户、降低成本、扩展PC连接外设范围的目的。它可以为外设提供电源,而不像普通的使用串、并口的设备需要单独的供电系统。另外,快速是USB技术的突出特点之一,USB的最高传输率可达12Mbps比串口快100倍,比并口快近10倍,而且USB还能支持多媒体。

 

每一个USB设备接入PC时,USB总线驱动程序都会给它分配一个编号,接在USB总线上的每一个USB设备都有自己的编号(地址)。PC机想访问某个USB设备时,发出的命令都含有对应的编号(地址)。

usb通讯的基本单位就是端点,0号端点是控制用的,其他还有哪些端点是从0号端点中读出的配置信息知晓的。

 

USB传输速度有:低速1.5Mbps(USB1.0协议)、全速12Mbps(USB1.1协议)、高速480Mbps(USB2.0协议)和超高速5Gbps(USB3.0协议)。

 

linux usb

usb的驱动结构层次:最底层是usb控制器驱动HCD(Host Controller Driver),负责操作usb host;中间一层是usb核心层,usb根据hcd提供的接口实现usb总线通用层,向下配置初始化设备,向上提供endpoint(端口)等级的操作接口;最上一层是usb功能性驱动,根据usb总线层提供的endpoint通讯能力,实现具体的业务,比如usb磁盘驱动、usb声卡驱动、usb网卡驱动等等。

主机侧来看

usb主控制器--->usb主控制器驱动--->usb核心层--->usb设备驱动(插入主机的u盘、鼠标等设备驱动)

usb主控制器驱动和usb设备驱动。前者控制插入其中的usb设备,后者控制usb设备与主机通信。他们之间的usb核心负责usb驱动管理和协议处理的工作,向上上下都可以提供编程接口。

设备侧来看

最底层是usb设备控制器(UDC),一条usb总线上只能有一个usb主控制器,但可以有多个usb设备控制器。其上运行UDC驱动,再往上是一个接口层,其功能就相当于usb核心,向上向下口可以提供接口,然后是gadget驱动

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值