你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】STM32F103之USB(一)

[复制链接]
STMCU小助手 发布时间:2022-5-13 19:00
一、USB介绍+ U# @- _6 g# r
9 y  C& Z/ d) K7 b& }& u- E" @
    USB(Univetsal Serial Bus)的缩写,即通用串行总线。是现在通讯设备中不可或缺的一部分,可以这么说,电子工程师不懂USB那就太OUT了。7 m) c* y4 {7 ]' J( d

( G3 Q/ K( S8 I: n; D- g3 ]二、USB的发展史( v8 [) B4 o5 K
8 g4 K* g4 y$ t: T' d
   1994年     Philips公司  Access.Bus规范(USB的前身)) ^4 X5 \0 a' `
   1996年     Compaq、Intel、Microsoft、NEC   USB1.0规范
2 x( p- W4 }$ _* u3 N9 _- L   1997年     USB1.1规范. z! Y& H% ]% e0 Q! ^5 _5 ]
   2000年     USB2.0规范
+ }' j: r+ P' \   2002年     USB OTG规范
5 ^6 q9 _% O! j5 S三、USB的特点
7 W# D/ ^* n! N0 p3 e3 J9 }: m    1)优点:  
1 i$ H7 P* A. c  O8 {7 n. @    可以热插拔:告别“并口和串口先关机,将电缆接上再开机”的动作。
; w3 q5 }" W# s* R    系统总线供电:可提供5V/500mA电源。: d, e0 J' @& i( k# [' f5 k3 Z  T6 _
    支持设备众多:例如鼠标,键盘,打印机,显示器等。
8 j( w0 H7 S  [' B; L    扩展容易,通过Hub可以连接多个设备只PC机+ G  Y3 D1 F; l, y9 s. b: T
    高速数据传输:USB1.1是12Mb/s,USB2.0高达480Mb/S(ps210Mb/s/并口8Mb/s、R-                    23220Kb/s); {8 c! c1 s  Q& |+ r  ]) G
    方便的设备互连:USBOTG支持点对点通信,例如数码相机和打印机直接互连,无                      需PC断开连接。: K# S5 P; `( ~- j3 ~9 e
   2)缺点:  
0 p% t% ^% D9 V7 y8 Q! s0 d$ z7 i     供电能力差:高功率设备必须外接电源,例如:打印机# U# H  Y; X) L/ G- ~) @/ u
     传输距离短:USB总线的连线长度最大为5m,即便是用HUB来扩展最远也不超过                     30m,距离越远数据传输误差越大!, @, F5 ?( [9 Z( o6 Z  i
      不过对于这次做空中鼠标来说,还是挺好的。这些影响基本没有。
7 K* x9 U: q# A* G6 Z8 ?6 |2 F4 y" D" s" J( n: Y
四、USB的工作原理

) o8 ?) T3 \" @/ k! u+ ~) y& }   1)USB识别过程3 B9 h" d) I- \& N3 j) |7 H
     以前的确很好奇,往电脑插个鼠标,它就能识别出鼠标来,插个键盘就能识别很出是键盘,插个U盘就能识别出U盘,太神奇了,心中充满了好奇,一直想找个机会了解下,这回,终于懂了,USB是如何识别的,呵呵!
3 m1 g- m2 B. ^$ S6 e% j   在USB的原理图设计时,必须给D+和D-端接上连个电阻:( F& S' V# l% {

; |* b- |) u5 [4 P( e
@F71GTA`P00U1U3570`TWUU.png
$ x, U) m1 n, ^/ c/ l  `7 J5 V

" v' U6 D, ?6 L     D+和D-是两个差分信号线。 D+ 减 D-进行区分,可以看到区分度还是挺大的。* g5 e9 I: N7 f2 L
  U1 h2 m* [' g# R  Q# `
LU7V)@[GV9[)M@G~4PKI`IF.png
2 D# T* K3 V4 z9 [6 Q2 f% }
" {3 z* w# p2 i1 n, {
    在设备链接主机时,会检测设备电平,如果检测到在D+上有上拉电阻说明是全速设备,如果检测到在D-上有上拉电阻说明是低速设备。5 G8 x' t5 ~5 F
    识别过程是一个枚举过程。
/ l% ]) x: N8 m. D$ c9 ^    首先设备上电---USB设备会自动复位(将自己的地址初始化为0(包括设备地址和端口地址))---主机检测到复位了(检测到地址为0 的设备)---主机要求USB提供设备址,此时USB设备会将自己的一些描述符发送给主机(电脑),在这些描述符中包括,生产厂商、名字、干什么的、属于什么类别(比如U盘、鼠标……)……,接着主机会查找自己的当前没有占用的地址分配给设备,包括端口地址、设备地址-----想刚分配的地址发送索取信息--包括描述符(比如是U盘的话,索取U盘的大小、什么牌子等等),然后就可进行其他通讯了。想象还是挺神奇的,USB枚举居然做了这么多的事情。5 O, X  Y: _# U. T
    在枚举完成后,主机会给设备安装驱动程序,这也是我们经常可以看到的,刚买的鼠标、键盘或U盘插入电脑后会提示正在安装驱动,当驱动程序安装完成后就可以记性相关的操作了。  }" @7 w( y) U
* [* n1 h, a9 p1 J
    2)描述符类型
  p! B8 g4 O# L$ ~* C
     在USB枚举过程中,主机要求设备提供描述符,描述符主要有一下几个:1 {) p1 ^3 ~( ]& f% U3 o/ K% B
     标准的(通用的)描述符主要有:9 n2 M2 P% F- n; i# g  r
     设备描述符:属于什么设备
6 H+ G+ X& Q0 [3 ^' o     配置描述符:
4 i2 O: X+ g8 x( n2 x* U0 [, E     接口描述符:
5 T& l$ s  F* A     端点描述符:有多少个端口- V( D5 }! X: {
     字符串描述符:告诉USB英文的一个表述:比如U盘的名字,KingSton(金士顿), J# o  c# j1 C1 G# S

; G2 _$ h- H- a, _: f5 n4 z* U; Q4 e7 r9 q1 Q

+ E' ]: B" H3 u
收藏 评论0 发布时间:2022-5-13 19:00

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版