Deploying to gh-pages from @ cherry-embedded/CherryUSB@5d5b61a606 🚀

This commit is contained in:
Egahp
2025-08-30 11:24:27 +00:00
parent 51a6407460
commit 2c9eb9baba
9 changed files with 13 additions and 11 deletions

View File

@@ -126,10 +126,11 @@ usbh_initialize
.. code-block:: C
int usbh_initialize(uint8_t busid, uint32_t reg_base);
int usbh_initialize(uint8_t busid, uint32_t reg_base, usbh_event_handler_t event_handler);
- **busid** bus id从 0开始不能超过 `CONFIG_USBHOST_MAX_BUS`
- **reg_base** hcd 寄存器基地址
- **event_handler** host 事件回调函数可以为NULL
- **return** 0 表示正常其他表示错误
usbh_find_class_instance

View File

@@ -203,7 +203,7 @@ USB Host 移植要点
- 链接脚本修改参考 :ref:`usbh_link_script` 章节
- 如果芯片带 cachecache 修改参考 :ref:`usb_cache` 章节
- 调用 `usbh_initialize` 并填入 `busid` 和 USB IP 的 `reg base` `busid` 从 0 开始,不能超过 `CONFIG_USBHOST_MAX_BUS`
- 调用 `usbh_initialize` 并填入 `busid` 和 USB IP 的 `reg base` 还有 `event_handler` 可缺省为NULL `busid` 从 0 开始,不能超过 `CONFIG_USBHOST_MAX_BUS`
- 启动线程
.. figure:: img/stm32_18.png

View File

@@ -56,7 +56,7 @@
* USB IP 相关的 config 需要用户自己根据芯片实际情况修改
* 在代码中实现 `usb_hc_low_level_init` 函数
* 在 USB 中断函数中调用 `USBH_IRQHandler`,并传入 `busid`
* 调用 `usbh_initialize` 并填入 `busid` 和 USB IP 的 `reg base` `busid` 从 0 开始,不能超过 `CONFIG_USBHOST_MAX_BUS`
* 调用 `usbh_initialize` 并填入 `busid` 和 USB IP 的 `reg base` 还有 `event_handler` 可缺省为NULL `busid` 从 0 开始,不能超过 `CONFIG_USBHOST_MAX_BUS`
* 使用 `scons --target=mdk5` 或者 `scons` 进行编译如果是mdk需要使用 AC6 编译器
* 链接脚本修改参考 :ref:`usbh_link_script` 章节
* 如果芯片带 cachecache 修改参考 :ref:`usb_cache` 章节

View File

@@ -19,11 +19,11 @@ USB Host 移植要点
- 拷贝 CherryUSB 源码到工程目录下,并按需添加源文件和头文件路径,头文件路径建议全部添加。其中 `usbh_core.c` 、 `usb_hc_xxx.c` 以及 **osal** 目录下源文件(根据不同的 os 选择对应的源文件)为必须添加项。而 `usb_hc_xxx.c` 是芯片所对应的 USB IP hcd 部分驱动,如果不知道自己芯片属于那个 USB IP参考 **port** 目录下的不同 USB IP 的 readme。如果使用的 USB IP 没有支持,只能自己实现了
- 拷贝 `cherryusb_config_template.h` 文件到自己工程目录下,命名为 `usb_config.h`,并添加相应的目录头文件路径
- 实现 `usb_hc_low_level_init` 函数(该函数主要负责 USB 时钟、引脚、中断的初始化)。该函数可以放在你想要放的任何参与编译的 c 文件中。如何进行 USB 的时钟、引脚、中断等初始化,请自行根据你使用的芯片原厂提供的源码中进行添加。
- 调用 `usbh_initialize` 并填入 `busid` 和 USB IP 的 `reg base` `busid` 从 0 开始,不能超过 `CONFIG_USBHOST_MAX_BUS`
- 调用 `usbh_initialize` 并填入 `busid` 和 USB IP 的 `reg base` 还有 `event_handler` 可缺省为NULL `busid` 从 0 开始,不能超过 `CONFIG_USBHOST_MAX_BUS`
- 在中断函数中调用 `USBH_IRQHandler`,并传入 `busid`, 如果你的 SDK 中中断入口已经存在 `USBH_IRQHandler` ,请更改 USB 协议栈中的名称
- 链接脚本修改参考 :ref:`usbh_link_script` 章节
- 如果芯片带 cachecache 修改参考 :ref:`usb_cache` 章节
- 调用 `usbh_initialize` ,填入 `busid` 和 USB IP 的 `reg base` `busid` 从 0 开始,不能超过 `CONFIG_USBHOST_MAX_BUS` 。基础的 cdc + hid + msc 参考 `usb_host.c` 文件,其余参考 **platform** 目录下适配
- 调用 `usbh_initialize` ,填入 `busid` 和 USB IP 的 `reg base` 还有 `event_handler` 可缺省为NULL `busid` 从 0 开始,不能超过 `CONFIG_USBHOST_MAX_BUS` 。基础的 cdc + hid + msc 参考 `usb_host.c` 文件,其余参考 **platform** 目录下适配
.. _usbh_link_script:

