docs: release v1.5.2

Signed-off-by: sakumisu <1203593632@qq.com>
This commit is contained in:
sakumisu
2025-08-07 21:11:19 +08:00
parent 5d2a7ca6bc
commit 4d6b12c704
11 changed files with 95 additions and 73 deletions

View File

@@ -465,12 +465,14 @@ if PKG_USING_CHERRYUSB
choice choice
prompt "Version" prompt "Version"
default PKG_USING_CHERRYUSB_V010500 default PKG_USING_CHERRYUSB_V010502
help help
Select the package version Select the package version
config PKG_USING_CHERRYUSB_LATEST_VERSION config PKG_USING_CHERRYUSB_LATEST_VERSION
bool "latest" bool "latest"
config PKG_USING_CHERRYUSB_V010502
bool "v1.5.2"
config PKG_USING_CHERRYUSB_V010501 config PKG_USING_CHERRYUSB_V010501
bool "v1.5.1" bool "v1.5.1"
config PKG_USING_CHERRYUSB_V010500 config PKG_USING_CHERRYUSB_V010500
@@ -488,6 +490,7 @@ if PKG_USING_CHERRYUSB
config PKG_CHERRYUSB_VER config PKG_CHERRYUSB_VER
string string
default "latest" if PKG_USING_CHERRYUSB_LATEST_VERSION default "latest" if PKG_USING_CHERRYUSB_LATEST_VERSION
default "v1.5.2" if PKG_USING_CHERRYUSB_V010502
default "v1.5.1" if PKG_USING_CHERRYUSB_V010501 default "v1.5.1" if PKG_USING_CHERRYUSB_V010501
default "v1.5.0" if PKG_USING_CHERRYUSB_V010500 default "v1.5.0" if PKG_USING_CHERRYUSB_V010500
default "v1.4.3" if PKG_USING_CHERRYUSB_V010403 default "v1.4.3" if PKG_USING_CHERRYUSB_V010403

View File

