第一章 USB Type C的基本原理(连载一)
来源:互联网 发布:java web和前端开发 编辑:程序博客网 时间:2024/06/07 23:21
FROM:http://blog.csdn.net/zoosenpin/article/details/49963031
第一章 USB Type C的基本原理
图 1: USB Type C接头外形
USB Type C(简称USB-C)的基本特性:
1. 接口插座的尺寸与原来的Micro USB规格一样小,约为8.3mm X 2.5mm
2. 可承受1万次反复插拔
3. 支持正反均可插入的“正反插”功能
4. 最大传输速度10Gb/s,即是USB 3.1 Gen2标准
5. 配备USB-C连接器的标准规格连接线可通过3A电流,同时还支持超出现有USB供电能力的
USB Power Delivery,可以最大提供100W电力(20V/5V)
引脚解释,如图2所示:
母口:
公头:
图2 引脚映射图
USB-C设备识别方法如图3所示。
图3:USB-C设备识别方法
电阻和充电电流映射如表1所示。
表1:USB-C Rp和Rd具体值(以上拉电压5V为例)
正反可插如图4所示。
图4:正反可插图示
DRP设备是如何工作的?
图5 DRP设备电路原理图
DRP状态机伪代码示例如下所示(该示例伪代码状态机来源于P124 Figure 4-15 of USB Type-C
Specification Release 1.1),为便于理解下一章节讲述的USB PD,所以也加入了USB PD的简
单状态。
drp_toggle_timeout = 50ms;
tc_sm(void *arg)
{
switch(state) {
case UFP_STATE_DETACHED:
if (DFP连接) {
state = UFP_STATE_ATTACHED_DEBOUNCE;
debounce_timeout = 100ms;
} else if (drp_toggle_timeout) {
set_drp_mode(CC电阻上拉);
state = DFP_STATE_DETACHED;
}
break;
case UFP_STATE_ATTACHED_DEBOUNCE:
if (DFP仍然连接) {
state = UFP_STATE_ATTACHED;
} else {
state = UFP_STATE_DETACHED;
}
break;
case UFP_STATE_ATTACHED:
// TODO
state = UFP_STATE_DISCOVERY;
break;
case UFP_STATE_DISCOVERY:
// TODO: PD negotiate
break;
...
case DFP_STATE_DETACHED:
if (UFP连接) {
state = DFP_STATE_ATTACHED_DEBOUNCE;
debounce_timeout = 100ms;
} else if (drp_toggle_timeout) {
set_drp_mode(CC电阻下拉);
state = UFP_STATE_DETACHED;
}
break;
case DFP_STATE_ATTACHED_DEBOUNCE:
if (UFP仍然连接) {
state = DFP_STATE_ATTACHED;
} else {
state = DFP_STATE_DETACHED;
}
break;
case DFP_STATE_ATTACHED:
// TODO
state = DFP_STATE_DISCOVERY;
break;
case DFP_STATE_DISCOVERY:
// TODO: PD negotiate
break;
}
}
防伪以及线缆验证。
图 6:eMarker(EMCA)原理简介
问题1:USB-C的接口是否一定要IC 支持?
- 第一章 USB Type C的基本原理(连载一)
- 第一章 USB Type C的基本原理(连载一)
- USB Type-C,接口上的大统一
- USB TYPE C
- USB Type-C
- USB Type-C 是什么
- USB Type-C 设计
- USB Type-C
- USB Type-C 协议
- [图]细谈USB Type-C
- USB Type-C到底是什么
- USB Type-C 接口优点
- USB Type-C到底是什么
- USB Type-C学习点滴
- USB type C管脚(我的笔记)
- usb3.0和usb type-c的关系
- 关于 USB 3.1 、USB Type-C 你需要知道的几点
- 初学C语言连载一
- 单链表的归并排序
- PAT_1032. Sharing(自己的代码最后一个case没过)
- Elasticearch索引mapping写入、查看、修改(head、kopf插件)
- POJ 1698 Alice's Chance 二分图多重匹配 网络最大流
- 1030. 完美数列(25)
- 第一章 USB Type C的基本原理(连载一)
- PL/SQL DeveloperZ中文乱码问题解决
- 冒泡排序-选择排序-快速排序(PHP实现)
- 熵模型—— 熵,条件熵,联合熵,相对熵,互信息及其关系,最大熵模型。。
- Maven的pom.xml文件中build配置介绍
- 触发器
- TreeSet集合
- js获取 本周,本月,本季度,本年,上月,上周,上季度,去年
- 《开发自己的搜索引擎》读书笔记——一个简单的过滤的例子