- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
精品文档
现代嵌入式系统中,异步串行通信接口往往作为标准外设岀现在单片机和嵌入式系统中。但是随着个人计算机通用外
围设备越来越少地使用串口,串口正在逐渐从个人计算机特别是便携式电脑上消失。于是嵌入式开发人员常常发现自
己新买来的计算机上没有串口,或者岀现调试现场用户的计算机没有串口的尴尬局面。相反,现在的个人计算机普遍
拥有4个以上的USB接口,能不能使用USE接口代替串口,完成PC机和
嵌入式系统的通信呢?
1.USB虚拟串口代替物理串口的可行性
首先,越来越多带USB接口的器件涌现出来,如带USB接口的单片机,或独立的USB接口器件,而且这些
器件的成本已经很接近于使用RS232电平转换芯片所带来的成本。
其次,市场上也出现了一些USB接口转串口的芯片,这些芯片一头为串口,另一头为USB接口,在其
内部完成串口到USB协议的转换。该芯片通过USB口连接到个人计算机后,在操作系统中表现为一个串口设备,这
意味着USB接口对于传统的串口调试工具(HyperTerninal)和用户基于串口的应用程序是透明的,
开发人员完全不用更改PC端的调试和应用程序。
但是这些器件的USB类不属于标准的USB设备类,因此需要在Windows和Linux操作系统上安装额外的设备
驱动。另外,由于不是操作系统自带的设备驱动,而且通信经过了由串口到串口,USB从设备到USB
主机的多次转换,当调试遇到问题时常常无法确定是串口岀了问题还是USB岀了问题。因此,应该使嵌入
式系统直接和PC通过USB总线接口连接(通过片上的USB接口或片外USB接口芯片),由单片机直接完成
USB虚拟串口的协议转换。
在USB标准子类中,有一类称之为CDC类,可以实现虚拟串口通信的协议,而且由于大部分的操作系统
(Windows和Linux)都带有支持CDC类的设备驱动程序,可以自动识别CDC类的设备,这样不仅免去了
写专用设备驱动的负担,同时简化了设备驱动的安装。
2.什么是CDC类
USB的CDC类是USB通信设备类(CommunicationDeviceClass)的简称。CDC类是USB组织定义的一类专
门给各种通信设备(电信通信设备和中速网络通信设备)使用的USB子类。根据CDC类所针对通信设
备的不同,CDC类又被分成以下不同的模型:USB传统纯电话业务(POTS模型,USBISDN模型和USB网
络模型。其中,USB传统纯电话业务模型,有可分为直接线控制模型(DirectLineControlModel)、抽象控制模型
(AbstractControlModel)和USB电话模型(USBTelephoneModel),如图1所示。本文所讨论的虚拟串口就属于
USB传统纯电话业务模型下的抽象控制模型。
通常一个CDC类又由两个接口子类组成通信接口类(CommunicationInterfaceClass)和数据接口类
(DataInterfaceClass)。笔者主要通过通信接口类对设备进行管理和控制,而通过数据接口类传送数据。这两个接口
子类占有不同数量和类型的终端点(Endpoints),如图2所示。
1
欢迎下载
精品文档
厂用制终瑞空厂二屮斷型终端点
C]二^_j口类
」kIZ周期性厂
QouT^^n
文档评论(0)