你好,
我想用CH552做一个声卡和键盘复合设备。我把端点1设置为Isochronous Output ,端点2设置为Interrupt Input。于是遇到一个奇怪的问题:
当CH552直接插电脑(Win10台式机,INTEL和M1 Macbook Pro)的USB口,声卡无输出时,总线正常对端点2做PID IN请求,CH552也能正常输出NAK。但是声卡一旦输出,总线就不会做PID IN请求,每帧里就只有声卡的Isochronous传输。与此同时,主机的HID驱动因为得不到数据,会反复对USB BUS发RESET,也就造成声音断断续续。
但是,如果CH552和主机之间隔着个HUB,就没问题。我测试了Terminus FE1.1和Realtek RTS5411都可以。
下面付了USB信号的截图。第一张是直接插电脑的图,只有Isochronous传输。
第二张是经过USB HUB的图,Isochronous开始后125us,Interrupt传输开始。虽然SOF还是1ms间隔,但是似乎USB HUB插了微帧给CH552用。
请问CH552是否有可能让isochronous endpoint和interrupt endpoint在直接插电脑的情况下也能共存?