View File

@@ -293,12 +293,13 @@
<section id="usbh-initialize">
<h3>usbh_initialize<a class="headerlink" href="#usbh-initialize" title="Link to this heading"></a></h3>
<p><code class="docutils literal notranslate"><span class="pre">usbh_initialize</span></code> 用来初始化 usb 主机协议栈,包括:初始化 usb 主机控制器,创建 roothub 设备,创建 hub 检测线程。</p>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span><span class="w"> </span><span class="nf">usbh_initialize</span><span class="p">(</span><span class="kt">uint8_t</span><span class="w"> </span><span class="n">busid</span><span class="p">,</span><span class="w"> </span><span class="kt">uint32_t</span><span class="w"> </span><span class="n">reg_base</span><span class="p">);</span>
<div class="highlight-C notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span><span class="w"> </span><span class="nf">usbh_initialize</span><span class="p">(</span><span class="kt">uint8_t</span><span class="w"> </span><span class="n">busid</span><span class="p">,</span><span class="w"> </span><span class="kt">uint32_t</span><span class="w"> </span><span class="n">reg_base</span><span class="p">,</span><span class="w"> </span><span class="n">usbh_event_handler_t</span><span class="w"> </span><span class="n">event_handler</span><span class="p">);</span>
</pre></div>
</div>
<ul class="simple">
<li><p><strong>busid</strong> bus id从 0开始不能超过 <cite>CONFIG_USBHOST_MAX_BUS</cite></p></li>
<li><p><strong>reg_base</strong> hcd 寄存器基地址</p></li>
<li><p><strong>event_handler</strong> host 事件回调函数可以为NULL</p></li>
<li><p><strong>return</strong> 0 表示正常其他表示错误</p></li>
</ul>
</section>

View File

@@ -413,7 +413,7 @@
<ul class="simple">
<li><p>链接脚本修改参考 <a class="reference internal" href="transplant.html#usbh-link-script"><span class="std std-ref">主机链接脚本修改</span></a> 章节</p></li>
<li><p>如果芯片带 cachecache 修改参考 <a class="reference internal" href="transplant.html#usb-cache"><span class="std std-ref">cache 配置修改</span></a> 章节</p></li>
<li><p>调用 <cite>usbh_initialize</cite> 并填入 <cite>busid</cite> 和 USB IP 的 <cite>reg base</cite> <cite>busid</cite> 从 0 开始,不能超过 <cite>CONFIG_USBHOST_MAX_BUS</cite></p></li>
<li><p>调用 <cite>usbh_initialize</cite> 并填入 <cite>busid</cite> 和 USB IP 的 <cite>reg base</cite> 还有 <cite>event_handler</cite> 可缺省为NULL <cite>busid</cite> 从 0 开始,不能超过 <cite>CONFIG_USBHOST_MAX_BUS</cite></p></li>
<li><p>启动线程</p></li>
</ul>
<figure class="align-default">

View File

