summaryrefslogtreecommitdiff
path: root/docs/_build/html/api/api_host.html
diff options
context:
space:
mode:
authorsakumisu <[email protected]>2022-03-08 12:39:41 +0800
committersakumisu <[email protected]>2022-03-08 12:39:41 +0800
commitb8d1fd6b658a3673adc7fb46284eae0e17b4c9bb (patch)
tree55a28ab93ed07523f2955d83082714a94dfcbd27 /docs/_build/html/api/api_host.html
parent5772d29f14eef3462982c3a71a7d20eacc2648fa (diff)
update doc structure,hosting with readdoc
Diffstat (limited to 'docs/_build/html/api/api_host.html')
-rw-r--r--docs/_build/html/api/api_host.html416
1 files changed, 0 insertions, 416 deletions
diff --git a/docs/_build/html/api/api_host.html b/docs/_build/html/api/api_host.html
deleted file mode 100644
index 905a7065..00000000
--- a/docs/_build/html/api/api_host.html
+++ /dev/null
@@ -1,416 +0,0 @@
-
-
-<!DOCTYPE html>
-<html class="writer-html5" lang="zh-CN" >
-<head>
- <meta charset="utf-8" />
-
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-
- <title>主机协议栈 &mdash; CherryUSB 使用指南 文档</title>
-
-
-
- <link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
- <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
- <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
- <link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
-
-
-
-
-
-
-
-
-
-
- <!--[if lt IE 9]>
- <script src="../_static/js/html5shiv.min.js"></script>
- <![endif]-->
-
-
- <script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
- <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
- <script src="../_static/jquery.js"></script>
- <script src="../_static/underscore.js"></script>
- <script src="../_static/doctools.js"></script>
- <script src="../_static/translations.js"></script>
-
- <script type="text/javascript" src="../_static/js/theme.js"></script>
-
-
- <link rel="index" title="索引" href="../genindex.html" />
- <link rel="search" title="搜索" href="../search.html" />
- <link rel="next" title="其他" href="api_common.html" />
- <link rel="prev" title="设备协议栈" href="api_device.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="在文档中搜索" />
- <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="main navigation">
-
-
-
-
-
-
- <p class="caption"><span class="caption-text">快速入门</span></p>
-<ul>
-<li class="toctree-l1"><a class="reference internal" href="../quick_start/bl702.html">基于 BL702 开发指南</a></li>
-<li class="toctree-l1"><a class="reference internal" href="../quick_start/stm32f429.html">基于 STM32F429 开发指南</a></li>
-<li class="toctree-l1"><a class="reference internal" href="../quick_start/ch32v307.html">基于 CH32V307 开发指南</a></li>
-<li class="toctree-l1"><a class="reference internal" href="../quick_start/rt-thread/rt-thread_zh.html">基于 RT-Thread 软件包开发指南</a></li>
-</ul>
-<p class="caption"><span class="caption-text">USB 基本知识点</span></p>
-<ul>
-<li class="toctree-l1"><a class="reference internal" href="../usb/usb_basic.html">USB 基本概念</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>
-</ul>
-<p class="caption"><span class="caption-text">API 手册</span></p>
-<ul class="current">
-<li class="toctree-l1"><a class="reference internal" href="api_device.html">设备协议栈</a></li>
-<li class="toctree-l1 current"><a class="current reference internal" href="#">主机协议栈</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="#core">CORE</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="#class">CLASS 驱动信息结构体</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#id2">端点结构体</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#id3">接口结构体</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#id4">配置结构体</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#hubport">hubport 结构体</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#hub">hub 结构体</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#usbh-event-notify-handler">usbh_event_notify_handler</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#usbh-initialize">usbh_initialize</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#usbh-find-class-instance">usbh_find_class_instance</a></li>
-<li class="toctree-l3"><a class="reference internal" href="#lsusb">lsusb</a></li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="#cdc-acm">CDC ACM</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#hid">HID</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#msc">MSC</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#uac">UAC</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#uvc">UVC</a></li>
-<li class="toctree-l2"><a class="reference internal" href="#porting">PORTING</a></li>
-</ul>
-</li>
-<li class="toctree-l1"><a class="reference internal" href="api_common.html">其他</a></li>
-</ul>
-<p class="caption"><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"><span class="caption-text">综合例程</span></p>
-<ul>
-<li class="toctree-l1"><a class="reference internal" href="../demo/usb2uart.html">USB 转串口</a></li>
-<li class="toctree-l1"><a class="reference internal" href="../demo/mouse_keyboard.html">键盘与鼠标</a></li>
-<li class="toctree-l1"><a class="reference internal" href="../demo/msc_boot.html">U盘制作 BootLoader</a></li>
-<li class="toctree-l1"><a class="reference internal" href="../demo/video.html">USB 摄像头</a></li>
-<li class="toctree-l1"><a class="reference internal" href="../demo/speaker_mic.html">USB 双通道扬声器和麦克风</a></li>
-<li class="toctree-l1"><a class="reference internal" href="../demo/daplink.html">DAPLINK V2.0调试器</a></li>
-</ul>
-<p class="caption"><span class="caption-text">Porting 说明</span></p>
-<ul>
-<li class="toctree-l1"><a class="reference internal" href="../porting.html">Porting 编写说明</a></li>
-</ul>
-
-
-
- </div>
-
- </div>
- </nav>
-
- <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-
- <nav class="wy-nav-top" aria-label="top navigation">
-
- <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="breadcrumbs navigation">
-
- <ul class="wy-breadcrumbs">
-
- <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
-
- <li>主机协议栈</li>
-
-
- <li class="wy-breadcrumbs-aside">
-
-
- <a href="../_sources/api/api_host.rst.txt" rel="nofollow"> 查看页面源码</a>
-
-
- </li>
-
- </ul>
-
-
- <hr/>
-</div>
- <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
- <div itemprop="articleBody">
-
- <div class="section" id="id1">
-<h1>主机协议栈<a class="headerlink" href="#id1" title="永久链接至标题">¶</a></h1>
-<div class="section" id="core">
-<h2>CORE<a class="headerlink" href="#core" title="永久链接至标题">¶</a></h2>
-<div class="section" id="class">
-<h3>CLASS 驱动信息结构体<a class="headerlink" href="#class" title="永久链接至标题">¶</a></h3>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="nc">usbh_class_info</span> <span class="p">{</span>
- <span class="kt">uint8_t</span> <span class="n">class</span><span class="p">;</span> <span class="cm">/* Base device class code */</span>
- <span class="kt">uint8_t</span> <span class="n">subclass</span><span class="p">;</span> <span class="cm">/* Sub-class, depends on base class. Eg. */</span>
- <span class="kt">uint8_t</span> <span class="n">protocol</span><span class="p">;</span> <span class="cm">/* Protocol, depends on base class. Eg. */</span>
- <span class="kt">uint16_t</span> <span class="n">vid</span><span class="p">;</span> <span class="cm">/* Vendor ID (for vendor/product specific devices) */</span>
- <span class="kt">uint16_t</span> <span class="n">pid</span><span class="p">;</span> <span class="cm">/* Product ID (for vendor/product specific devices) */</span>
- <span class="k">const</span> <span class="k">struct</span> <span class="nc">usbh_class_driver</span> <span class="o">*</span><span class="n">class_driver</span><span class="p">;</span>
-<span class="p">};</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="id2">
-<h3>端点结构体<a class="headerlink" href="#id2" title="永久链接至标题">¶</a></h3>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span> <span class="k">struct</span> <span class="nc">usbh_endpoint</span> <span class="p">{</span>
- <span class="k">struct</span> <span class="nc">usb_endpoint_descriptor</span> <span class="n">ep_desc</span><span class="p">;</span>
-<span class="p">}</span> <span class="n">usbh_endpoint_t</span><span class="p">;</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="id3">
-<h3>接口结构体<a class="headerlink" href="#id3" title="永久链接至标题">¶</a></h3>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span> <span class="k">struct</span> <span class="nc">usbh_interface</span> <span class="p">{</span>
- <span class="k">struct</span> <span class="nc">usb_interface_descriptor</span> <span class="n">intf_desc</span><span class="p">;</span>
- <span class="k">struct</span> <span class="nc">usbh_endpoint</span> <span class="n">ep</span><span class="p">[</span><span class="n">CONFIG_USBHOST_EP_NUM</span><span class="p">];</span>
- <span class="kt">char</span> <span class="n">devname</span><span class="p">[</span><span class="n">CONFIG_USBHOST_DEV_NAMELEN</span><span class="p">];</span>
- <span class="k">struct</span> <span class="nc">usbh_class_driver</span> <span class="o">*</span><span class="n">class_driver</span><span class="p">;</span>
- <span class="kt">void</span> <span class="o">*</span><span class="n">priv</span><span class="p">;</span>
-<span class="p">}</span> <span class="n">usbh_interface_t</span><span class="p">;</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="id4">
-<h3>配置结构体<a class="headerlink" href="#id4" title="永久链接至标题">¶</a></h3>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span> <span class="k">struct</span> <span class="nc">usbh_configuration</span> <span class="p">{</span>
- <span class="k">struct</span> <span class="nc">usb_configuration_descriptor</span> <span class="n">config_desc</span><span class="p">;</span>
- <span class="k">struct</span> <span class="nc">usbh_interface</span> <span class="n">intf</span><span class="p">[</span><span class="n">CONFIG_USBHOST_INTF_NUM</span><span class="p">];</span>
-<span class="p">}</span> <span class="n">usbh_configuration_t</span><span class="p">;</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="hubport">
-<h3>hubport 结构体<a class="headerlink" href="#hubport" title="永久链接至标题">¶</a></h3>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span> <span class="k">struct</span> <span class="nc">usbh_hubport</span> <span class="p">{</span>
- <span class="kt">bool</span> <span class="n">connected</span><span class="p">;</span> <span class="cm">/* True: device connected; false: disconnected */</span>
- <span class="kt">bool</span> <span class="n">port_change</span><span class="p">;</span> <span class="cm">/* True: port changed; false: port do not change */</span>
- <span class="kt">uint8_t</span> <span class="n">port</span><span class="p">;</span> <span class="cm">/* Hub port index */</span>
- <span class="kt">uint8_t</span> <span class="n">dev_addr</span><span class="p">;</span> <span class="cm">/* device address */</span>
- <span class="kt">uint8_t</span> <span class="n">speed</span><span class="p">;</span> <span class="cm">/* device speed */</span>
- <span class="n">usbh_epinfo_t</span> <span class="n">ep0</span><span class="p">;</span> <span class="cm">/* control ep info */</span>
- <span class="k">struct</span> <span class="nc">usb_device_descriptor</span> <span class="n">device_desc</span><span class="p">;</span>
- <span class="k">struct</span> <span class="nc">usbh_configuration</span> <span class="n">config</span><span class="p">;</span>
-<span class="cp">#if 0</span><span class="c"></span>
-<span class="c"> uint8_t* config_desc;</span>
-<span class="cp">#endif</span>
- <span class="k">struct</span> <span class="nc">usb_setup_packet</span> <span class="o">*</span><span class="n">setup</span><span class="p">;</span>
- <span class="k">struct</span> <span class="nc">usbh_hub</span> <span class="o">*</span><span class="n">parent</span><span class="p">;</span> <span class="cm">/*if NULL, is roothub*/</span>
-<span class="p">}</span> <span class="n">usbh_hubport_t</span><span class="p">;</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="hub">
-<h3>hub 结构体<a class="headerlink" href="#hub" title="永久链接至标题">¶</a></h3>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span> <span class="k">struct</span> <span class="nc">usbh_hub</span> <span class="p">{</span>
- <span class="n">usb_slist_t</span> <span class="n">list</span><span class="p">;</span>
- <span class="kt">uint8_t</span> <span class="n">index</span><span class="p">;</span> <span class="cm">/* Hub index */</span>
- <span class="kt">uint8_t</span> <span class="n">nports</span><span class="p">;</span> <span class="cm">/* Hub port number */</span>
- <span class="kt">uint8_t</span> <span class="n">dev_addr</span><span class="p">;</span> <span class="cm">/* Hub device address */</span>
- <span class="n">usbh_epinfo_t</span> <span class="n">intin</span><span class="p">;</span>
- <span class="kt">uint8_t</span> <span class="o">*</span><span class="n">int_buffer</span><span class="p">;</span>
- <span class="k">struct</span> <span class="nc">hub_port_status</span> <span class="o">*</span><span class="n">port_status</span><span class="p">;</span>
- <span class="k">struct</span> <span class="nc">usb_hub_descriptor</span> <span class="n">hub_desc</span><span class="p">;</span>
- <span class="k">struct</span> <span class="nc">usbh_hubport</span> <span class="n">child</span><span class="p">[</span><span class="n">CONFIG_USBHOST_EHPORTS</span><span class="p">];</span>
- <span class="k">struct</span> <span class="nc">usbh_hubport</span> <span class="o">*</span><span class="n">parent</span><span class="p">;</span> <span class="cm">/* Parent hub port */</span>
- <span class="k">struct</span> <span class="nc">usb_work</span> <span class="n">work</span><span class="p">;</span>
-<span class="p">}</span> <span class="n">usbh_hub_t</span><span class="p">;</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="usbh-event-notify-handler">
-<h3>usbh_event_notify_handler<a class="headerlink" href="#usbh-event-notify-handler" title="永久链接至标题">¶</a></h3>
-<p><code class="docutils literal notranslate"><span class="pre">usbh_event_notify_handler</span></code> 是 USB 中断中的核心,用于处理不同的中断标志。包括复位、端点0 IN/OUT/SETUP、其他端点 IN/OUT 、SUSPEND、RESUME、SOF 中断等等。用于需要在 porting 接口中的 USB中断中调用该接口。</p>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">usbh_event_notify_handler</span><span class="p">(</span><span class="kt">uint8_t</span> <span class="n">event</span><span class="p">,</span> <span class="kt">uint8_t</span> <span class="n">rhport</span><span class="p">);</span>
-</pre></div>
-</div>
-<ul class="simple">
-<li><p><strong>event</strong> 中断事件</p></li>
-<li><p><strong>rhport</strong> roothub 端口号</p></li>
-</ul>
-<p>其中 <code class="docutils literal notranslate"><span class="pre">event</span></code> 有如下类型:</p>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">usbh_event_type</span> <span class="p">{</span>
- <span class="n">USBH_EVENT_ATTACHED</span><span class="p">,</span>
- <span class="n">USBH_EVENT_REMOVED</span><span class="p">,</span>
-<span class="p">};</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="usbh-initialize">
-<h3>usbh_initialize<a class="headerlink" href="#usbh-initialize" title="永久链接至标题">¶</a></h3>
-<p><code class="docutils literal notranslate"><span class="pre">usbh_initialize</span></code> 用来初始化 usb 主机协议栈,包括:创建插拔检测用的信号量和枚举线程、高低工作队列、初始化 roothub端点0 配置,初始化 usb 主机控制器。</p>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">usbh_initialize</span><span class="p">(</span><span class="kt">void</span><span class="p">);</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="usbh-find-class-instance">
-<h3>usbh_find_class_instance<a class="headerlink" href="#usbh-find-class-instance" title="永久链接至标题">¶</a></h3>
-<p><code class="docutils literal notranslate"><span class="pre">usbh_find_class_instance</span></code> 根据注册的 class 名称查找对应的 class 结构体句柄。</p>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="o">*</span><span class="nf">usbh_find_class_instance</span><span class="p">(</span><span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">devname</span><span class="p">);</span>
-</pre></div>
-</div>
-<ul class="simple">
-<li><p><strong>devname</strong> class 名称</p></li>
-<li><p><strong>return</strong> class 结构体句柄</p></li>
-</ul>
-</div>
-<div class="section" id="lsusb">
-<h3>lsusb<a class="headerlink" href="#lsusb" title="永久链接至标题">¶</a></h3>
-<p><code class="docutils literal notranslate"><span class="pre">lsusb</span></code> 用来查看和操作 hub 上的设备信息。需要借助 shell 插件使用。</p>
-<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">lsusb</span><span class="p">(</span><span class="kt">int</span> <span class="n">argc</span><span class="p">,</span> <span class="kt">char</span> <span class="o">**</span><span class="n">argv</span><span class="p">);</span>
-</pre></div>
-</div>
-</div>
-</div>
-<div class="section" id="cdc-acm">
-<h2>CDC ACM<a class="headerlink" href="#cdc-acm" title="永久链接至标题">¶</a></h2>
-</div>
-<div class="section" id="hid">
-<h2>HID<a class="headerlink" href="#hid" title="永久链接至标题">¶</a></h2>
-</div>
-<div class="section" id="msc">
-<h2>MSC<a class="headerlink" href="#msc" title="永久链接至标题">¶</a></h2>
-</div>
-<div class="section" id="uac">
-<h2>UAC<a class="headerlink" href="#uac" title="永久链接至标题">¶</a></h2>
-</div>
-<div class="section" id="uvc">
-<h2>UVC<a class="headerlink" href="#uvc" title="永久链接至标题">¶</a></h2>
-</div>
-<div class="section" id="porting">
-<h2>PORTING<a class="headerlink" href="#porting" title="永久链接至标题">¶</a></h2>
-</div>
-</div>
-
-
- </div>
-
- </div>
- <footer>
- <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
- <a href="api_common.html" class="btn btn-neutral float-right" title="其他" accesskey="n" rel="next">下一页 <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
- <a href="api_device.html" class="btn btn-neutral float-left" title="设备协议栈" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> 上一页</a>
- </div>
-
- <hr/>
-
- <div role="contentinfo">
- <p>
- &#169; 版权所有 2022, sakumisu.
-
- </p>
- </div>
-
-
-
- 利用 <a href="https://www.sphinx-doc.org/">Sphinx</a> 构建,使用了
-
- <a href="https://github.com/readthedocs/sphinx_rtd_theme">主题</a>
-
- 由 <a href="https://readthedocs.org">Read the Docs</a>开发.
-
-</footer>
- </div>
- </div>
-
- </section>
-
- </div>
-
-
- <script type="text/javascript">
- jQuery(function () {
- SphinxRtdTheme.Navigation.enable(true);
- });
- </script>
-
-
-
-
-
-
-</body>
-</html> \ No newline at end of file