USB有 “主设备” 和 “从设备” 之分。 “主设备” 通常写为 “USB HOST”或“USB OTG” ,而“从设备”一般写为“USB DEVICE” 。STM32F103系列的芯片只能做“USB DEVICE” ,STM32F105和STM32F107系列才可以做“USB OTG” 。

USB信号是差分信号,信号线为D+、 D-。  在USB HOST端,  D+、 D-各接一个15kohm的下拉电阻。

而在USB DEVICE端,这时就有高速低速设备的区别了。USB1.0、1.1、2.0协议中 都有定义高低速设备以满足不同情况的需求,这些在硬件上的区别就是:

高速设备:D+ 接一个1.5K的上拉电阻,D-不接;  低速设备则相反:

这就是为什么板上的USB接口的D+上接一个1.5K的上拉电阻到3.3V的原因。

这样当USB DEVICE插入到USB HOST中时,如果是高速设备,则D+被拉高,D-不 变;低速设备则与之相反。这个上拉过程需要大概2.5us的时间,USB HOST在这个时间  内便检测到了该信号,即可判断有USB DEVICE plug in,和该device的类型,然后开始通讯、枚举等。 所以,USB协议虽然非常复杂,一般人不太好掌握,但USB硬件却是非常简单的:如果是USB HOST,例如PC机,那么在USB接口的D+、D-差分线上都接一个15K电阻到地就可以了;如果是USB DEVICE,例如我们的STM32开发板,那么在USB接口的D+接一个1.5K的上拉电阻到3.3V就可以。

综上所述:当你的USB是作为从设备(类似U盘,USB键盘)时,需要在D+(或者D-)接上拉1.5K电阻;反之,你的USB是作为主机,用来外接USB键盘、U盘时,电路只需要在D+/-上接下拉电阻;

另外,在高速USB传输时,需要考虑信号的完整性问题,即阻抗匹配。阻抗匹配是指在能量传输时,要求负载阻抗要和传输线的特征阻抗相等,此时的传输不会产生反射,这表明所有能量都被负载吸收了。反之则在传输中有能量损失。下图中的 R55、R56的22欧姆电阻是阻抗匹配电阻。

Usb硬件解析及设计相关推荐

  1. Linux USB设备驱动程序设计 和 USB下载线驱动设计

    Linux USB设备驱动程序设计 和 USB下载线驱动设计 USB设备驱动模型 USB设备包括配置(configuration).接口(interface)和端点(endpoint),一个USB设备 ...

  2. 《安富莱嵌入式周报》第290期:开源静电便携测试仪,开源音频功放,CAN高波特率设计,超级铁电产品,小米Vela系统,65W USB PD充电器参考设计

    往期周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - P ...

  3. 硬件电路设计原理图设计

    叶倾城-硬件原创的个人空间_哔哩哔哩_Bilibili 硬件电路设计原理图设计第二季-1-40课已更新完成啦!!! 第三季硬件电路设计原理图设计敬请期待!感谢大家的支持! 第01课------硬件实战 ...

  4. 工控 组态王6.60 SP3软件7.5 SP4 授权软件狗 USB 硬件狗 分享 下载

    工控 组态王6.60 SP3软件 授权软件狗 USB 硬件狗 分享 下载 技术咨询QQ:3137723307 组态王6.60是一款非常好用的工业类自动化控制软件,此版本继承了前面几个版本的所有功能,可 ...

  5. SOFA BOLT源码解析之设计要点-线程模型

    1 设计要点解析 1.1  线程模型 此部分内容主要介绍蚂蚁为什么选择Netty4作为基础网络编程框架,来源于蚂蚁技术团队发布的一篇文章: 文章名称为:蚂蚁通信框架实践: 链接地址为:https:// ...

  6. 电赛小车常用硬件解析(蓝牙遥控,循迹)

    智能小车硬件解析 (蓝牙遥控.循迹)智能小车硬件解析 智能小车硬件解析 前言 一.单片机 1.什么是单片机 2.STM32F103C8T6 3.小车项目总览 4.器材清单 二.电机 1.直流减速电机 ...

  7. STM32F405 USB HID软硬件参考设计

    简介 本文分享一款自己设计的STM32F405 USB HID小板,按照规定的外形尺寸,制作硬件成品,并调通USB HID通信,上位机能与板子进行USB双向通信. 硬件设计 硬件需求如下: MCU:S ...

  8. BT401硬件说明和设计注意事项.doc

    BT401模组硬件说明和设计注意事项 1.首先请以提供的测试DEMO为准"BT401"测试底板,如果单独使用模块,没测试过dem直接LAYOUT,此时经验不是很丰富,极有可能出现底 ...

  9. USB软件狗的设计及反破解技术

    1 软件狗技术 近年来,软件狗技术在保护软件开发者利益.防止软件盗版方面起了很大作用.软件狗技术属于硬加密技术,它具有加密强度大.可靠性高等特点,已广泛应用于计算机软件保护.软件狗技术的发展经历了多次 ...

最新文章

  1. php反序列化漏洞原理,PHP反序列化原理及漏洞解析
  2. c++ cef 获取内容_敢达争锋对决NT敢达C装备增援活动进行中!
  3. xshell连接Linux Server
  4. 使用复制存储过程执行解决“事务复制中的表大量更新导致无法及时同步”的问题 (转)...
  5. 《Linux编程》上机作业 ·001【Linux命令】
  6. SpringCloudAlibaba-Nacos 介绍、单机模式下搭建及基本使用
  7. 泛型list集合类转换成DataTable、datatable转list
  8. Mybatis Sql 大于号小于号不兼容
  9. matlab绘制柱状图语句,matlab绘制柱状图
  10. 什么是serialVersionUID?serialVersionUID详解
  11. 每日一淘洞察市场消费真相,深挖三四五线城市消费者需求
  12. 【Java游戏合集】手把手教你制作游戏
  13. LU分解解线性方程组python实现
  14. android+apk编译器,APK编辑器
  15. zbox mysql_部署禅道数据库报错
  16. 昆石VOS3000_2.1.4.0安装脚本
  17. Redis进阶:布隆过滤器(Bloom Filter)及误判率数学推导
  18. 工业智能网关BL110应用之60:如何实现智能楼宇控制BACnet 接入阿里云平台
  19. 红帆以拥有四位MCITP再获微软“数据平台金牌能力”
  20. listagg()转mysql

热门文章

  1. Windows恢复回收站误删文件
  2. 【十一日记】 清北学堂酱油记
  3. buddypress主题_WordPress的十大BuddyPress插件
  4. 董宇辉,新东方以及凤凰卫视
  5. 轻松学Python数据分析3-数据处理
  6. LVGL 8.2 meter
  7. 如何用深度学习框架PaddlePaddle实现智能春联
  8. 全国计算机竞赛保送清华,全国数学奥赛金牌、保送清华,别人家的孩子了解一下...
  9. _pickle.UnpicklingError: pickle data was truncated
  10. 03 数学软件与建模---微分方程建模