|
|
@@ -159,8 +159,11 @@
|
|
|
|
|
|
<section id="usbh-serial">
|
|
|
<h1>usbh_serial<a class="headerlink" href="#usbh-serial" title="Link to this heading"></a></h1>
|
|
|
-<p>Serial 框架当前支持 cdc acm, ftdi, cp210x, ch34x, pl2303,gsm 驱动。当前支持两种使用方式,
|
|
|
-一种是使用源生 CherryUSB usbhost serial API 进行操作,另一种是基于平台封装的 API 操作,比如 rt-thread device API。,nuttx posix API。</p>
|
|
|
+<p>Serial 框架当前支持 cdc acm, ftdi, cp210x, ch34x, pl2303,gsm 驱动。</p>
|
|
|
+<figure class="align-default">
|
|
|
+<img alt="demo/usbh_serial.png" src="demo/usbh_serial.png" />
|
|
|
+</figure>
|
|
|
+<p>当前支持两种使用方式,一种是使用源生 CherryUSB usbhost serial API 进行操作,另一种是基于平台封装的 API 操作,比如 rt-thread device API,nuttx posix API。</p>
|
|
|
<p>下面演示的是使用 CherryUSB usbhost serial API 进行串口回环测试,并且使用阻塞发送,异步读取的方式:</p>
|
|
|
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span><span class="w"> </span><span class="nc">usbh_serial</span><span class="w"> </span><span class="o">*</span><span class="n">serial</span><span class="p">;</span>
|
|
|
|
|
|
@@ -250,6 +253,100 @@
|
|
|
<li><p>纯 USB 设备 + 未启动波特率,这种情况下可以使用 <cite>usbh_serial_cdc_write_async</cite> 和 <cite>usbh_serial_cdc_read_async</cite> 进行异步收发数据。阻塞则可以用 <cite>usbh_serial_write</cite> ,不可以使用 <cite>usbh_serial_read</cite>。</p></li>
|
|
|
<li><p>纯 USB 设备 + 启动波特率,同 1,但是速率打折扣(因为多了一层 ringbuf)。此时也不可以使用 <cite>usbh_serial_cdc_write_async</cite> 和 <cite>usbh_serial_cdc_read_async</cite>。 <strong>如果是 GSM 设备请使用第一种场景</strong>。</p></li>
|
|
|
</ul>
|
|
|
+<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_hub</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">full</span><span class="o">-</span><span class="n">speed</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">connected</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">found</span><span class="p">,</span><span class="n">idVendor</span><span class="o">:</span><span class="mi">10</span><span class="n">c4</span><span class="p">,</span><span class="n">idProduct</span><span class="o">:</span><span class="n">ea60</span><span class="p">,</span><span class="n">bcdDevice</span><span class="o">:</span><span class="mo">0100</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">bNumConfigurations</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">interfaces</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Enumeration</span><span class="w"> </span><span class="n">success</span><span class="p">,</span><span class="w"> </span><span class="n">start</span><span class="w"> </span><span class="n">loading</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Loading</span><span class="w"> </span><span class="n">cp210x</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">interface</span><span class="w"> </span><span class="mi">0</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_cp210x</span><span class="p">]</span><span class="w"> </span><span class="n">chip</span><span class="w"> </span><span class="n">partnum</span><span class="o">:</span><span class="w"> </span><span class="mh">0x02</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_cp210x</span><span class="p">]</span><span class="w"> </span><span class="n">ulAmountInInQueue</span><span class="o">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">ulAmountInOutQueue</span><span class="o">:</span><span class="w"> </span><span class="mi">0</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mi">81</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">64</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mo">01</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">64</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Register</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB0</span><span class="w"> </span><span class="p">(</span><span class="n">cp210x</span><span class="p">)</span>
|
|
|
+<span class="n">start</span><span class="w"> </span><span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="p">,</span><span class="w"> </span><span class="n">len</span><span class="o">:</span><span class="w"> </span><span class="mi">1024</span>
|
|
|
+<span class="n">send</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">receive</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="w"> </span><span class="n">success</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Unregister</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB0</span><span class="w"> </span><span class="p">(</span><span class="n">cp210x</span><span class="p">)</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">disconnected</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_hub</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">high</span><span class="o">-</span><span class="n">speed</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">connected</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">found</span><span class="p">,</span><span class="n">idVendor</span><span class="o">:</span><span class="mo">0403</span><span class="p">,</span><span class="n">idProduct</span><span class="o">:</span><span class="mi">6010</span><span class="p">,</span><span class="n">bcdDevice</span><span class="o">:</span><span class="mo">0700</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">bNumConfigurations</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="n">interfaces</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Enumeration</span><span class="w"> </span><span class="n">success</span><span class="p">,</span><span class="w"> </span><span class="n">start</span><span class="w"> </span><span class="n">loading</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Loading</span><span class="w"> </span><span class="n">ftdi</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">interface</span><span class="w"> </span><span class="mi">0</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_ftdi</span><span class="p">]</span><span class="w"> </span><span class="n">chip</span><span class="w"> </span><span class="n">name</span><span class="o">:</span><span class="w"> </span><span class="n">FT2232H</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mi">81</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">512</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">512</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Register</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB0</span><span class="w"> </span><span class="p">(</span><span class="n">ftdi</span><span class="p">)</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Loading</span><span class="w"> </span><span class="n">ftdi</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">interface</span><span class="w"> </span><span class="mi">1</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_ftdi</span><span class="p">]</span><span class="w"> </span><span class="n">chip</span><span class="w"> </span><span class="n">name</span><span class="o">:</span><span class="w"> </span><span class="n">FT2232H</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mi">83</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">512</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mo">04</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">512</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Register</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB1</span><span class="w"> </span><span class="p">(</span><span class="n">ftdi</span><span class="p">)</span>
|
|
|
+<span class="n">start</span><span class="w"> </span><span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="p">,</span><span class="w"> </span><span class="n">len</span><span class="o">:</span><span class="w"> </span><span class="mi">1024</span>
|
|
|
+<span class="n">send</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">receive</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="w"> </span><span class="n">success</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Unregister</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB0</span><span class="w"> </span><span class="p">(</span><span class="n">ftdi</span><span class="p">)</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Unregister</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB1</span><span class="w"> </span><span class="p">(</span><span class="n">ftdi</span><span class="p">)</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">disconnected</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_hub</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">full</span><span class="o">-</span><span class="n">speed</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">connected</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">found</span><span class="p">,</span><span class="n">idVendor</span><span class="o">:</span><span class="mo">067</span><span class="n">b</span><span class="p">,</span><span class="n">idProduct</span><span class="o">:</span><span class="mi">2303</span><span class="p">,</span><span class="n">bcdDevice</span><span class="o">:</span><span class="mo">0300</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">bNumConfigurations</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">interfaces</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Enumeration</span><span class="w"> </span><span class="n">success</span><span class="p">,</span><span class="w"> </span><span class="n">start</span><span class="w"> </span><span class="n">loading</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Loading</span><span class="w"> </span><span class="n">pl2303</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">interface</span><span class="w"> </span><span class="mi">0</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_pl2303</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mi">81</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">03</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">10</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">01</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_pl2303</span><span class="p">]</span><span class="w"> </span><span class="n">chip</span><span class="w"> </span><span class="n">type</span><span class="o">:</span><span class="w"> </span><span class="n">PL2303HX</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">64</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mi">83</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">64</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Register</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB0</span><span class="w"> </span><span class="p">(</span><span class="n">pl2303</span><span class="p">)</span>
|
|
|
+<span class="n">start</span><span class="w"> </span><span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="p">,</span><span class="w"> </span><span class="n">len</span><span class="o">:</span><span class="w"> </span><span class="mi">1024</span>
|
|
|
+<span class="n">send</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">receive</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="w"> </span><span class="n">success</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Unregister</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB0</span><span class="w"> </span><span class="p">(</span><span class="n">pl2303</span><span class="p">)</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">disconnected</span>
|
|
|
+<span class="p">[</span><span class="n">W</span><span class="o">/</span><span class="n">usbh_hub</span><span class="p">]</span><span class="w"> </span><span class="n">Failed</span><span class="w"> </span><span class="n">to</span><span class="w"> </span><span class="n">enable</span><span class="w"> </span><span class="n">port</span><span class="w"> </span><span class="mi">1</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_hub</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">full</span><span class="o">-</span><span class="n">speed</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">connected</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">found</span><span class="p">,</span><span class="n">idVendor</span><span class="o">:</span><span class="mi">1</span><span class="n">a86</span><span class="p">,</span><span class="n">idProduct</span><span class="o">:</span><span class="mi">7523</span><span class="p">,</span><span class="n">bcdDevice</span><span class="o">:</span><span class="mo">0264</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">bNumConfigurations</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">interfaces</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Enumeration</span><span class="w"> </span><span class="n">success</span><span class="p">,</span><span class="w"> </span><span class="n">start</span><span class="w"> </span><span class="n">loading</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Loading</span><span class="w"> </span><span class="n">ch34x</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">interface</span><span class="w"> </span><span class="mi">0</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_ch43x</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mi">81</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">03</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">8</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">01</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_ch43x</span><span class="p">]</span><span class="w"> </span><span class="n">chip</span><span class="w"> </span><span class="n">version</span><span class="o">:</span><span class="w"> </span><span class="mh">0x31</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mi">82</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">32</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">32</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Register</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB0</span><span class="w"> </span><span class="p">(</span><span class="n">ch34x</span><span class="p">)</span>
|
|
|
+<span class="n">start</span><span class="w"> </span><span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="p">,</span><span class="w"> </span><span class="n">len</span><span class="o">:</span><span class="w"> </span><span class="mi">1024</span>
|
|
|
+<span class="n">send</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">receive</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="w"> </span><span class="n">success</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Unregister</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyUSB0</span><span class="w"> </span><span class="p">(</span><span class="n">ch34x</span><span class="p">)</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">disconnected</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_hub</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">full</span><span class="o">-</span><span class="n">speed</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">connected</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">New</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">found</span><span class="p">,</span><span class="n">idVendor</span><span class="o">:</span><span class="mi">42</span><span class="n">bf</span><span class="p">,</span><span class="n">idProduct</span><span class="o">:</span><span class="n">b210</span><span class="p">,</span><span class="n">bcdDevice</span><span class="o">:</span><span class="mo">0217</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">bNumConfigurations</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">The</span><span class="w"> </span><span class="n">device</span><span class="w"> </span><span class="n">has</span><span class="w"> </span><span class="mi">3</span><span class="w"> </span><span class="n">interfaces</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Enumeration</span><span class="w"> </span><span class="n">success</span><span class="p">,</span><span class="w"> </span><span class="n">start</span><span class="w"> </span><span class="n">loading</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span>
|
|
|
+<span class="p">[</span><span class="n">E</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Do</span><span class="w"> </span><span class="n">not</span><span class="w"> </span><span class="n">support</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="mh">0xff</span><span class="p">,</span><span class="w"> </span><span class="n">Subclass</span><span class="o">:</span><span class="mh">0x01</span><span class="p">,</span><span class="w"> </span><span class="n">Protocl</span><span class="o">:</span><span class="mh">0x00</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">interface</span><span class="w"> </span><span class="mi">0</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Loading</span><span class="w"> </span><span class="n">cdc_acm</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">interface</span><span class="w"> </span><span class="mi">1</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_cdc_acm</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mi">85</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">03</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">64</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mo">04</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">64</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Ep</span><span class="o">=</span><span class="mi">83</span><span class="w"> </span><span class="n">Attr</span><span class="o">=</span><span class="mo">02</span><span class="w"> </span><span class="n">Mps</span><span class="o">=</span><span class="mi">64</span><span class="w"> </span><span class="n">Interval</span><span class="o">=</span><span class="mo">00</span><span class="w"> </span><span class="n">Mult</span><span class="o">=</span><span class="mo">00</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Register</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyACM0</span><span class="w"> </span><span class="p">(</span><span class="n">cdc_acm</span><span class="p">)</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Loading</span><span class="w"> </span><span class="n">cdc_data</span><span class="w"> </span><span class="n">class</span><span class="w"> </span><span class="n">driver</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">interface</span><span class="w"> </span><span class="mi">2</span>
|
|
|
+<span class="n">start</span><span class="w"> </span><span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="p">,</span><span class="w"> </span><span class="n">len</span><span class="o">:</span><span class="w"> </span><span class="mi">1024</span>
|
|
|
+<span class="n">send</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">receive</span><span class="w"> </span><span class="n">over</span>
|
|
|
+<span class="n">serial</span><span class="w"> </span><span class="n">loopback</span><span class="w"> </span><span class="n">test</span><span class="w"> </span><span class="n">success</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_serial</span><span class="p">]</span><span class="w"> </span><span class="n">Unregister</span><span class="w"> </span><span class="n">Serial</span><span class="w"> </span><span class="n">Class</span><span class="o">:</span><span class="w"> </span><span class="o">/</span><span class="n">dev</span><span class="o">/</span><span class="n">ttyACM0</span><span class="w"> </span><span class="p">(</span><span class="n">cdc_acm</span><span class="p">)</span>
|
|
|
+<span class="p">[</span><span class="n">I</span><span class="o">/</span><span class="n">usbh_core</span><span class="p">]</span><span class="w"> </span><span class="n">Device</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">Hub</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">Port</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="n">disconnected</span>
|
|
|
+</pre></div>
|
|
|
+</div>
|
|
|
</section>
|
|
|
|
|
|
|