- 15
- 0
- 约1.06万字
- 约 21页
- 2018-02-06 发布于河南
- 举报
usb驱动协议
LINUX下USB1.1设备学习小记现在暂定的学习目标为一个USB鼠标的设备到主机的传输过程软件上的贯穿(会涉及到部分硬件 但是本人的电电路知识有限 涉及的量不会多)
学习的框架如下:
1. USB1.1协议
A.控制传输
B.中断传输
2.USB主机
A.LINUX下的UHCI
3. USB设备
A.飞利浦的PDIUSBD12
4.HID协议
A.鼠标部分
5.USB主机的HID驱动程序 A.鼠标部分
6LINUX的INPUT子系统
? A.鼠标部分
在这里简短说一下为什么会有USB协议的诞生~
一方面,在电脑上可以看多很多的插口,例如PS/2,网口,VGA,DVI,并口,打印机并口
USB设备主要为了统合这些日益增多的插口而诞生的
另一方面,并口的传输随着计算机数据流量的发展而显得力不从心,并口,泛指使用若干个数据位进行传输的设备,在计算机中信号的传输只有1和0两种信号,呢么一次传输数据的大小和数据位的关系就是2x 个bit,当有3个数据位的时候就是23位,也就是8个bit,一个字节,为了增加数据流量,会增大数据位的位数或者增大频率
可以看看IDE硬盘的数据线?
密密麻麻的排了多少数据线,每根数据线就是一个数据位
并口传输的一个特征就是数据一定要一起到达,这样才不会出错,但当频率和数据位增大时,现在的电气技术无法解决信号一起到达的问题,所以开始转向研究串口传输
什么是串口传输呢?? 画了个图和并口传输比较一下
?
左边的是串口传输,右边的是并口传输
可以看出并口传输是每个位一根数据线,并起来传输,而串口传输是所有的位共享一根数据线
而USB的总称是Universal Serial Bus~ 也就是 通用串行总线
这个协议的具体内容也就是规范了串行传输中的信号格式和如何使用这些信号
USB协议:
先看USB接口
可以看出,在USB使用了4根线,分别为电源线,地线,信号线和差分信号线
差分信号线用于检测信号线的传输是否正确
下面我们只关注信号线
然后是USB的串口传输
在串口传输中,由于所有的信号共用一根数据线,所以不仅有先来后到的问题,而且在一个设备和另一个设备进行通信的时候,如果别的设备也进来插一脚,就会导致信号的出错,所以这个时候需要一个管理者,他说好,A设备和我通信,A设备才和管理者通信,通信完成后,管理者说现在到B设备和我通信,A设备你歇一歇,于是B设备才能和管理者通信
在USB协议中,这个管理者称为host,在一个usb组成的括扑中只能存在一个管理者,也就是一个host
任何传输都是由host发起的,设备不能说host你注意了,我要和你通信这样
所以host是一个十分霸道的管理者 = 3=
呢host又如何发起于其它设备的通信呢?
现在介绍一下通信规范
在USB的通信中,分为4个大类
1. 控制传输
控制传输用于对设备的控制访问
2.中断传输
中断传输用于按一定的时间间隔访问设备(例如鼠标 键盘等)
3.等时传输
等时传输用于高流量的无间隔访问设备(视频 音频等)
4.块传输
块传输用于对流量的,对时间要求不高的设备(U盘 移动硬盘等)
这4大类由4种事务组成
1. IN事务
IN事务为host输入服务,当host需要从设备获得数据的时候,就需要in事务
2. OUT事务
OUT事务为host输出服务,host需要输出数据到设备的时候,就需要out事务
3. SETUP事务
SETUP事务为host控制服务,当host希望传输一些USB规范的默认操作的时候
就需要使用setup事务
4. SOF事务
这个规范上是写用于帧同步,但我没接触过SOF事务,所以也说不明白实际用途 Orz
然后这4个事务又由3种包构成
1. 令牌包
令牌包用于指明一次事务的类型
2. 数据包
数据包用于事务中数据的传输
3. 应答包
应答包用于事务传输完成的握手
令牌包由4种包组成
1. in包
in包用于指明当前的事务为in类型
2. out包
out包指明当前事务为out类型
3. setup包
setup包指明当前事务为setup类型
4. sof包
sof包指明当前事务为sof类型
数据包由2种包组成,在usb的数据传输中,每个事务的数据包的类型需要反转data0,data1,data0,data1这样的顺序发送下去,以确保数据的完整性
1. data0包
该数据包的类型为0
2. data1包
该数据包的类型为1
应答包由3种握手包组成
1. ack包
ack握手包指明当前事务的数据包传输是成功的
2. nak包
nak握手包指明当前设备忙,不能处理数据包,请主机稍后再次发送
3. stall包
stall握手包指明当前设备不能接收或者传输数据,表示一个严重的错误介绍一下事务的组成,除了SOF事务,其它事务都由3个包组成,
您可能关注的文档
- 植物学A.doc
- 英国文学2.1.ppt
- 外链书签站.doc
- 自然进化与气候影响.ppt
- 2010上半年软件设计师考试上午真题.ppt.ppt
- 11.2讲课比赛00(新).ppt
- 09级计应、软件专业数字电路B4k.doc
- sql数据库1.doc
- 一元一次方程单元复习(第1课时)修改.ppt
- 金版电子_填空题260.doc
- 全过程工程管理造价咨询工程监理项目服务方案投标方案(技术部分).doc
- 招标代理服务投标技术服务方案(技术方案).doc
- AI大模型与AIGC技术在公安领域的应用解决方案(99页 PPT).pptx
- 工业4.0智能制造数字工厂规划方案.pptx
- 树立社会主义核心价值观.docx
- 三年(2023-2025)中考历史真题分类汇编(全国)专题21 科技文化与社会生活(解析版).docx
- 2025年中考道德与法治真题完全解读(吉林卷).pdf
- 2025年中考道德与法治真题完全解读(安徽卷).pdf
- 三年(2023-2025)中考历史真题分类汇编(全国)专题14 人民解放战争(解析版).pdf
- 三年(2023-2025)广东中考历史真题分类汇编:专题03 中国近代史(八年级上册)(解析版).docx
原创力文档

文档评论(0)