用户工具

站点工具


icore3_arm_hal_18

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
icore3_arm_hal_18 [2020/04/16 18:01]
zgf [三、 实验原理]
icore3_arm_hal_18 [2022/03/18 15:08] (当前版本)
sean
行 2: 行 2:
 |技术支持电话|**0379-69926675-801** ​ ||| |技术支持电话|**0379-69926675-801** ​ |||
 |技术支持邮件|Gingko@vip.163.com ​ ||| |技术支持邮件|Gingko@vip.163.com ​ |||
-|技术论坛|http://​www.eeschool.org ​ ||| 
 ^  版本 ​ ^  日期 ​ ^  作者 ​ ^  修改内容 ​ ^ ^  版本 ​ ^  日期 ​ ^  作者 ​ ^  修改内容 ​ ^
 |  V1.0  |  2020-04-16 ​ |  gingko ​ |  初次建立 ​ | |  V1.0  |  2020-04-16 ​ |  gingko ​ |  初次建立 ​ |
行 95: 行 94:
         * 可通过软件配置为以下角色:         * 可通过软件配置为以下角色:
           * 支持 SRP 的 USB HS/FS 从机(B 器件)           * 支持 SRP 的 USB HS/FS 从机(B 器件)
-          * 支持 SRP 的 USB HS/FS/LS 主机(A 器件) 
           * 支持 SRP 的 USB HS/FS/LS 主机(A 器件)           * 支持 SRP 的 USB HS/FS/LS 主机(A 器件)
         * 支持 HS/FS SOF 以及低速 (LS)“Keep-alive”令牌并具有如下功能:         * 支持 HS/FS SOF 以及低速 (LS)“Keep-alive”令牌并具有如下功能:
行 132: 行 130:
       * 具备软断开功能       * 具备软断开功能
 === 3、高速OTG框图 === === 3、高速OTG框图 ===
 +  * USB OTG HS 模块嵌入了一个 ULPI 接口以连接外部 HS PHY。
 {{ :​icore3:​icore3_arm_hal_18_1.png?​direct |}} {{ :​icore3:​icore3_arm_hal_18_1.png?​direct |}}
-  * USB OTG HS 模块嵌入了一个 ULPI 接口以连接外部 HS PHY。 
- 
 === 4、USB CLASS === === 4、USB CLASS ===
   * USB协议设计的时候,把鼠标,键盘,大容量存储,图像等,这些之前是通过其他接口所实现的,各种的功能,都囊括进来。并且在协议中有对应的规范定义,支持这些功能。因此,制定了各种USB的Clas,即分类,根据功能而分出的各种类别。不同的Class分类,用于实现对应的功能,适用于相应的设备。   * USB协议设计的时候,把鼠标,键盘,大容量存储,图像等,这些之前是通过其他接口所实现的,各种的功能,都囊括进来。并且在协议中有对应的规范定义,支持这些功能。因此,制定了各种USB的Clas,即分类,根据功能而分出的各种类别。不同的Class分类,用于实现对应的功能,适用于相应的设备。
  
   * 常见的USB类设备:   * 常见的USB类设备:
-  ​- 音频类 +    ​- 音频类 
-  - 通信设备类 +    - 通信设备类 
-  - 人机接口设备类 +    - 人机接口设备类 
-  - 物理设备 +    - 物理设备 
-  - 成像设备类 +    - 成像设备类 
-  - 打印机设备类 +    - 打印机设备类 
-  - 大容量存储类 +    - 大容量存储类 
-  - 数据接口类 +    - 数据接口类 
-  - 智能卡设备类 +    - 智能卡设备类 
-  - 内容安全设备类 +    - 内容安全设备类 
-  - 视频设备类 +    - 视频设备类 
-  - 个人医疗保健设备类 +    - 个人医疗保健设备类 
-  - USB音频/​视频(AV)设备类 +    - USB音频/​视频(AV)设备类 
-  - Billboard Device Class Specification +    - Billboard Device Class Specification 
-  - USB Type-C桥接器件类 +    - USB Type-C桥接器件类 
-  - 无线控制类 +    - 无线控制类 
-  - 其他设备 +    - 其他设备 
-  - 特定应用 +    - 特定应用 
-  - 厂商自定义+    - 厂商自定义
 {{ :​icore3:​icore3_arm_hal_18_2.png?​direct |}} {{ :​icore3:​icore3_arm_hal_18_2.png?​direct |}}
 === 5、USB_CDC类简介 === === 5、USB_CDC类简介 ===
