(转)什么是CDC类(Communication Device Class)
2016-06-29 17:52
387 查看
全文地址:http://justmei.blog.163.com/blog/static/1160998532010321112522467/
什么是CDC类 (Communication Device Class)
USB的CDC类是USB通信设备类 (Communication Device Class)的简称。CDC类是USB组织定义的一类专门给各种通信设备(电信通信设备和中速网络通信设备)使用的USB子类。根据CDC类所针对通信设 备的不同,CDC类又被分成以下不同的模型:USB传统纯电话业务(POTS)模型,USB ISDN模型和USB网络模型。其中,USB传统纯电话业务模型,有可分为直接线控制模型(Direct Line Control Model)、抽象控制模型(Abstract Control Model)和USB电话模型(USB Telephone Model),如图1所示。本文所讨论的虚拟串口就属于USB传统纯电话业务模型下的抽象控制模型。
通常一个CDC类又由两个接口子类组成通信接口类(Communication Interface Class)和数据接口类(Data
Interface
Class)。笔者主要通过通信接口类对设备进行管理和控制,而通过数据接口类传送数据。这两个接口子类占有不同数量和类型的终端点
(Endpoints),如图2所示。对于前面所述的不同CDC类模型,其所对应的接口的终端点需求也是不同的。如所需要讨论的抽象控制模型对终端点的需
求,通信接口类需要一个控制终端点(Control
Endpoint)和一个可选的中断(Interrupt)型终端点,数据接口子类需要一个方向为输入(IN)的周期性(Isochronous)型终端
点和一个方向为输出(OUT)的周期性型终端点。其中控制终端点主要用于USB设备的枚举和虚拟串口的波特率和数据类型(数据位数、停止位和起始位)设置
的通信。输出方向的非同步终端点用于主机(Host)向从设备(Slave)发送数据,相当于传统物理串口中的TXD线(如果从单片机的角度看),输入方
向的非同步终端点用于从设备向主机发送数据,相当于传统物理串口中的RXD线。
相关文章推荐
- 仿开心消消乐 大树星星无限循环 点击(自定义view实现)
- 深入理解Binder
- 利用saltstack批量安装php
- Android——文件操作
- 移动端web页面知识小结之像素密度、分辨率、屏幕尺寸
- (转)USB协议简介
- Laravel5.1 启动详解
- VAGRANT命令(一)
- 基于CentOS 6.8的OpenStack手动安装-集中认证
- 按行/列分割文件
- 3 分钟轻松搭建 Ruby 项目自动化持续集成
- 2016.06.29进程和线程的区别(待完善)
- oracle手工推进scn的方法
- [Java] JSP笔记 - EL、JSTL 常用标签
- (转)USB 基本知识
- 一丶基础知识
- [置顶] UITableView
- 如何调试Shell脚本
- 【BZOJ4197】寿司晚宴,状态压缩DP
- ubuntu14.04自建局域网源在线安装CDH5.6.0