首页
学习
活动
专区
圈层
工具
发布

USB CDC串口通信详解:把USB变成“智能串口线”

──────┘ 最大115.2Kbps └─────────┘ 问题:速度慢、需要专用接口、电压高 USB CDC时代: ┌─────────┐ USB CDC虚拟 ┌─────────...─────────────┐ ┌─────────────┐ │ 主机 │ │ 设备 │ │ (Windows/Linux...(CDC_IN_EP, data, length); } 十、CDC与其他通信方式对比 特性 CDC-ACM虚拟串口 传统UART串口 USB HID USB大容量存储 速度 12Mbps(全速) 115.2Kbps...协议的未来发展 新特性与趋势 高速CDC:USB 3.0+支持,速度达5Gbps 多功能复合设备:CDC+大容量存储+HID集成 无线CDC:通过蓝牙或Wi-Fi模拟CDC WebUSB CDC:浏览器直接访问...性能大幅提升:速度从Kbps提升到Mbps级别 即插即用:无需额外电源,自动安装驱动 标准化:所有操作系统都支持 灵活性:可软件配置波特率等参数 CDC本质上是一个翻译官: 对电脑说:“我是标准串口设备

54310

linux usb端点

一系列相互独立的端点在一起构成了USB逻辑设备,在系统结构中,位于下方红色方框内: 二、端点的分类 每个USB设备都有一个唯一的设备地址,设备地址是设备连接上主机时由主机分配的,主机主要依靠这个设备地址对...USB设备进行访问。...五、端点与管道 1、管道的概念 管道是主机软件(数据缓存区),和USB设备各各端点之间的数据传输连接,他是两者之间通信流的抽象(实际上数据传输是USB总线接口完成)。...1)、“流”指不具有USB定义格式的数据流,流通道中的数据是流的形式,也就是该数据内容不具有USB要求的结构。...2)、“消息”指具有某种USB定义格式的数据流。消息通道与端点的关系同流通道与端点的关系是不同的。