-  * USB2.0标准下定义了很多子类,有音频类,CDC类,HID,打印,大容量存储类,HUB,智能卡等等,这些在usb.org官网上有具体的定义,这里主要介绍通信类CDC。CDC(Communication Device Class)类 是USB2.0标准下的一个子类,定义了通信相关设备的抽象集合。它与USB2.0标准以及其下的子类的相互关系如下图所示:+  * USB2.0标准下定义了很多子类,有音频类,CDC类,HID,打印,大容量存储类,HUB,智能卡等等,这些在usb.org官网上有具体的定义,这里主要介绍通信类CDC。CDC(Communication Device Class)类是USB2.0标准下的一个子类,定义了通信相关设备的抽象集合。它与USB2.0标准以及其下的子类的相互关系如下图所示:
   * USB CDC类的通信部分主要包含三部分:枚举过程、虚拟串口操作和数据通信。其中虚拟串口操作部分并不一定强制需要,因为若跳过这些虚拟串口的操作,实际上USB依然是可以通信的,这也就是为什么下图中,在操作虚拟串口之前会有两条数据通信的数据。之所以会有虚拟串口操作,主要是我们通常使用PC作为Host端,在PC端使用一个串口工具来与其进行通信,PC端的对应驱动将其虚拟成一个普通串口,这样一来,可以方便PC端软件通过操作串口的方式来与其进行通信,但实际上,Host端与Device端物理上是通过USB总线来进行通信的,与串口没有关系,这一虚拟化过程,起决定性作用的是对应驱动,包含如何将每一条具体的虚拟串口操作对应到实际上的USB操作。需要注意的是,Host端与Device端的USB通信速率并不受所谓的串口波特率影响,它就是标准的USB2.0全速(12Mbps)速度,实际速率取决于总线的实际使用率、驱动访问USB外设有效速率(两边)以及外部环境对通信本身造成的干扰率等因素组成。   * USB CDC类的通信部分主要包含三部分:枚举过程、虚拟串口操作和数据通信。其中虚拟串口操作部分并不一定强制需要,因为若跳过这些虚拟串口的操作,实际上USB依然是可以通信的,这也就是为什么下图中,在操作虚拟串口之前会有两条数据通信的数据。之所以会有虚拟串口操作,主要是我们通常使用PC作为Host端,在PC端使用一个串口工具来与其进行通信,PC端的对应驱动将其虚拟成一个普通串口,这样一来,可以方便PC端软件通过操作串口的方式来与其进行通信,但实际上,Host端与Device端物理上是通过USB总线来进行通信的,与串口没有关系,这一虚拟化过程,起决定性作用的是对应驱动,包含如何将每一条具体的虚拟串口操作对应到实际上的USB操作。需要注意的是,Host端与Device端的USB通信速率并不受所谓的串口波特率影响,它就是标准的USB2.0全速(12Mbps)速度,实际速率取决于总线的实际使用率、驱动访问USB外设有效速率(两边)以及外部环境对通信本身造成的干扰率等因素组成。
-{{ :​icore3:​icore3_arm_hal_18_3.png?​direct&​800 |}} 
-{{ :​icore3:​icore3_arm_hal_18_4.png?​direct&​800 |}} 
   * USB_CDC类详细内容可参考《USB_CDC类入门培训》。   * USB_CDC类详细内容可参考《USB_CDC类入门培训》。
 +{{ :​icore3:​icore3_arm_hal_18_3.png?​direct&​700 |}}
 +{{ :​icore3:​icore3_arm_hal_18_4.png?​direct&​700 |}}
 +
  
 === 6、USB_CDC类简介 === === 6、USB_CDC类简介 ===
   * **实现原理**   * **实现原理**
   * iCore3中使用的STM32F407IGTx芯片带有USB高速物理层,通过外部高速PHY的ULPI接口外接USB3300设备芯片实现USB_CDC设备物理层搭建。连接示意图如下:   * iCore3中使用的STM32F407IGTx芯片带有USB高速物理层,通过外部高速PHY的ULPI接口外接USB3300设备芯片实现USB_CDC设备物理层搭建。连接示意图如下:
- 
 {{ :​icore3:​icore3_arm_hal_18_5.png?​direct&​550 |}} {{ :​icore3:​icore3_arm_hal_18_5.png?​direct&​550 |}}
  
icore3_arm_hal_18.1587031268.txt.gz · 最后更改: 2020/04/16 18:01 由 zgf