@@ -225,7 +225,7 @@
<li><p>USB IP 相关的 config 需要用户自己根据芯片实际情况修改</p></li>
<li><p>在代码中实现 <cite>usb_hc_low_level_init</cite> 函数</p></li>
<li><p>在 USB 中断函数中调用 <cite>USBH_IRQHandler</cite>,并传入 <cite>busid</cite></p></li>
<li><p>调用 <cite>usbh_initialize</cite> 并填入 <cite>busid</cite> 和 USB IP 的 <cite>reg base</cite> <cite>busid</cite> 从 0 开始,不能超过 <cite>CONFIG_USBHOST_MAX_BUS</cite></p></li>
<li><p>调用 <cite>usbh_initialize</cite> 并填入 <cite>busid</cite> 和 USB IP 的 <cite>reg base</cite> 还有 <cite>event_handler</cite> 可缺省为NULL <cite>busid</cite> 从 0 开始,不能超过 <cite>CONFIG_USBHOST_MAX_BUS</cite></p></li>
<li><p>使用 <cite>scons target=mdk5</cite> 或者 <cite>scons</cite> 进行编译如果是mdk需要使用 AC6 编译器</p></li>
<li><p>链接脚本修改参考 <a class="reference internal" href="transplant.html#usbh-link-script"><span class="std std-ref">主机链接脚本修改</span></a> 章节</p></li>
<li><p>如果芯片带 cachecache 修改参考 <a class="reference internal" href="transplant.html#usb-cache"><span class="std std-ref">cache 配置修改</span></a> 章节</p></li>

View File

@@ -183,11 +183,11 @@
<li><p>拷贝 CherryUSB 源码到工程目录下,并按需添加源文件和头文件路径,头文件路径建议全部添加。其中 <cite>usbh_core.c</cite><cite>usb_hc_xxx.c</cite> 以及 <strong>osal</strong> 目录下源文件(根据不同的 os 选择对应的源文件)为必须添加项。而 <cite>usb_hc_xxx.c</cite> 是芯片所对应的 USB IP hcd 部分驱动,如果不知道自己芯片属于那个 USB IP参考 <strong>port</strong> 目录下的不同 USB IP 的 readme。如果使用的 USB IP 没有支持,只能自己实现了</p></li>
<li><p>拷贝 <cite>cherryusb_config_template.h</cite> 文件到自己工程目录下,命名为 <cite>usb_config.h</cite>,并添加相应的目录头文件路径</p></li>
<li><p>实现 <cite>usb_hc_low_level_init</cite> 函数(该函数主要负责 USB 时钟、引脚、中断的初始化)。该函数可以放在你想要放的任何参与编译的 c 文件中。如何进行 USB 的时钟、引脚、中断等初始化,请自行根据你使用的芯片原厂提供的源码中进行添加。</p></li>
<li><p>调用 <cite>usbh_initialize</cite> 并填入 <cite>busid</cite> 和 USB IP 的 <cite>reg base</cite> <cite>busid</cite> 从 0 开始,不能超过 <cite>CONFIG_USBHOST_MAX_BUS</cite></p></li>
<li><p>调用 <cite>usbh_initialize</cite> 并填入 <cite>busid</cite> 和 USB IP 的 <cite>reg base</cite> 还有 <cite>event_handler</cite> 可缺省为NULL <cite>busid</cite> 从 0 开始,不能超过 <cite>CONFIG_USBHOST_MAX_BUS</cite></p></li>
<li><p>在中断函数中调用 <cite>USBH_IRQHandler</cite>,并传入 <cite>busid</cite>, 如果你的 SDK 中中断入口已经存在 <cite>USBH_IRQHandler</cite> ,请更改 USB 协议栈中的名称</p></li>
<li><p>链接脚本修改参考 <a class="reference internal" href="#usbh-link-script"><span class="std std-ref">主机链接脚本修改</span></a> 章节</p></li>
<li><p>如果芯片带 cachecache 修改参考 <a class="reference internal" href="#usb-cache"><span class="std std-ref">cache 配置修改</span></a> 章节</p></li>
<li><p>调用 <cite>usbh_initialize</cite> ,填入 <cite>busid</cite> 和 USB IP 的 <cite>reg base</cite> <cite>busid</cite> 从 0 开始,不能超过 <cite>CONFIG_USBHOST_MAX_BUS</cite> 。基础的 cdc + hid + msc 参考 <cite>usb_host.c</cite> 文件,其余参考 <strong>platform</strong> 目录下适配</p></li>
<li><p>调用 <cite>usbh_initialize</cite> ,填入 <cite>busid</cite> 和 USB IP 的 <cite>reg base</cite> 还有 <cite>event_handler</cite> 可缺省为NULL <cite>busid</cite> 从 0 开始,不能超过 <cite>CONFIG_USBHOST_MAX_BUS</cite> 。基础的 cdc + hid + msc 参考 <cite>usb_host.c</cite> 文件,其余参考 <strong>platform</strong> 目录下适配</p></li>
</ul>
</section>
<section id="usbh-link-script">

File diff suppressed because one or more lines are too long