![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
USB2.0
文章平均质量分 94
USB2.0学习记录。
原海青木
傲梅风骨,落水情怀,我是一只不脱发的攻城狮。
展开
-
DWC USB2.0协议学习2--架构介绍
DWC_otg作为Host时,所有的周期和非周期接收到只使用同一个FIFO,该FIFO用于缓存接收的USB数据包,接收到的每个数据包的状态也保存在FIFO中,这里的状态是指保存IN通道的编号以及其他信息,例如接收的字节数量和有效性状态、在AHB上执行事务的请求等。如果接收到IN令牌并且FIFO中的数据可用,则MAC将读取数据,构建数据包并向主机发送出去,随后等待来自主机的握手包(如果有的话),然后将事务状态更新到PFC。该模块负责令牌、数据和握手包的生成和接收,以及PID和CRC的检查和生成。原创 2024-06-26 17:32:41 · 930 阅读 · 0 评论 -
DWC USB2.0协议学习1--产品概述
首先是系统概述,站在系统层面来分析DWC_otg控制器,对DWC_otg控制器的功能做简单概述,典型的系统框架结构图如下图1-1所示,其中浅蓝色部分是根据配置决定,黑色部分是所有配置都有的。1.1 AHB总线接口上图1-1左边部分是AHB总线接口,这一部分主要是实现CPU和DWC_otg控制器信息交互功能。:AHB slave接口,此时DWC_otg控制器是从设备,CPU通过该接口对DWC_otg的控制和状态寄存器(CSR)、数据FIFO和队列进行读写访问。原创 2024-06-25 15:43:42 · 896 阅读 · 0 评论 -
USB2.0学习4--USB包结构和包类型
上一篇讲了USB帧、微帧、传输、事务、包的关系,本章重点讲USB包的基本结构和包类型。原创 2024-06-24 12:08:32 · 826 阅读 · 0 评论 -
USB2.0学习3--USB传输和事务
USB 通信由一系列帧构成(从时间角度来看);在一帧数据内,可以划分为4种传输方式(从功能场景角度来看),每种传输方式都有各自的特点。再往下细分,每种传输又由3种基本的事务组成,一个事务由若干个数据包组成,包则是USB总线上数据传输的最小单位,所有的数据都是打包后再发送出去的。原创 2024-06-24 11:41:10 · 1050 阅读 · 0 评论 -
USB2.0学习2--描述符
例如鼠标,当主机给鼠标设备发送请求后,鼠标需要把自己当前信息上报给主机,这个信息是鼠标左移、鼠标右移、鼠标滑轮滚动、鼠标左键、鼠标右键的当前状态数据的集合,而鼠标各种各样,有的只有两个按键,有的是七八个按键,这么多类型不一样的鼠标,主机是怎么知道鼠标设备发上来的一堆数据(报告)中哪个数据代表哪个按键,报告描述符就是用来解决这个问题。主机在获取描述符时,首先获取设备描述符,再获取配置描述符,然后根据配置描述符中的配置集合总长度,一次将配置描述符、接口描述符、类特殊描述符(如果有)、端点描述符一次读回。原创 2024-06-24 11:06:14 · 969 阅读 · 0 评论 -
USB2.0学习1--基本概念
USB全称是 Universal Serial Bus,即通用串行总线,是一种计算机与外围设备进行数据交互的串行通信标准。USB协议是在1994年底由英特尔、IBM、Microsoft等公司联合提出的,现由USB协会(USB-IF)管理。USB使用差分信号来传输数据,具有传输速度快、支持热插拔、连接灵活、独立供电、协议向下兼容等优点,目前应用十分广泛。原创 2024-06-24 10:15:14 · 993 阅读 · 0 评论