update readme

This commit is contained in:
sakumisu
2022-06-05 16:45:39 +08:00
parent 2e7a69aeaa
commit cd7c7e3dc7
2 changed files with 15 additions and 9 deletions

View File

@@ -8,9 +8,9 @@ CherryUSB is a tiny, beautiful and portable USB host and device stack for embedd
## Why choose
- Ip-oriented programming, the same usb ip driver does not need to be written repeatedly, only the parts that are not the same need to be implemented
- Code tree writing makes it easier for users to understand usb concept, enumeration process, class driver loading
- Templating the Class driver makes it easier to use composite device and add custom drivers
- Ip-oriented programming means the same usb ip's driver has no need to be written repeatedly, only the parts(such as `usb_xx_low_level_init`including usb clock, usb gpio and usb irq configuration)that are not the same have to be implemented,
- Tree-based coding makes it easier for users to understand usb concept, enumeration process and class driver loading process
- Templating the class drivers makes it easier to use composite device and add custom drivers
- Simplifying the complex transfer of usb makes it easier for users to use usb as easily as uart and dma
- Fewer directory structures, fewer apis, fewer codesize, extreme usb bandwidth
@@ -53,7 +53,6 @@ CherryUSB Device Stack has the following functions
- Support Composite Device
- Support Communication Device Class (CDC)
- Support Human Interface Device (HID)
- Support Custom human Interface Device (HID)
- Support Mass Storage Class (MSC)
- Support USB VIDEO CLASS (UVC1.0、UVC1.5)
- Support USB AUDIO CLASS (UAC1.0、UAC2.0)
@@ -77,7 +76,7 @@ CherryUSB Device Stack resource usage (GCC 10.2 with -O2)
## Host Stack Overview
The CherryUSB Host Stack has a standard enumeration implementation for devices mounted on roothubs and external hubs, and a standard interface for the different Class to indicate what the Class driver needs to do after enumeration and after disconnection. A standard hcd porting interface has also been standardised for adapting different USB IPs for IP-oriented programming. Finally, the protocol stack is managed using os, and provides osal to make a adaptation to different os.
The CherryUSB Host Stack has a standard enumeration implementation for devices mounted on roothubs and external hubs, and a standard interface for different Classes to indicate what the Class driver needs to do after enumeration and after disconnection. A standard hcd porting interface has also been standardised for adapting different USB IPs for IP-oriented programming. Finally, the host stack is managed using os, and provides osal to make a adaptation for different os.
CherryUSB Host Stack has the following functions
@@ -119,4 +118,8 @@ USB basic concepts and how the CherryUSB Device stack is implemented, see [Cherr
|Nuvoton | Nuc442 | nuvoton |[nuc442_repo](https://github.com/sakumisu/CherryUSB/tree/master/demo/nuvoton/usb_device/nuc442)|
|Nordicsemi | Nrf52840 | nrf5x |[nrf5x_repo](https://github.com/CherryUSB/cherryusb_nrf5x)|
|Geehy | APM32E10x APM32F0xx| fsdev |[apm32_repo](https://github.com/CherryUSB/cherryusb_apm32)|
|Mindmotion | MM32L3xx | mm32 |[mm32_repo](https://github.com/CherryUSB/cherryusb_mm32)|
|Mindmotion | MM32L3xx | mm32 |[mm32_repo](https://github.com/CherryUSB/cherryusb_mm32)|
## Contact
QQ group: 642693751

View File

@@ -8,7 +8,7 @@ CherryUSB 是一个小而美的、可移植性高的、用于嵌入式系统(带
## 为什么选择
- 面向 ip 编程,相同 usb ip 驱动无需重复编写,仅需实现不相同的部分
- 面向 ip 编程,使得相同 usb ip 驱动无需重复编写,仅需实现不相同的部分(例如实现 `usb_xx_low_level_init`:包含 usb 时钟、usb gpio、usb 中断)
- 代码树状化编写,轻松理解 usb 概念、枚举过程、class 驱动加载
- Class 驱动模板化,轻松实现复合设备和自定义添加驱动
- 将 usb 的复杂传输简单化,使得用户能够像 uart、dma 一样轻松使用 usb
@@ -52,7 +52,6 @@ CherryUSB Device 协议栈当前实现以下功能:
- 支持复合设备
- 支持 Communication Device Class (CDC)
- 支持 Human Interface Device (HID)
- 支持 Custom human Interface Device (HID)
- 支持 Mass Storage Class (MSC)
- 支持 USB VIDEO CLASS (UVC1.0、UVC1.5)
- 支持 USB AUDIO CLASS (UAC1.0、UAC2.0)
@@ -118,4 +117,8 @@ USB 基本知识点与 CherryUSB Device 协议栈是如何编写的,参考 [Ch
|Nuvoton | Nuc442 | nuvoton |[nuc442_repo](https://github.com/sakumisu/CherryUSB/tree/master/demo/nuvoton/usb_device/nuc442)|
|Nordicsemi | Nrf52840 | nrf5x |[nrf5x_repo](https://github.com/CherryUSB/cherryusb_nrf5x)|
|Geehy | APM32E10x APM32F0xx| fsdev |[apm32_repo](https://github.com/CherryUSB/cherryusb_apm32)|
|Mindmotion | MM32L3xx | mm32 |[mm32_repo](https://github.com/CherryUSB/cherryusb_mm32)|
|Mindmotion | MM32L3xx | mm32 |[mm32_repo](https://github.com/CherryUSB/cherryusb_mm32)|
## Contact
QQ 群:642693751