@@ -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
|
||||||
|
|||||||
42
README.md
42
README.md
@@ -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" />
|
|
||||||
|
|||||||
42
README_zh.md
42
README_zh.md
@@ -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" />
|
|
||||||
|
|||||||
2
VERSION
2
VERSION
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
BIN
docs/assets/sifli.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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/BL808:USB2.0 内置 HS phy 芯片,支持主从机。device 支持 5 个端点(包括端点0),不支持双向同时使用。
|
- BL616/BL808:USB2.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 系列芯片
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|||||||
@@ -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 timer,freertos timer会有启动失败的可能性;xTaskCreate 使用 xTaskCreatePinnedToCore 替换,方便多核使用
|
||||||
|
- 主机枚举中,删除描述符溢出相关的 ASSERT 操作,改成返回错误。获取字符串描述符改成支持才获取。2 ms 延时改成 10ms,因为一些 os 使用的是 100hz,会造成延时失效
|
||||||
|
- **dwc2 ep mult 支持,split 传输代码优化,对 split 相关的 cache 处理修改**
|
||||||
|
- **dwc2 halt 中不能清除 USB_OTG_HCCHAR_EPDIR,reset port 中使用超时机制,防止在枚举时由于拔出而造成死等**
|
||||||
|
- 更新 DWC2 中 at32,stm32,kendryte,espressif 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
|
||||||
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user