diff options
Diffstat (limited to 'quick_start/usb_speed.html')
| -rw-r--r-- | quick_start/usb_speed.html | 223 |
1 files changed, 223 insertions, 0 deletions
diff --git a/quick_start/usb_speed.html b/quick_start/usb_speed.html new file mode 100644 index 00000000..cff5bc3e --- /dev/null +++ b/quick_start/usb_speed.html @@ -0,0 +1,223 @@ + + +<!DOCTYPE html> +<html class="writer-html5" lang="en" data-content_root="../"> +<head> + <meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /> + + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>USB 极限速度测试 — CherryUSB 1.6.1 documentation</title> + <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=80d5e7a1" /> + <link rel="stylesheet" type="text/css" href="../_static/css/theme.css?v=9edc463e" /> + + + <script src="../_static/jquery.js?v=5d32c60e"></script> + <script src="../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script> + <script src="../_static/documentation_options.js?v=d6a008b6"></script> + <script src="../_static/doctools.js?v=9a2dae69"></script> + <script src="../_static/sphinx_highlight.js?v=dc90522c"></script> + <script src="../_static/js/theme.js"></script> + <link rel="index" title="Index" href="../genindex.html" /> + <link rel="search" title="Search" href="../search.html" /> + <link rel="next" title="USB 基本概念(2.0 为主)" href="../usb/usb2.0_basic.html" /> + <link rel="prev" title="基于 CherryUSB 的开源项目" href="opensource.html" /> +</head> + +<body class="wy-body-for-nav"> + <div class="wy-grid-for-nav"> + <nav data-toggle="wy-nav-shift" class="wy-nav-side"> + <div class="wy-side-scroll"> + <div class="wy-side-nav-search" > + + + + <a href="../index.html" class="icon icon-home"> + CherryUSB + </a> +<div role="search"> + <form id="rtd-search-form" class="wy-form" action="../search.html" method="get"> + <input type="text" name="q" placeholder="Search docs" aria-label="Search docs" /> + <input type="hidden" name="check_keywords" value="yes" /> + <input type="hidden" name="area" value="default" /> + </form> +</div> + </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu"> + <p class="caption" role="heading"><span class="caption-text">快速上手</span></p> +<ul class="current"> +<li class="toctree-l1"><a class="reference internal" href="start.html">入门必看</a></li> +<li class="toctree-l1"><a class="reference internal" href="demo.html">基于现有 demo 快速验证</a></li> +<li class="toctree-l1"><a class="reference internal" href="transplant.html">芯片通用移植指南</a></li> +<li class="toctree-l1"><a class="reference internal" href="rtthread.html">基于 RT-Thread 软件包开发指南</a></li> +<li class="toctree-l1"><a class="reference internal" href="q%26a.html">Q & A</a></li> +<li class="toctree-l1"><a class="reference internal" href="migration.html">部分改动迁移指南</a></li> +<li class="toctree-l1"><a class="reference internal" href="opensource.html">基于 CherryUSB 的开源项目</a></li> +<li class="toctree-l1 current"><a class="current reference internal" href="#">USB 极限速度测试</a></li> +</ul> +<p class="caption" role="heading"><span class="caption-text">USB 基本知识点</span></p> +<ul> +<li class="toctree-l1"><a class="reference internal" href="../usb/usb2.0_basic.html">USB 基本概念(2.0 为主)</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usb/usb3.0_basic.html">USB 基本概念(3.0 为主)</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usb/usb_desc.html">USB 描述符</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usb/usb_request.html">USB 设备请求</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usb/usb_enum.html">USB 枚举</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usb/usb_ext.html">USB 知识点拓展</a></li> +</ul> +<p class="caption" role="heading"><span class="caption-text">API 手册</span></p> +<ul> +<li class="toctree-l1"><a class="reference internal" href="../api/api_device.html">设备协议栈</a></li> +<li class="toctree-l1"><a class="reference internal" href="../api/api_host.html">主机协议栈</a></li> +<li class="toctree-l1"><a class="reference internal" href="../api/api_port.html">主从驱动</a></li> +<li class="toctree-l1"><a class="reference internal" href="../api/api_config.html">USB CONFIG 说明</a></li> +</ul> +<p class="caption" role="heading"><span class="caption-text">Class 指南</span></p> +<ul> +<li class="toctree-l1"><a class="reference internal" href="../class/class_cdc.html">CDC</a></li> +<li class="toctree-l1"><a class="reference internal" href="../class/class_hid.html">HID</a></li> +<li class="toctree-l1"><a class="reference internal" href="../class/class_msc.html">MSC</a></li> +<li class="toctree-l1"><a class="reference internal" href="../class/class_audio.html">UAC</a></li> +<li class="toctree-l1"><a class="reference internal" href="../class/class_video.html">UVC</a></li> +<li class="toctree-l1"><a class="reference internal" href="../class/winusb.html">WINUSB</a></li> +</ul> +<p class="caption" role="heading"><span class="caption-text">例程</span></p> +<ul> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_cdc_acm.html">CDC ACM Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_hid.html">HID Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_msc.html">MSC Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_audiov1.html">AudioV1 Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_audiov2.html">AudioV2 Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_video.html">USB Video Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_winusb.html">WinUSB Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_webusb.html">WebUSB Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_rndis.html">CDC RNDIS Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_ecm.html">CDC ECM Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_adb.html">ADB Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_mtp.html">MTP Device</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbh_serial.html">Serial Host</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbh_hid.html">HID Host</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbh_msc.html">MSC Host</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbh_net.html">Network Host</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbh_bluetooth.html">BTBLE Host</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbh_wifi.html">WIFI Host</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbh_audio.html">Audio Host</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbh_video.html">Video Host</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usb_otg.html">USB OTG</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbd_vendor.html">Vendor Device 驱动编写</a></li> +<li class="toctree-l1"><a class="reference internal" href="../demo/usbh_vendor.html">Vendor Host 驱动编写</a></li> +</ul> +<p class="caption" role="heading"><span class="caption-text">USBIP 介绍</span></p> +<ul> +<li class="toctree-l1"><a class="reference internal" href="../usbip/ohci.html">OHCI</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usbip/ehci.html">EHCI</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usbip/xhci.html">XHCI</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usbip/chipidea.html">CHIPIDEA</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usbip/dwc2.html">DWC2</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usbip/musb.html">MUSB</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usbip/fotg210.html">FOTG210</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usbip/cdns2.html">CDNS2</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usbip/cdns3.html">CDNS3</a></li> +<li class="toctree-l1"><a class="reference internal" href="../usbip/dwc3.html">DWC3</a></li> +</ul> +<p class="caption" role="heading"><span class="caption-text">工具使用</span></p> +<ul> +<li class="toctree-l1"><a class="reference internal" href="../tools/index.html">chryusb_configurator</a></li> +<li class="toctree-l1"><a class="reference internal" href="../tools/index.html#usb-protocol-suite">力科 USB Protocol Suite</a></li> +<li class="toctree-l1"><a class="reference internal" href="../tools/index.html#wireshark">Wireshark</a></li> +<li class="toctree-l1"><a class="reference internal" href="../tools/index.html#audacity">Audacity</a></li> +</ul> +<p class="caption" role="heading"><span class="caption-text">Release Notes</span></p> +<ul> +<li class="toctree-l1"><a class="reference internal" href="../version.html">版本说明</a></li> +</ul> +<p class="caption" role="heading"><span class="caption-text">性能展示</span></p> +<ul> +<li class="toctree-l1"><a class="reference internal" href="../show/index.html">性能展示</a></li> +</ul> +<p class="caption" role="heading"><span class="caption-text">商业支持</span></p> +<ul> +<li class="toctree-l1"><a class="reference internal" href="../support/index.html">商业支持</a></li> +</ul> + + </div> + </div> + </nav> + + <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" > + <i data-toggle="wy-nav-top" class="fa fa-bars"></i> + <a href="../index.html">CherryUSB</a> + </nav> + + <div class="wy-nav-content"> + <div class="rst-content"> + <div role="navigation" aria-label="Page navigation"> + <ul class="wy-breadcrumbs"> + <li><a href="../index.html" class="icon icon-home" aria-label="Home"></a></li> + <li class="breadcrumb-item active">USB 极限速度测试</li> + <li class="wy-breadcrumbs-aside"> + <a href="../_sources/quick_start/usb_speed.rst.txt" rel="nofollow"> View page source</a> + </li> + </ul> + <hr/> +</div> + <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> + <div itemprop="articleBody"> + + <section id="usb"> +<h1>USB 极限速度测试<a class="headerlink" href="#usb" title="Link to this heading"></a></h1> +<p>在 tools 中我们提供了一个 USB 极限速度测试工具,帮助用户测试 USB 设备的传输速度。该工具可以测量 USB 设备在不同条件下的读写速度,并生成详细的测试报告。</p> +<ul class="simple"> +<li><p>test_cdc_speed.c + libusb_winusb_device_for_speed.c</p></li> +</ul> +<p>该工具主要使用 libusb 进行测试,因此,需要保证本地文件需要有 libusb 库和头文件,device 使用 winusb,因为如果使用 cdc acm,则需要进行驱动转换。使用如下:</p> +<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="cp">#默认已经提供 test_cdc_speed.exe</span> + +<span class="n">gcc</span><span class="w"> </span><span class="o">-</span><span class="n">O2</span><span class="w"> </span><span class="o">-</span><span class="n">o</span><span class="w"> </span><span class="n">test_cdc_speed</span><span class="p">.</span><span class="n">exe</span><span class="w"> </span><span class="p">.</span><span class="err">\</span><span class="n">test_cdc_speed</span><span class="p">.</span><span class="n">c</span><span class="w"> </span><span class="p">.</span><span class="err">\</span><span class="n">libusb</span><span class="mf">-1.0</span><span class="p">.</span><span class="n">dll</span><span class="p">.</span><span class="n">a</span><span class="w"> </span><span class="o">-</span><span class="n">I</span><span class="p">.</span><span class="w"> </span><span class="o">-</span><span class="n">lm</span> +<span class="p">.</span><span class="err">\</span><span class="n">test_cdc_speed</span><span class="p">.</span><span class="n">exe</span><span class="w"> </span><span class="o">--</span><span class="n">vendor</span><span class="w"> </span><span class="mh">0xFFFF</span><span class="w"> </span><span class="o">--</span><span class="n">product</span><span class="w"> </span><span class="mh">0xFFFF</span><span class="w"> </span><span class="o">--</span><span class="n">interface</span><span class="w"> </span><span class="mi">0</span><span class="w"> </span><span class="o">--</span><span class="n">mode</span><span class="w"> </span><span class="n">tx</span><span class="w"> </span><span class="o">--</span><span class="n">chunk</span><span class="o">-</span><span class="n">length</span><span class="w"> </span><span class="mi">4</span><span class="n">M</span> +<span class="p">.</span><span class="err">\</span><span class="n">test_cdc_speed</span><span class="p">.</span><span class="n">exe</span><span class="w"> </span><span class="o">--</span><span class="n">vendor</span><span class="w"> </span><span class="mh">0xFFFF</span><span class="w"> </span><span class="o">--</span><span class="n">product</span><span class="w"> </span><span class="mh">0xFFFF</span><span class="w"> </span><span class="o">--</span><span class="n">interface</span><span class="w"> </span><span class="mi">0</span><span class="w"> </span><span class="o">--</span><span class="n">mode</span><span class="w"> </span><span class="n">rx</span><span class="w"> </span><span class="o">--</span><span class="n">chunk</span><span class="o">-</span><span class="n">length</span><span class="w"> </span><span class="mi">4</span><span class="n">M</span> +</pre></div> +</div> +<ul class="simple"> +<li><p>test_cdc_speed.py</p></li> +</ul> +<p>该工具主要使用 pyserial 进行测试,因此,需要保证已经安装 pyserial 库。使用如下:</p> +<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="n">python</span><span class="w"> </span><span class="n">test_cdc_speed</span><span class="p">.</span><span class="n">py</span><span class="w"> </span><span class="o">--</span><span class="n">port</span><span class="w"> </span><span class="n">COM6</span><span class="w"> </span><span class="o">--</span><span class="n">mode</span><span class="w"> </span><span class="n">tx</span><span class="w"> </span><span class="o">--</span><span class="n">chunk</span><span class="o">-</span><span class="n">length</span><span class="w"> </span><span class="mi">4</span><span class="n">M</span> +<span class="n">python</span><span class="w"> </span><span class="n">test_cdc_speed</span><span class="p">.</span><span class="n">py</span><span class="w"> </span><span class="o">--</span><span class="n">port</span><span class="w"> </span><span class="n">COM6</span><span class="w"> </span><span class="o">--</span><span class="n">mode</span><span class="w"> </span><span class="n">rx</span><span class="w"> </span><span class="o">--</span><span class="n">chunk</span><span class="o">-</span><span class="n">length</span><span class="w"> </span><span class="mi">4</span><span class="n">M</span> +</pre></div> +</div> +<div class="admonition note"> +<p class="admonition-title">Note</p> +<p>python 测试 TX 和 libusb 基本相同,rx 会略低于 libusb,主要原因是因为 pyserial 读取后会放到缓存中,多一次拷贝导致</p> +</div> +</section> + + + </div> + </div> + <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer"> + <a href="opensource.html" class="btn btn-neutral float-left" title="基于 CherryUSB 的开源项目" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a> + <a href="../usb/usb2.0_basic.html" class="btn btn-neutral float-right" title="USB 基本概念(2.0 为主)" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> + </div> + + <hr/> + + <div role="contentinfo"> + <p>© Copyright 2022 ~ 2026, sakumisu.</p> + </div> + + Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a + <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a> + provided by <a href="https://readthedocs.org">Read the Docs</a>. + + +</footer> + </div> + </div> + </section> + </div> + <script> + jQuery(function () { + SphinxRtdTheme.Navigation.enable(true); + }); + </script> + +</body> +</html>
\ No newline at end of file |
