请问CH335F可否做成16口HUB?

我目前想做一个带端口检测的15口USB HUB烧录器,因为目标芯片usb烧录了之后,没有指令下发复位跑cos的功能,所以想自己做一个,而且要带有短路检测,查了一下,感觉CH335F可能满足需要(因为好像只有335F带有独立电源控制和过流LED),我的想法是这样的:

第一个335的4口下行接4块335F芯片,这样就有16口了.

末端的某个335F的下行,我接一个CH32V,用CH32V的30个通用IO口连接控制HUB的15个电源控制引脚和15个工作指示灯LED引脚。

当我插入USB设备到其他的15口中某个口烧录完固件之后,电脑控制CH32V下发对应USB口的断电上电指令,然后电脑等待刚烧的cos跑起来给反馈。

不知道我这个想法对不对,大佬给帮忙看看。


您好, 级联使用是可以,配合多个CH217即可实现


根据我查阅的资料,经典设计应当是CH217的EN连接CH335F的PWREN#。

那么请问,如果我要通过上位机去控制每一个USB口的上下电,是不是MCU的GPIO直接连接CH217的EN#口?而CH335F的PWREN#悬空?

还是说,依然PWREN#连CH217的EN#,但是要并上MCU的IO口?


335相连是自动控制,如果你要自己控制电源开关,那么过流检测和使能都只连你的MCU IO即可


那么按照您的意思的话。

  1. 如果需要使用9灯应用,依然可以用335F和217直连。

  2. 335的PWREN#和217的EN#连接MCU的IO1和IO2,IO2输入检测高低之后,把结果直接传送给IO1输出。

  3. 然后如果上位机需要干预的话,就直接下发指令控制IO1高低即可实现。


我这么理解对吗?



控制电源的是217,你要自己做控制,MCU IO连接217


ch335是个好片子。但是有一下几个地方要注意


如果配置为bus powered又不用外接EEPROM,那描述符里只有200mA。如果是Linux的话下级设备描述符里电流之和大于200mA会拒绝启动,需要强制启动。


电源控制是个好功能,完全无需接mcu控制。直接电脑控制很方便。但是需要注意该功能在Windows上不能用,微软没有开放发送电源控制的接口。如果你的上位机是mac或者linux,这个项目很好用的。https://github.com/mvp/uhubctl


只有登录才能回复,可以选择微信账号登录