12.5K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    别让 USB 传输速度影响 Android 开发效率

    如果用的是模拟器,数据会通过 TCP/IP 进行传输,但是如果用的是真机则会用到 USB,USB 传输速度越快,等待时间越短,程序迭代速度也就越快。...好消息是 USB 传输速度现在越来越快了: 1996 年时,USB 仅能够提供 12 Mb/s 的传输速度,到了 2019 年 8 月发布 USB 4.0 版本的时候,已经可以达到几个 Gb/s 的速度了...传输速度达到一定程度以后,USB 传输速度和程序迭代速度就会关联起来,手机存储的写入速度可能无法达到 USB 3.2 的 20Gb/s,不过还是比 USB 2.0 要快,所以如果您安装调试一个 50M...但坏消息是,USB 3.0 的设备常常以 USB 2.0 的速度在传输数据。...Mac 系统: system_profiler SPUSBDataType Linux 系统: lsusb -vvv Windows 系统: USBView.exe ?

    1.8K20

    Linux USB 设备基础理论

    通过扫描以下目录获取物理节点所有 USB 设备: /sys/bus/usb/devices/usb* /sys/bus/usb/devices/usb*/$busnum-* 从该文件系统收集某一个设备的主要信息如下...: 产品 serial: USB 硬件设备序列号 ,例如 0000:00:01.2 定位方法# 定位某一个 USB 设备的方法有两种: busnum + devnum idVendor + idProduct...集线器 0Ah 接口描述符 CDC-Data 0Bh 接口描述符 Smart Card 0Dh 接口描述符 Content Security 0Eh 接口描述符 UVC视频/CAMERA 0Fh 接口描述符...设备类bDeviceClass、bDeviceSubClass、bDeviceProtocol By USB 中文网 USB设备描述符中的idVendor、idProduct和bcdDevice By...USB 中文网 USB 硬件设备的序列号 By IBM 注:本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。

    1.9K30

    Linux启动速度优化

    node的启动速度很慢,而每个node只作为master或者slave提供服务,因此可以将node上多余的自启动服务关闭。    ...系统的版本是“Red Hat Enterprise Linux Server release 5.4 (Tikanga)”,优化前启动的速度大约216s,优化后只有31s。    ...用下面的命令可以查询Linux中有哪些服务正在运行。 [root@node1]# /sbin/service --status-all      下面是我优化的那些服务。...服务名称 功能 acpid 电源管理 autofs 自动安装服务 bluetooth 蓝牙技术核心 cups 公共打印服务 gpm 鼠标 hidd 蓝牙H.I.D.服务器 hplip 惠普Linux打印与成像...对子SmartCards的支持 sendmail Linux下的邮件服务器 smartd SMARTDiskMonitoring服务用于监测并预测磁盘失败或磁盘问题 yum-updatesd 在线自动升级

    2K10

    Linux 上如何禁用 USB 存储设备

    为了消除这种可能性,机构会限制和监测访问互联网,同时禁用 USB 存储设备。 在本教程中,我们将讨论三种不同的方法来禁用 Linux 机器上的 USB 存储设备。...方法 2:删除 USB 驱动 这种方法要求我们将 USB 存储的驱动程序(usb_storage.ko)删掉或者移走,从而达到无法再访问 USB 存储设备的目的。...方法 3:将 USB 存储器纳入黑名单 我们也可以通过 /etc/modprobe.d/blacklist.conf 文件将 usb-storage 纳入黑名单。...usb-storage 保存文件并退出。...usb-storage 就在就会被系统阻止加载,但这种方法有一个很大的缺点,即任何特权用户都可以通过执行以下命令来加载 usb-storage 模块, $ sudo modprobe usb-storage

    12.3K10

    19.Linux-USB总线驱动分析

    是因为windows自带了USB总线驱动程序, USB总线驱动程序负责: 识别USB设备,给USB设备找到对应的驱动程序 新接入的USB设备的默认地址(编号)是0,在未分配新编号前,PC主机使用0地址和它通信...然后USB总线驱动程序都会给它分配一个地址(编号) PC机想访问USB总线上某个USB设备时,发出的命令都含有对应的地址(编号) USB是一种主从结构。...主机叫做Host,从机叫做Device,所有的USB传输,都是从USB主机这方发起;USB设备没有"主动"通知USB主机的能力。..., 比如:鼠标的数据是从鼠标传到PC机, 对应的端点称为"中断输入端点" 其中端点0是设备的默认控制端点, 既能输出也能输入,用于USB设备的识别过程 同样linux内核也自带了USB总线驱动程序,框架如下...其中usb_bus_type是一个全局变量, 它和我们之前学的platform平台总线相似,属于USB总线, 是Linux中bus的一种.

    10.4K91

    USB总线-Linux内核USB3.0设备控制器驱动框架分析(四)

    usb_device_speed max_speed; // 设备支持的最大速度 unsigned needs_serial:1; // 用于分配整个设备共享的资源,使用usb_add_config...Linux 3.11版本引入了USB Gadget Configfs。在用户层可以通过暴漏出来的API定义USB Gadget设备的任意功能和配置,极大的方便了USB复合设备的配置和使用。...除端点0外,USB设备驱动还会使用其他的端点,这些端点数据结构挂到ep_list链表中。speed表示USB设备控制器当前的速度。max_speed表示USB设备控制器最大的速度。...ep_list; // 该usb设备驱动所需的所有端点链表 enum usb_device_speed speed; // 当前连接usb主机的速度 enum usb_device_speed...{ char *function; // 描述usb_gadget_driver的字符串 enum usb_device_speed max_speed; // 该驱动可处理的最大速度

    12.6K20

    USB总线和协议

    最初的USB 1.0速度只有1.5Mbps,到USB 1.1的12Mbps,再到USB 2.0的480Mbps,USB 3.0更是达到了5Gbps。...现在最新的USB 4.0甚至能达到40Gbps的惊人速度。在我们嵌入式开发中,USB 2.0依然是应用最广泛的版本,因为它在速度、成本和功耗之间取得了很好的平衡。...比如一个USB复合设备可能同时包含HID接口和CDC接口。接口描述符指定了接口类代码、子类代码和协议代码,这些信息帮助主机识别接口类型。...7.2 CDC类CDC主要用于串口通信。USB转串口模块就是典型的CDC设备。CDC类使用两个接口:一个通信接口用于控制,一个数据接口用于数据传输。...应用开发零基础入门学习路线Linux底层开发零基础入门学习路线LVGL零基础入门学习路线QT零基础入门学习路线STM32零基础入门学习路线

    17310

    mini usb接口图片_linux查看接口速率

    实际效果和官方驱动的大部分版本一模一样,该咋样就咋样,连接速度该跳还是跳,跳的数字都一样。...试过很多官方驱动,都不太好,每个驱动都测试了5G, 3.3、不同驱动的对比测试 测试位置:距离路由器隔一堵墙的房间那头, USB3.0无线网卡稳定在130Mbps的下载速度 测网速:www.speedtest.cn...查看连接速度cmd命令: netsh wlan sh i 驱动版本 连接速度 说明 21.10.1 300M以下 店家推荐的,最早的驱动,网速还可以,但是200M带宽好像也偶尔跑不满,连接速度相对稳定...X 230M 这个110驱动是网卡刚上机win10自动装的,不太行,速度低,还一直跳,有时跳到60M,不稳定 21.120.0.2 340M左右 intel官网最新的驱动,下载后安装,连接速度看着还行,...只有65/135的连接速度,测速只有40M速度,可能5G强了,2.4就拉胯了吧,其它驱动2.4G测试位置能跑到100速度,不知道怎么回事,只用5G就不管2.4了。

    11.3K10

    Quectel EM05-CE 模块测试

    Quectel EM05-CE 模块测试 1.4G模块简介 ​ 提起4G网络连接,大家可能会觉得是个很难的东西,其实对于嵌入式Linux而言,4G网络连接恰恰相反,不难!...而这些4G模块厂商都提供了详细的文档讲解如何在 Linux 下使用4G模块,以及如何修改Linux内核加入4G模块驱动。...第一是速度方面的优势。...M.2接口有两种常见类型:Socket 2(B key)和Socket 3(M key),其中Socket2支持SATA、PCI-E X2接口,而如果采用PCI-E ×2接口标准,最大的读取速度可以达到...在操作系统看来,CDC ECM设备就是一个虚拟以太网卡,包含标准网卡需要的MAC地址和IP地址。   CDC ECM设备通常是一个以太网卡,用于连接LAN或者是WLAN。

    11310
    领券