赤峰建网站的电话,网站制作如皋,WordPress朗读,交互式网站建设从全局说起。先说host对dev的插入检测。由于dev插入到host#xff0c;导致为0的D和D-线突然有了电平变化#xff0c;有且只有一根线的电平会变。在高速和全速模式下#xff0c;D线会被拉高#xff1b;在低速模式下D-线会被拉高。同时#xff0c;host会对插入的dev进行消抖…从全局说起。先说host对dev的插入检测。由于dev插入到host导致为0的D和D-线突然有了电平变化有且只有一根线的电平会变。在高速和全速模式下D线会被拉高在低速模式下D-线会被拉高。同时host会对插入的dev进行消抖检测在RTL中延迟一段时间认为抖动结束开始真正地检测dev是否插入。
当检测到dev插入host状态机从PRT_DISCON转向PRT_DISABLE因为此时仅用于检测插入还没有使能该port故状态机名字叫做PRT_DISABLE。对host会给ulpi phy连续发送两个数0x84和0x50查ulpi手册得知这两个数是给ulpi芯片的地址0x4写入0x50将host的port opmodeport的操作模式切换成disable bit-stuff和disable NRZI编码这就是通知upli PHY下一步要发送k j序列了不要耽误事不要对我的k j序列进行编码解码。对于高速host在切换port的op_mode后才能发送复位才能进入等待chirp k状态对于全速设备直接进入复位状态。以下以高速host为例。
等待chirp k如果插入的dev也支持高速传输则会拉高D-线一段时间向host发送chrip khost收到后会向dev发送至少3对的k j序列与dev握手dev收到后将自己切换成高速状态。这就是chrip的handshake。
随后host将prt_opmode切换将PHY变成NORMAL模式。
chirp handshake结束后D和D-自然就回到了SE0态即D/D-为0。那么此时host由于处于HST_CHIRP_DONE状态并不会将SE0视作复位并且该SE0持续时间很短大概200us而USB协议复位需要持续ms级时长才能被当作复位。
随后host状态切换为正常状态开始每隔125us发送起始帧。