豆搜网 文档下载 文档下载导航
设为首页 | 加入收藏
搜索 请输入内容:  
 导航当前位置: 文档下载 > 所有分类 > IT/计算机 > 计算机硬件及网络 > USB CDC实现 虚拟串口
侵权投诉

USB CDC实现 虚拟串口

USB CDC实现 虚拟串口 现在很多电脑已经不带232了,特别是手提电脑。这使很多使用手提在外调试人员非常不方便。或许你可以买一条市面上usb转232转换线,但这些线抗干扰不是太好,在一些干扰大的地方会发生连接中断的问题,所以往往要加光耦隔离器。在一些高端的单片机一般带USB接口,如果可以使用这些接口做一个USB的虚拟com口将会非常实用,但是使用USB一般要编写上位机驱程。没有windows驱程编写基础的朋友一般很为难。其实微软的CDC类中含有这一类USB转com的类,Windows也自带这方面的驱程。就像市面上的usb鼠标,u盘一样,windows里面已经有了他们的驱动函数库,只要我们按照windows的CDC描述来配置USB就可以了。 关于CDC的类描述类容请参考Universal Serial Bus Class Definitions for Communication Devices 的PDF文件。它是下面所有内容的纲领。 下面讲解下制作步骤: 1:把对应的描述符发送出去:下面是发送内容 const USB_DEVICE_DESCRIPTOR DeviceDescr = { // device descriptor 0x12, DESC_DEVICE, LE_WORD(0x0101), // bcdUSB 0x02, // bDeviceClass 0x00, // bDeviceSubClass 0x00, // bDeviceProtocol MAX_PACKET_SIZE0, // bMaxPacketSize //设备ID LE_WORD(0xFFFF), // idVendor LE_WORD(0x0005), // idProduct LE_WORD(0x0100), // bcdDevice /* 不要使用原来的ID 0x71,0x04, // PHILIPS公司的设备ID Vendor ID = PHILIPS Semiconductor,Inc. 0x78,0x23, // 设备制造商定的产品ID Product ID 0x00,0x01, // 设备系列号 Device release number in binary-coded decimal */ 0x01, // iManufacturer 0x02, // iProduct 0x03, // iSerialNumber 0x01, // bNumConfigurations }; const USB_DESCRIPTOR usb_descr = { // configuration descriptor { 0x09, DESC_CONFIGURATION, LE_WORD(67), // wTotalLength 0x02, // bNumInterfaces 0x01, // bConfigurationValue 0x00, // iConfiguration 0xC0, // bmAttributes 0x32 // bMaxPower }, // control class interface { 0x09, DESC_INTERFACE, // 4 0x00, // bInterfaceNumber 0x00, // bAlternateSetting 0x01, // bNumEndPoints 0x02, // bInterfaceClass 0x02, // bInterfaceSubClass // 0x01, // bInterfaceProtocol, linux requires value of 1 for the cdc_acm module 0x00, // bInterfaceProtocol, linux requires value of 1 for the cdc_acm module 0x00 // iInterface }, // header functional descriptor 0x05, CS_INTERFACE, 0x00, LE_WORD(0x0110), // call management functional descriptor 0x05, CS_INTERFACE, 0x01, 0x01, // bmCapabilities = device handles call management 0x01, // bDataInterface // ACM functional descriptor 0x04, CS_INTERFACE, 0x02, 0x02, // bmCapabilities // union functional descriptor 0x05, CS_INTERFACE, 0x06, 0x00, // bMasterInterface 0x01, // bSlaveInterface0 // notification EP 0x07, DESC_ENDPOINT, INT_IN_EP, // bEndpointAddress 0x03, // bmAttributes = intr LE_WORD(8), // wMaxPacketSize 0x0A, //

第1页

你可能喜欢

  • USB虚拟串口
  • 虚拟式
  • 虚拟语气
  • 虚拟社区
  • 虚拟空间
  • 虚拟城市
  • 虚拟经营

热门文档

相关文档

  • STM32的USB虚拟串口设计

    了通信设备类及实现虚 拟设备的原理,设计并实现了基于通信设备类的虚拟串口驱动...8 第 3 章 USBUSB CDC 协议 ......

  • 【论文】虚拟串口实现

    虚拟串口实现_专业资料。基于USBCDC类的ACM功能,讨论了如何在不需要改变应用程序的前提下完成USB到串口的转换,实现虚拟串口的功能。维普...

  • 嵌入式系统的USB虚拟串口设计

    USB 标准子类中,有一类称之为 CDC 类,可以实现虚拟串口通信的协议,而且由于 大部分的操作系统(Windows 和 Linux)都带有支持 CDC 类的设备驱动程序,可以自动...

  • 嵌入式系统的USB虚拟串口设计

    在设计中,软件部 分采用 USBCDC 类标准来实现虚拟串口, 这样可以 使用操作系统(Windows,Linux)自带的驱动程序;在 硬件设计中,使用自带 USB 从设备接口的 ...

  • USB虚拟串口设计

    论文研究设计了基于 STM32 单片机的 USB 虚拟串口驱动程序的结构和实现方 案,...8 3.2 USB CDC 协议 ......

  • 基于CY7C68013芯片USB虚拟串口实现

    函数, 实现读写串口数据, 完成串口设备的数据与 USB 数据之间的转换。 3. 1 虚拟串口系统初始化模块 通常 CDC 类由通信类接口和数据类接口组成, 在 2 USB ...

  • 【论文】通过虚拟串口形式实现Modbus协议的通信

    通过虚拟串口形式实现Modbus协议的通信_专业资料。分析了USB通讯设备(CDC)协议的机制与流程,实现USB虚拟串口,并提出通过虚拟串口实现Modbus协议通信方法。本设计使用操作...

  • YJ4600USB虚拟串口方法

    YJ4600USB虚拟串口方法_计算机硬件及网络_IT/计算机_专业资料。扫描枪使用设置说明...4. 安装完成后,系统会再次提示安装 usbcdcacm_xxxxx 驱动,只需安照之前 4600...

  • 嵌入式系统的USB虚拟串口设计

    USB 标准子类中,有一类称之为 CDC 类,可以实现虚拟串口通信的协议,而且由于大部分的操作系 统(Windows 和 Linux)都带有支持 CDC 类的设备驱动程序,可以自动...

  • 嵌入式系统的USB虚拟串口设计_吴明琪

    嵌入式系统的USB虚拟串口设计_吴明琪_互联网_IT/计算机_专业资料。嵌入式系统的...在设 计中, 软 件部摘 要 分采用 U SBCDC 类标准来实现虚拟串口, ...

  • USB通信设备串口仿真设计及调试实例

    MCU以及Microchip应用程序库中的 CDC类固件实现USB串口的数据转换通信 通过虚拟COM端口将基于RS232的UART应用程 序移植到带有USB外设的单片机 开发USB CDC主机应用...

站点地图 | 文档上传 | 侵权投诉 | 手机版
新浪认证  诚信网站  绿色网站  可信网站   非经营性网站备案
本站所有资源均来自互联网,本站只负责收集和整理,均不承担任何法律责任,如有侵权等其它行为请联系我们.
文档下载 Copyright 2013 doc.docsou.com All Rights Reserved.  闽ICP备15022310号-9  闽公网安备 35021102001881号  email
返回顶部