Usb硬件解析及设计
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硬件解析及设计相关推荐
- Linux USB设备驱动程序设计 和 USB下载线驱动设计
Linux USB设备驱动程序设计 和 USB下载线驱动设计 USB设备驱动模型 USB设备包括配置(configuration).接口(interface)和端点(endpoint),一个USB设备 ...
- 《安富莱嵌入式周报》第290期:开源静电便携测试仪,开源音频功放,CAN高波特率设计,超级铁电产品,小米Vela系统,65W USB PD充电器参考设计
往期周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - P ...
- 硬件电路设计原理图设计
叶倾城-硬件原创的个人空间_哔哩哔哩_Bilibili 硬件电路设计原理图设计第二季-1-40课已更新完成啦!!! 第三季硬件电路设计原理图设计敬请期待!感谢大家的支持! 第01课------硬件实战 ...
- 工控 组态王6.60 SP3软件7.5 SP4 授权软件狗 USB 硬件狗 分享 下载
工控 组态王6.60 SP3软件 授权软件狗 USB 硬件狗 分享 下载 技术咨询QQ:3137723307 组态王6.60是一款非常好用的工业类自动化控制软件,此版本继承了前面几个版本的所有功能,可 ...
- SOFA BOLT源码解析之设计要点-线程模型
1 设计要点解析 1.1 线程模型 此部分内容主要介绍蚂蚁为什么选择Netty4作为基础网络编程框架,来源于蚂蚁技术团队发布的一篇文章: 文章名称为:蚂蚁通信框架实践: 链接地址为:https:// ...
- 电赛小车常用硬件解析(蓝牙遥控,循迹)
智能小车硬件解析 (蓝牙遥控.循迹)智能小车硬件解析 智能小车硬件解析 前言 一.单片机 1.什么是单片机 2.STM32F103C8T6 3.小车项目总览 4.器材清单 二.电机 1.直流减速电机 ...
- STM32F405 USB HID软硬件参考设计
简介 本文分享一款自己设计的STM32F405 USB HID小板,按照规定的外形尺寸,制作硬件成品,并调通USB HID通信,上位机能与板子进行USB双向通信. 硬件设计 硬件需求如下: MCU:S ...
- BT401硬件说明和设计注意事项.doc
BT401模组硬件说明和设计注意事项 1.首先请以提供的测试DEMO为准"BT401"测试底板,如果单独使用模块,没测试过dem直接LAYOUT,此时经验不是很丰富,极有可能出现底 ...
- USB软件狗的设计及反破解技术
1 软件狗技术 近年来,软件狗技术在保护软件开发者利益.防止软件盗版方面起了很大作用.软件狗技术属于硬加密技术,它具有加密强度大.可靠性高等特点,已广泛应用于计算机软件保护.软件狗技术的发展经历了多次 ...
最新文章
- php反序列化漏洞原理,PHP反序列化原理及漏洞解析
- c++ cef 获取内容_敢达争锋对决NT敢达C装备增援活动进行中!
- xshell连接Linux Server
- 使用复制存储过程执行解决“事务复制中的表大量更新导致无法及时同步”的问题 (转)...
- 《Linux编程》上机作业 ·001【Linux命令】
- SpringCloudAlibaba-Nacos 介绍、单机模式下搭建及基本使用
- 泛型list集合类转换成DataTable、datatable转list
- Mybatis Sql 大于号小于号不兼容
- matlab绘制柱状图语句,matlab绘制柱状图
- 什么是serialVersionUID?serialVersionUID详解
- 每日一淘洞察市场消费真相,深挖三四五线城市消费者需求
- 【Java游戏合集】手把手教你制作游戏
- LU分解解线性方程组python实现
- android+apk编译器,APK编辑器
- zbox mysql_部署禅道数据库报错
- 昆石VOS3000_2.1.4.0安装脚本
- Redis进阶:布隆过滤器(Bloom Filter)及误判率数学推导
- 工业智能网关BL110应用之60:如何实现智能楼宇控制BACnet 接入阿里云平台
- 红帆以拥有四位MCITP再获微软“数据平台金牌能力”
- listagg()转mysql
热门文章
- Windows恢复回收站误删文件
- 【十一日记】 清北学堂酱油记
- buddypress主题_WordPress的十大BuddyPress插件
- 董宇辉,新东方以及凤凰卫视
- 轻松学Python数据分析3-数据处理
- LVGL 8.2 meter
- 如何用深度学习框架PaddlePaddle实现智能春联
- 全国计算机竞赛保送清华,全国数学奥赛金牌、保送清华,别人家的孩子了解一下...
- _pickle.UnpicklingError: pickle data was truncated
- 03 数学软件与建模---微分方程建模