@@ -105,7 +105,7 @@ CherryUSB Host Stack has the following functions:
- Support blocking transfers and asynchronous transfers - Support blocking transfers and asynchronous transfers
- Support Composite Device - Support Composite Device
- Multi-level HUB support, expandable up to 7 levels(Testing hub with 10 ports works well,only support dwc2/ehci/xhci/rp2040) - Multi-level HUB support, expandable up to 7 levels(Testing hub with 10 ports works well,only support dwc2/ehci/xhci/rp2040)
- Support Communication Device Class (CDC_ACM, CDC_ECM) - Support Communication Device Class (CDC_ACM, CDC_ECM, CDC_NCM)
- Support Human Interface Device (HID) - Support Human Interface Device (HID)
- Support Mass Storage Class (MSC) - Support Mass Storage Class (MSC)
- Support USB Video CLASS (UVC1.0, UVC1.5) - Support USB Video CLASS (UVC1.0, UVC1.5)
@@ -143,7 +143,7 @@ Among them, `sizeof(struct usbh_hub)` and `sizeof(struct usbh_hubport)` are affe
#define CONFIG_USBHOST_MAX_EXTHUBS 1 #define CONFIG_USBHOST_MAX_EXTHUBS 1
#define CONFIG_USBHOST_MAX_EHPORTS 4 #define CONFIG_USBHOST_MAX_EHPORTS 4
#define CONFIG_USBHOST_MAX_INTERFACES 8 #define CONFIG_USBHOST_MAX_INTERFACES 8
#define CONFIG_USBHOST_MAX_INTF_ALTSETTINGS 8 #define CONFIG_USBHOST_MAX_INTF_ALTSETTINGS 2
#define CONFIG_USBHOST_MAX_ENDPOINTS 4 #define CONFIG_USBHOST_MAX_ENDPOINTS 4
``` ```
@@ -189,24 +189,25 @@ TODO
## Demo Repo ## Demo Repo
| Manufacturer | CHIP or Series | USB IP| Repo Url | Support version | Support status | | Manufacturer | CHIP or Series | USB IP| Repo Url | Support version | Note |
|:--------------------:|:------------------:|:-----:|:--------:|:------------------:|:-------------:| |:--------------------:|:------------------:|:-----:|:--------:|:------------------:|:-------------:|
|Bouffalolab | BL702/BL616/BL808 | bouffalolab/ehci|[bouffalo_sdk](https://github.com/CherryUSB/bouffalo_sdk)|<= latest | Long-term | |Bouffalolab | BL702/BL616/BL808 | bouffalolab/ehci|[bouffalo_sdk](https://github.com/CherryUSB/bouffalo_sdk)|<= latest | Official |
|ST | STM32F1x/STM32F4/STM32H7 | fsdev/dwc2 |[stm32_repo](https://github.com/CherryUSB/cherryusb_stm32)|<= latest | Long-term | |ST | STM32F1x/STM32F4/STM32H7 | fsdev/dwc2 |[stm32_repo](https://github.com/CherryUSB/cherryusb_stm32)|<= latest | Community |
|HPMicro | HPM6000/HPM5000 | hpm/ehci |[hpm_sdk](https://github.com/CherryUSB/hpm_sdk)|<= latest | Long-term | |HPMicro | HPM6000/HPM5000 | hpm/ehci |[hpm_sdk](https://github.com/CherryUSB/hpm_sdk)|<= latest | Official |
|Essemi | ES32F36xx | musb |[es32f369_repo](https://github.com/CherryUSB/cherryusb_es32)|<= latest | Long-term | |Essemi | ES32F36xx | musb |[es32f369_repo](https://github.com/CherryUSB/cherryusb_es32)|<= latest | Official |
|Phytium | e2000 | pusb2/xhci |[phytium_repo](https://gitee.com/phytium_embedded/phytium-free-rtos-sdk)|>=1.4.0 | Long-term | |Phytium | e2000 | pusb2/xhci |[phytium_repo](https://gitee.com/phytium_embedded/phytium-free-rtos-sdk)|>=1.4.0 | Official |
|Artinchip | d12x/d13x/d21x | aic/ehci/ohci |[luban-lite](https://gitee.com/artinchip/luban-lite)|<= latest | Long-term | |Artinchip | d12x/d13x/d21x | aic/ehci/ohci |[luban-lite](https://gitee.com/artinchip/luban-lite)|<= latest | Official |
|Espressif | esp32s2/esp32s3/esp32p4 | dwc2 |[esp32_repo](https://github.com/CherryUSB/cherryusb_esp32)|<= latest | Long-term | |Espressif | esp32s2/esp32s3/esp32p4 | dwc2 |[esp32_repo](https://github.com/CherryUSB/cherryusb_esp32)|<= latest | Official ongoing |
|NXP | mcx | kinetis/chipidea/ehci |[nxp_mcx_repo](https://github.com/CherryUSB/cherryusb_mcx)|<= latest | Long-term | |Kendryte | k230 | dwc2 |[k230_repo](https://github.com/CherryUSB/k230_sdk)|v1.2.0 | Official |
|Kendryte | k230 | dwc2 |[k230_repo](https://github.com/CherryUSB/k230_sdk)|v1.2.0 | Long-term | |Actionstech | ATS30xx | dwc2 |[action_zephyr_repo](https://github.com/CherryUSB/lv_port_actions_technology/tree/master/action_technology_sdk)|>=1.4.0 | Official |
|Actionstech | ATS30xx | dwc2 |[action_zephyr_repo](https://github.com/CherryUSB/lv_port_actions_technology/tree/master/action_technology_sdk)|>=1.4.0 | Long-term | |SiFli | SF32LB5x | musb |[SiFli_sdk](https://github.com/OpenSiFli/SiFli-SDK)|>=1.5.0 | Official |
|Nationstech | n32h4x | dwc2 |[nation_repo](https://github.com/CherryUSB/cherryusb_nation)|>=1.5.0 | Long-term | |NXP | mcx | kinetis/chipidea/ehci |[nxp_mcx_repo](https://github.com/CherryUSB/cherryusb_mcx)|<= latest | Community |
|Raspberry pi | rp2040/rp2350 | rp2040 |[pico-examples](https://github.com/CherryUSB/pico-examples)|<= latest | Long-term | |Nationstech | n32h4x | dwc2 |[nation_repo](https://github.com/CherryUSB/cherryusb_nation)|>=1.5.0 | Official ongoing |
|AllwinnerTech | F1C100S/F1C200S | musb |[cherryusb_rtt_f1c100s](https://github.com/CherryUSB/cherryusb_rtt_f1c100s)|<= latest | the same with musb | |Raspberry pi | rp2040/rp2350 | rp2040 |[pico-sdk](https://github.com/CherryUSB/pico-sdk)|<= latest | Official ongoing |
|Bekencorp | bk7256/bk7258 | musb |[bk_idk](https://github.com/CherryUSB/bk_idk)| v0.7.0 | the same with musb | |AllwinnerTech | F1C100S/F1C200S | musb |[cherryusb_rtt_f1c100s](https://github.com/CherryUSB/cherryusb_rtt_f1c100s)|<= latest | no more update |
|Sophgo | cv18xx | dwc2 |[cvi_alios_open](https://github.com/CherryUSB/cvi_alios_open)| v0.7.0 | TBD | |Bekencorp | bk7256/bk7258 | musb |[bk_idk](https://github.com/CherryUSB/bk_idk)| v0.7.0 | Official |
|WCH | CH32V307/ch58x | ch32_usbfs/ch32_usbhs/ch58x |[wch_repo](https://github.com/CherryUSB/cherryusb_wch)|<= v0.10.2/>=v1.5.0 | TBD | |Sophgo | cv18xx | dwc2 |[cvi_alios_open](https://github.com/CherryUSB/cvi_alios_open)| v0.7.0 | Official |
|WCH | CH32V307/ch58x | ch32_usbfs/ch32_usbhs/ch58x |[wch_repo](https://github.com/CherryUSB/cherryusb_wch)|<= v0.10.2/>=v1.5.0 | no more update |
## Package Support ## Package Support
@@ -228,5 +229,4 @@ CherryUSB discord: https://discord.com/invite/wFfvrSAey8.
Thanks to the following companies for their support (in no particular order): Thanks to the following companies for their support (in no particular order):
<img src="docs/assets/bouffalolab.jpg" width="100" height="80"/> <img src="docs/assets/hpmicro.jpg" width="100" height="80" /> <img src="docs/assets/eastsoft.jpg" width="100" height="80" /> <img src="docs/assets/rtthread.jpg" width="100" height="80" /> <img src="docs/assets/sophgo.jpg" width="100" height="80" /> <img src="docs/assets/phytium.jpg" width="100" height="80" /> <img src="docs/assets/thead.jpg" width="100" height="80" /> <img src="docs/assets/nuvoton.jpg" width="100" height="80" /> <img src="docs/assets/artinchip.jpg" width="100" height="80" /> <img src="docs/assets/bekencorp.jpg" width="100" height="80" /> <img src="docs/assets/nxp.png" width="100" height="80" /> <img src="docs/assets/espressif.png" width="100" height="80" /> <img src="docs/assets/canaan.jpg" width="100" height="80" /> <img src="docs/assets/bouffalolab.jpg" width="100" height="80"/> <img src="docs/assets/hpmicro.jpg" width="100" height="80" /> <img src="docs/assets/eastsoft.jpg" width="100" height="80" /> <img src="docs/assets/rtthread.jpg" width="100" height="80" /> <img src="docs/assets/sophgo.jpg" width="100" height="80" /> <img src="docs/assets/phytium.jpg" width="100" height="80" /> <img src="docs/assets/thead.jpg" width="100" height="80" /> <img src="docs/assets/nuvoton.jpg" width="100" height="80" /> <img src="docs/assets/artinchip.jpg" width="100" height="80" /> <img src="docs/assets/bekencorp.jpg" width="100" height="80" /> <img src="docs/assets/nxp.png" width="100" height="80" /> <img src="docs/assets/espressif.png" width="100" height="80" /> <img src="docs/assets/canaan.jpg" width="100" height="80" /> <img src="docs/assets/actions.jpg" width="100" height="80" /> <img src="docs/assets/sifli.jpg" width="100" height="80" /> <img src="docs/assets/nationstech.jpg" width="100" height="80" />
<img src="docs/assets/actions.jpg" width="100" height="80" /> <img src="docs/assets/nationstech.jpg" width="100" height="80" />

View File

@@ -105,7 +105,7 @@ CherryUSB Host 协议栈当前实现以下功能:
- 支持阻塞式传输和异步传输 - 支持阻塞式传输和异步传输
- 支持复合设备 - 支持复合设备
- 支持多级 HUB最高可拓展到 7 级(目前测试 1拖 10 没有问题,仅支持 dwc2/ehci/xhci/rp2040) - 支持多级 HUB最高可拓展到 7 级(目前测试 1拖 10 没有问题,仅支持 dwc2/ehci/xhci/rp2040)
- 支持 Communication Device Class (CDC_ACM, CDC_ECM) - 支持 Communication Device Class (CDC_ACM, CDC_ECM, CDC_NCM)
- 支持 Human Interface Device (HID) - 支持 Human Interface Device (HID)
- 支持 Mass Storage Class (MSC) - 支持 Mass Storage Class (MSC)
- Support USB Video CLASS (UVC1.0、UVC1.5) - Support USB Video CLASS (UVC1.0、UVC1.5)
@@ -143,7 +143,7 @@ CherryUSB Host 协议栈资源占用说明GCC 10.2 with -O2关闭 log
#define CONFIG_USBHOST_MAX_EXTHUBS 1 #define CONFIG_USBHOST_MAX_EXTHUBS 1
#define CONFIG_USBHOST_MAX_EHPORTS 4 #define CONFIG_USBHOST_MAX_EHPORTS 4
#define CONFIG_USBHOST_MAX_INTERFACES 8 #define CONFIG_USBHOST_MAX_INTERFACES 8
#define CONFIG_USBHOST_MAX_INTF_ALTSETTINGS 8 #define CONFIG_USBHOST_MAX_INTF_ALTSETTINGS 2
#define CONFIG_USBHOST_MAX_ENDPOINTS 4 #define CONFIG_USBHOST_MAX_ENDPOINTS 4
``` ```
@@ -189,24 +189,25 @@ TODO
## 示例仓库 ## 示例仓库
| Manufacturer | CHIP or Series | USB IP| Repo Url | Support version | Support status | | Manufacturer | CHIP or Series | USB IP| Repo Url | Support version | Note |
|:--------------------:|:------------------:|:-----:|:--------:|:------------------:|:-------------:| |:--------------------:|:------------------:|:-----:|:--------:|:------------------:|:-------------:|
|Bouffalolab | BL702/BL616/BL808 | bouffalolab/ehci|[bouffalo_sdk](https://github.com/CherryUSB/bouffalo_sdk)|<= latest | Long-term | |Bouffalolab | BL702/BL616/BL808 | bouffalolab/ehci|[bouffalo_sdk](https://github.com/CherryUSB/bouffalo_sdk)|<= latest | Official |
|ST | STM32F1x/STM32F4/STM32H7 | fsdev/dwc2 |[stm32_repo](https://github.com/CherryUSB/cherryusb_stm32)|<= latest | Long-term | |ST | STM32F1x/STM32F4/STM32H7 | fsdev/dwc2 |[stm32_repo](https://github.com/CherryUSB/cherryusb_stm32)|<= latest | Community |
|HPMicro | HPM6000/HPM5000 | hpm/ehci |[hpm_sdk](https://github.com/CherryUSB/hpm_sdk)|<= latest | Long-term | |HPMicro | HPM6000/HPM5000 | hpm/ehci |[hpm_sdk](https://github.com/CherryUSB/hpm_sdk)|<= latest | Official |
|Essemi | ES32F36xx | musb |[es32f369_repo](https://github.com/CherryUSB/cherryusb_es32)|<= latest | Long-term | |Essemi | ES32F36xx | musb |[es32f369_repo](https://github.com/CherryUSB/cherryusb_es32)|<= latest | Official |
|Phytium | e2000 | pusb2/xhci |[phytium_repo](https://gitee.com/phytium_embedded/phytium-free-rtos-sdk)|>=1.4.0 | Long-term | |Phytium | e2000 | pusb2/xhci |[phytium_repo](https://gitee.com/phytium_embedded/phytium-free-rtos-sdk)|>=1.4.0 | Official |
|Artinchip | d12x/d13x/d21x | aic/ehci/ohci |[luban-lite](https://gitee.com/artinchip/luban-lite)|<= latest | Long-term | |Artinchip | d12x/d13x/d21x | aic/ehci/ohci |[luban-lite](https://gitee.com/artinchip/luban-lite)|<= latest | Official |
|Espressif | esp32s2/esp32s3/esp32p4 | dwc2 |[esp32_repo](https://github.com/CherryUSB/cherryusb_esp32)|<= latest | Long-term | |Espressif | esp32s2/esp32s3/esp32p4 | dwc2 |[esp32_repo](https://github.com/CherryUSB/cherryusb_esp32)|<= latest | Official ongoing |
|NXP | mcx | kinetis/chipidea/ehci |[nxp_mcx_repo](https://github.com/CherryUSB/cherryusb_mcx)|<= latest | Long-term | |Kendryte | k230 | dwc2 |[k230_repo](https://github.com/CherryUSB/k230_sdk)|v1.2.0 | Official |
|Kendryte | k230 | dwc2 |[k230_repo](https://github.com/CherryUSB/k230_sdk)|v1.2.0 | Long-term | |Actionstech | ATS30xx | dwc2 |[action_zephyr_repo](https://github.com/CherryUSB/lv_port_actions_technology/tree/master/action_technology_sdk)|>=1.4.0 | Official |
|Actionstech | ATS30xx | dwc2 |[action_zephyr_repo](https://github.com/CherryUSB/lv_port_actions_technology/tree/master/action_technology_sdk)|>=1.4.0 | Long-term | |SiFli | SF32LB5x | musb |[SiFli_sdk](https://github.com/OpenSiFli/SiFli-SDK)|>=1.5.0 | Official |
|Nationstech | n32h4x | dwc2 |[nation_repo](https://github.com/CherryUSB/cherryusb_nation)|>=1.5.0 | Long-term | |NXP | mcx | kinetis/chipidea/ehci |[nxp_mcx_repo](https://github.com/CherryUSB/cherryusb_mcx)|<= latest | Community |
|Raspberry pi | rp2040/rp2350 | rp2040 |[pico-examples](https://github.com/CherryUSB/pico-examples)|<= latest | Long-term | |Nationstech | n32h4x | dwc2 |[nation_repo](https://github.com/CherryUSB/cherryusb_nation)|>=1.5.0 | Official ongoing |
|AllwinnerTech | F1C100S/F1C200S | musb |[cherryusb_rtt_f1c100s](https://github.com/CherryUSB/cherryusb_rtt_f1c100s)|<= latest | the same with musb | |Raspberry pi | rp2040/rp2350 | rp2040 |[pico-sdk](https://github.com/CherryUSB/pico-sdk)|<= latest | Official ongoing |
|Bekencorp | bk7256/bk7258 | musb |[bk_idk](https://github.com/CherryUSB/bk_idk)| v0.7.0 | the same with musb | |AllwinnerTech | F1C100S/F1C200S | musb |[cherryusb_rtt_f1c100s](https://github.com/CherryUSB/cherryusb_rtt_f1c100s)|<= latest | no more update |
|Sophgo | cv18xx | dwc2 |[cvi_alios_open](https://github.com/CherryUSB/cvi_alios_open)| v0.7.0 | TBD | |Bekencorp | bk7256/bk7258 | musb |[bk_idk](https://github.com/CherryUSB/bk_idk)| v0.7.0 | Official |
|WCH | CH32V307/ch58x | ch32_usbfs/ch32_usbhs/ch58x |[wch_repo](https://github.com/CherryUSB/cherryusb_wch)|<= v0.10.2/>=v1.5.0 | TBD | |Sophgo | cv18xx | dwc2 |[cvi_alios_open](https://github.com/CherryUSB/cvi_alios_open)| v0.7.0 | Official |
|WCH | CH32V307/ch58x | ch32_usbfs/ch32_usbhs/ch58x |[wch_repo](https://github.com/CherryUSB/cherryusb_wch)|<= v0.10.2/>=v1.5.0 | no more update |
## 软件包支持 ## 软件包支持
@@ -230,5 +231,4 @@ CherryUSB 微信群:与我联系后邀请加入
感谢以下企业支持(顺序不分先后): 感谢以下企业支持(顺序不分先后):
<img src="docs/assets/bouffalolab.jpg" width="100" height="80"/> <img src="docs/assets/hpmicro.jpg" width="100" height="80" /> <img src="docs/assets/eastsoft.jpg" width="100" height="80" /> <img src="docs/assets/rtthread.jpg" width="100" height="80" /> <img src="docs/assets/sophgo.jpg" width="100" height="80" /> <img src="docs/assets/phytium.jpg" width="100" height="80" /> <img src="docs/assets/thead.jpg" width="100" height="80" /> <img src="docs/assets/nuvoton.jpg" width="100" height="80" /> <img src="docs/assets/artinchip.jpg" width="100" height="80" /> <img src="docs/assets/bekencorp.jpg" width="100" height="80" /> <img src="docs/assets/nxp.png" width="100" height="80" /> <img src="docs/assets/espressif.png" width="100" height="80" /> <img src="docs/assets/canaan.jpg" width="100" height="80" /> <img src="docs/assets/bouffalolab.jpg" width="100" height="80"/> <img src="docs/assets/hpmicro.jpg" width="100" height="80" /> <img src="docs/assets/eastsoft.jpg" width="100" height="80" /> <img src="docs/assets/rtthread.jpg" width="100" height="80" /> <img src="docs/assets/sophgo.jpg" width="100" height="80" /> <img src="docs/assets/phytium.jpg" width="100" height="80" /> <img src="docs/assets/thead.jpg" width="100" height="80" /> <img src="docs/assets/nuvoton.jpg" width="100" height="80" /> <img src="docs/assets/artinchip.jpg" width="100" height="80" /> <img src="docs/assets/bekencorp.jpg" width="100" height="80" /> <img src="docs/assets/nxp.png" width="100" height="80" /> <img src="docs/assets/espressif.png" width="100" height="80" /> <img src="docs/assets/canaan.jpg" width="100" height="80" /> <img src="docs/assets/actions.jpg" width="100" height="80" /> <img src="docs/assets/sifli.jpg" width="100" height="80" /> <img src="docs/assets/nationstech.jpg" width="100" height="80" />
<img src="docs/assets/actions.jpg" width="100" height="80" /> <img src="docs/assets/nationstech.jpg" width="100" height="80" />

View File

@@ -1,5 +1,5 @@
VERSION_MAJOR = 1 VERSION_MAJOR = 1
VERSION_MINOR = 5 VERSION_MINOR = 5
PATCHLEVEL = 1 PATCHLEVEL = 2
VERSION_TWEAK = 0 VERSION_TWEAK = 0
EXTRAVERSION = 0 EXTRAVERSION = 0

View File

@@ -15,7 +15,7 @@
#define USB_ERR_RANGE 7 #define USB_ERR_RANGE 7
#define USB_ERR_STALL 8 #define USB_ERR_STALL 8
#define USB_ERR_BABBLE 9 #define USB_ERR_BABBLE 9
#define USB_ERR_NAK 10 #define USB_ERR_NAK 10 /* only for dwc2 buffer dma mode */
#define USB_ERR_DT 11 #define USB_ERR_DT 11
#define USB_ERR_IO 12 #define USB_ERR_IO 12
#define USB_ERR_SHUTDOWN 13 #define USB_ERR_SHUTDOWN 13

View File

@@ -15,7 +15,7 @@
#undef CHERRYUSB_VERSION_STR #undef CHERRYUSB_VERSION_STR
#endif #endif
#define CHERRYUSB_VERSION 0x010501 #define CHERRYUSB_VERSION 0x010502
#define CHERRYUSB_VERSION_STR "v1.5.1" #define CHERRYUSB_VERSION_STR "v1.5.2"
#endif #endif

BIN
docs/assets/sifli.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -6,8 +6,8 @@ project = 'CherryUSB'
copyright = '2022 ~ 2025, sakumisu' copyright = '2022 ~ 2025, sakumisu'
author = 'sakumisu' author = 'sakumisu'
release = '1.5.1' release = '1.5.2'
version = '1.5.1' version = '1.5.2'
# -- General configuration # -- General configuration

View File

@@ -4,24 +4,24 @@
在学习 USB 或者是学习 CherryUSB 代码之前,我们需要先基于现有的 demo 进行快速验证,为什么?是为了提升对 USB 的兴趣,能有信心进行下一步的动作,如果 demo 都跑不起来,或者自己摸索写代码,或者先看 USB 基本概念,结果看到最后, 在学习 USB 或者是学习 CherryUSB 代码之前,我们需要先基于现有的 demo 进行快速验证,为什么?是为了提升对 USB 的兴趣,能有信心进行下一步的动作,如果 demo 都跑不起来,或者自己摸索写代码,或者先看 USB 基本概念,结果看到最后,
发现一点都看不懂,概念好多,根本记不住,从而丧失对 USB 的兴趣。因此,先跑 demo 非常重要。下面我将给大家罗列目前支持的 demo 仓库。 发现一点都看不懂,概念好多,根本记不住,从而丧失对 USB 的兴趣。因此,先跑 demo 非常重要。下面我将给大家罗列目前支持的 demo 仓库。
基于 bouffalolab 系列芯片 基于 bouffalolab 系列芯片(官方 SDK 支持)
--------------------------- ------------------------------------------
仓库参考https://github.com/CherryUSB/cherryusb_bouffalolab 仓库参考https://github.com/CherryUSB/cherryusb_bouffalolab
- BL616/BL808USB2.0 内置 HS phy 芯片支持主从机。device 支持 5 个端点包括端点0不支持双向同时使用。 - BL616/BL808USB2.0 内置 HS phy 芯片支持主从机。device 支持 5 个端点包括端点0不支持双向同时使用。
- USB 的相关应用位于 `examples/usbdev``examples/usbhost` 目录下,根据官方环境搭建完成后,即可编译使用。 - USB 的相关应用位于 `examples/usbdev``examples/usbhost` 目录下,根据官方环境搭建完成后,即可编译使用。
基于 HPMicro 系列芯片 基于 HPMicro 系列芯片(官方 SDK 支持)
--------------------------- -----------------------------------------------------
仓库参考https://github.com/CherryUSB/cherryusb_hpmicro 仓库参考https://github.com/CherryUSB/cherryusb_hpmicro
- HPM 系列: USB2.0 内置 HS phy 芯片支持主从机。device 支持 8/16 端点包括端点0并且可以同时使用双向不同芯片个数有差异。 - HPM 系列: USB2.0 内置 HS phy 芯片支持主从机。device 支持 8/16 端点包括端点0并且可以同时使用双向不同芯片个数有差异。
- USB 的相关应用位于 `samples/cherryusb` ,根据官方环境搭建完成后,即可编译使用。 - USB 的相关应用位于 `samples/cherryusb` ,根据官方环境搭建完成后,即可编译使用。
基于 esp32s2/s3/p4 系列芯片 基于 esp32s2/s3/p4 系列芯片(官方 SDK 即将支持)
--------------------------- -------------------------------------------------
仓库参考https://github.com/CherryUSB/cherryusb_esp32 仓库参考https://github.com/CherryUSB/cherryusb_esp32
@@ -29,21 +29,35 @@
- esp32p4一个 USB2.0 内置全速 PHY 芯片,一个 USB2.0 内置高速 PHY 芯片,支持主从机。 - esp32p4一个 USB2.0 内置全速 PHY 芯片,一个 USB2.0 内置高速 PHY 芯片,支持主从机。
- 默认 demo 采用组件库安装的形式,在 https://components.espressif.com/ 中搜索 cherryusb 即可 - 默认 demo 采用组件库安装的形式,在 https://components.espressif.com/ 中搜索 cherryusb 即可
基于飞腾派系列芯片 基于飞腾派系列芯片(官方 SDK 支持)
--------------------------- -----------------------------------
仓库参考https://gitee.com/phytium_embedded/phytium-free-rtos-sdk 仓库参考https://gitee.com/phytium_embedded/phytium-free-rtos-sdk
- 飞腾派支持两个 USB3.0 主机(采用 XHCI 两个 USB2.0 主从机 - 飞腾派支持两个 USB3.0 主机(采用 XHCI 两个 USB2.0 主从机
- USB 的相关应用位于 `example/peripheral/usb` ,根据官方环境搭建完成后,即可编译使用。 - USB 的相关应用位于 `example/peripheral/usb` ,根据官方环境搭建完成后,即可编译使用。
基于 Essemi 系列芯片 基于 Essemi 系列芯片(官方 SDK 支持)
--------------------------- -----------------------------------------
仓库参考https://github.com/CherryUSB/cherryusb_es32 仓库参考https://github.com/CherryUSB/cherryusb_es32
- 支持全速和高速主从机。device 支持 6 个端点包括端点0并且可以同时使用双向。 - 支持全速和高速主从机。device 支持 6 个端点包括端点0并且可以同时使用双向。
基于 Artinchip 系列芯片(官方 SDK 支持)
-----------------------------------------------
仓库参考https://gitee.com/artinchip/luban-lite
- 支持全速和高速主从机,主机采用 EHCI + OHCI。device 支持 8 个端点包括端点0并且可以同时使用双向。
基于 canmv-k230 芯片(官方 SDK 支持)
---------------------------------------------
仓库参考https://github.com/CherryUSB/k230_sdk
- K230: 两个 USB2.0 内置 HS PHY 芯片支持主从机。device 支持 16 个端点包括端点0并且可以同时使用双向。
基于 NXP MCX系列芯片 基于 NXP MCX系列芯片
--------------------------- ---------------------------
@@ -51,19 +65,10 @@
- 支持全速 IP 和高速 IP 高速 IP 支持主机和从机。device 支持 8 个端点包括端点0并且可以同时使用双向。 - 支持全速 IP 和高速 IP 高速 IP 支持主机和从机。device 支持 8 个端点包括端点0并且可以同时使用双向。
基于 Artinchip 系列芯片 基于 RP2040/RP2035 芯片(官方 SDK 即将支持)
--------------------------- --------------------------------------------
仓库参考https://gitee.com/artinchip/luban-lite 仓库参考: https://github.com/CherryUSB/pico-examples 和 https://github.com/CherryUSB/pico-sdk
- 支持全速和高速主从机,主机采用 EHCI + OHCI。device 支持 8 个端点包括端点0并且可以同时使用双向。
基于 canmv-k230 芯片
---------------------------
仓库参考https://github.com/CherryUSB/k230_sdk
- K230: 两个 USB2.0 内置 HS PHY 芯片支持主从机。device 支持 16 个端点包括端点0并且可以同时使用双向。
基于 ST 系列芯片 基于 ST 系列芯片
--------------------------- ---------------------------

View File

@@ -134,4 +134,18 @@ v1.5.1
- **dwc2 增加多个 usbport 不同参数的配置功能比如一个全速一个高速fifo配置和phy配置不同** - **dwc2 增加多个 usbport 不同参数的配置功能比如一个全速一个高速fifo配置和phy配置不同**
- **ehci 在控制传输中如果没有 nodata 阶段会导致 data qtd 未释放,导致内存泄漏** - **ehci 在控制传输中如果没有 nodata 阶段会导致 data qtd 未释放,导致内存泄漏**
- **dwc2 读取 setup 使用 usbd_get_next_ep0_state 去判断,避免 setup 和 ep0 out 使用在 USB_OTG_DOEPINT_XFRC 状态下冲突** - **dwc2 读取 setup 使用 usbd_get_next_ep0_state 去判断,避免 setup 和 ep0 out 使用在 USB_OTG_DOEPINT_XFRC 状态下冲突**
- sifli usb device 初步支持 - sifli usb device 初步支持
v1.5.2
----------------------
- 对 1.5.1 下 rt-thread 组件的一些 bugfix
- idf timer osal 替换为 esp timerfreertos timer会有启动失败的可能性xTaskCreate 使用 xTaskCreatePinnedToCore 替换,方便多核使用
- 主机枚举中,删除描述符溢出相关的 ASSERT 操作改成返回错误。获取字符串描述符改成支持才获取。2 ms 延时改成 10ms因为一些 os 使用的是 100hz会造成延时失效
- **dwc2 ep mult 支持split 传输代码优化,对 split 相关的 cache 处理修改**
- **dwc2 halt 中不能清除 USB_OTG_HCCHAR_EPDIRreset port 中使用超时机制,防止在枚举时由于拔出而造成死等**
- 更新 DWC2 中 at32stm32kendryteespressif glue 代码
- musb 对于标准的 IP 结构采用独立 EP 控制寄存器组,不使用 EPIDX 寄存器去控制
- 删除所有 CONFIG_USBDEV_EP_NUM & CONFIG_USBHOST_PIPE_NUM不再使用因为 IP 本身会携带这些信息,或者厂家 SDK 提供了对应的宏
- CONFIG_USBHOST_MAX_INTF_ALTSETTINGS 默认使用 2 减少内存,只有 UVC 和UAC 使用(商业收费),所以不需要开很大
- urb interval 从 u8 改 u32最大支持 2^15 * 125us

View File

@@ -1,4 +1,4 @@
version: "1.5.1" version: "1.5.2"
description: CherryUSB is a tiny and portable USB Stack (device & host) for embedded system with USB IP description: CherryUSB is a tiny and portable USB Stack (device & host) for embedded system with USB IP
tags: tags:
- usb - usb