找回密码
 注册
关于网站域名变更的通知
查看: 328|回复: 1
打印 上一主题 下一主题

USB名词解释

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-12-28 17:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
(一)域:是USB数据最小的单位,由若干位组成(至于是多少位由具体的域决定),域可分为七个类型:

1 Z) Z, P, @! N- f; m# L1 K7 E
1、同步域(SYNC),八位,值固定为0000 0001,用于本地时钟与输入同步
1 Z3 x% _' J8 u/ P' L& l3 g, B
2、标识域(PID),由四位标识符+四位标识符反码构成,表明包的类型和格式,这是一个很重要的部分,这里可以计算出,USB的标识码有16种,具体分类请看问题五。
5 e; X) s5 i5 `9 n. J5 x+ r% t
3、地址域(ADDR):七位地址,代表了设备在主机上的地址,地址000 0000被命名为零地址,是任何一个设备第一次连接到主机时,在被主机配置、枚举前的默认地址,由此可以知道为什么一个USB主机只能接127个设备的原因。

6 I! D9 r8 `6 U
4、端点域(ENDP),四位,由此可知一个USB设备有的端点数量最大为16个。

: y6 R4 o+ |. V
5、帧号域(FRAM),11位,每一个帧都有一个特定的帧号,帧号域最大容量0x800,对于同步传输有重要意义(同步传输为四种传输类型之一,请看下面)。
& H' w9 d: Z9 Z7 F
6、数据域(DATA):长度为0~1023字节,在不同的传输类型中,数据域的长度各不相同,但必须为整数个字节的长度

& b1 K9 B3 H4 h
7、校验域(CRC):对令牌包和数据包(对于包的分类请看下面)中非PID域进行校验的一种方法,crc校验在通讯中应用很泛,是一种很好的校验方法,至于具体的校验方法这里就不多说,请查阅相关资料,只须注意CRC码的除法是模2运算,不同于10进制中的除法。
8 U3 s% r) K1 X2 K# }
(二)包:由域构成的包有四种类型,分别是令牌包、数据包、握手包和特殊包,前面三种是重要的包,不同的包的域结构不同,介绍如下
& z3 c8 `$ C1 _$ y& ^; B
1、令牌包:可分为输入包、输出包、设置包和帧起始包(注意这里的输入包是用于设置输入命令的,输出包是用来设置输出命令的,而不是放据数的)
其中输入包、输出包和设置包的格式都是一样的:
SYNC+PID+ADDR+ENDP+CRC5(五位的校验码)
帧起始包的格式:
SYNC+PID+11位FRAM+CRC5(五位的校验码)

# p* a! I' u( ]
2、数据包:分为DATA0包和DATA1包,当USB发送数据的时候,当一次发送的数据长度大于相应端点的容量时,就需要把数据包分为好几个包,分批发送,DATA0包和DATA1包交替发送,即如果第一个数据包是 DATA0,那第二个数据包就是DATA1。但也有例外情况,在同步传输中(四类传输类型中之一),所有的数据包都是为DATA0,格式如下:
SYNC+PID+0~1023字节+CRC16

6 @7 r% F, T. `1 P+ X# [( ]
3、握手包:结构最为简单的包,格式如下
SYNC+PID

  S0 y( v( ?( A/ s6 j+ ?# t
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-25 11:54 , Processed in 0.078125 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表