cherry-embedded / CherryUSB

CherryUSB is a tiny, beautiful and portable USB host and device stack for embedded system with USB IP
https://cherryusb.cherry-embedded.org
Apache License 2.0
1.29k stars 274 forks source link

关于USB转换芯片MAX3421E的协议栈移植问题 #40

Closed AnemosCiel closed 2 years ago

AnemosCiel commented 2 years ago
由于使用的芯片没有USB主机功能,增加了一个美信的MAX3421E芯片,将SPI转USB,但是该芯片不提供协议栈,只有基础的驱动程序。MAX3421E的寄存器和通常的MCU USB IP寄存器不一样,不知道能否移植这个协议栈使用?
看了下这个协议栈的移植例程,似乎是需要自己实现usb_dc_xxx层的驱动,为usbh_core.c提供接口函数,那么是否可以在usb_dc_xxx中直接对MAX3421E驱动的USB传输函数进行二次封装,而不实现寄存器映射表?
如果能提供一些建议,将不胜感激!
sakumisu commented 2 years ago

MAX3421E 这种的,使用 spi 驱动,所以不需要什么寄存器映射表,只需要封装好spi层面的就可以了 ,提供基本的初始化、控制传输、其他传输的收发就行了,已经插拔的检测功能就可以了

AnemosCiel commented 2 years ago

好的,非常感谢!