CH32V307 USBHS復(fù)合設(shè)備中CDC可以枚舉,但無法正常使用

芯片具體型號(hào)為CH32V307WCU6。

我枚舉了兩個(gè)設(shè)備,一個(gè)U盤,一個(gè)CDC,均參考的是EVT里的例程。

U盤使用的是端點(diǎn)2和3,功能正常沒有問題。

CDC使用的端點(diǎn)4中斷傳輸,端點(diǎn)5批量輸入和輸出。


目前的情況是PC上(WIN11)設(shè)備管理器能夠枚舉出COM口,且沒有提示有問題。但使用SSCOM5發(fā)數(shù)據(jù)會(huì)顯示:

串口號(hào)故障!自動(dòng)修復(fù)中...

關(guān)閉串口...

打開串口...


有一個(gè)很在意但我無法解決的現(xiàn)象,Debug的時(shí)候USBHS的中斷里。TOKEN事務(wù),端點(diǎn)0的波特率設(shè)置能夠正常觸發(fā),U盤的2,3端點(diǎn)也能正常觸發(fā),但CDC使用的端點(diǎn)4IN和5IN,5OUT從來沒有被觸發(fā)過。


請(qǐng)問下這個(gè)情況應(yīng)該如何解決,謝謝!


您好,根據(jù)您的描述,CDC設(shè)備枚舉是成功的,收發(fā)數(shù)據(jù)異常的原因建議排查如下:

1、CH32V307設(shè)備,端點(diǎn)描述符中的批量傳輸端點(diǎn)描述及其初始化是否正確,以例程中為例為以下幾處;

image.png

image.png


2、USB中斷中是否有添加對(duì)于批量端點(diǎn)IN事務(wù)或OUT事務(wù)的處理;

image.pngimage.png

image.png


3、設(shè)備在枚舉成功后,嘗試通過批量端點(diǎn)上傳數(shù)據(jù),用抓包工具抓取USB總線上的數(shù)據(jù),再具體分析異常原因;


排查建議的1和2已經(jīng)多次確認(rèn)過,因該問題不大。

我用抓包工具看過了,用手上的WHC_LINKE串口做為對(duì)比,觀察到確實(shí)是TOKEN事務(wù)沒進(jìn)中斷。

會(huì)不會(huì)和freertos有關(guān),如果我不啟動(dòng)任務(wù)調(diào)度器的話,USB設(shè)備就無法被識(shí)別。啟動(dòng)了U盤就能正常使用。

看來和OS無關(guān),我重建了個(gè)工程,現(xiàn)象是一樣的。



您好,TOKEN事務(wù)的判斷在傳輸完成中斷下,檢查一下傳輸完成中斷在USB初始化時(shí)是否成功使能呢?

image.png

image.png

后續(xù)可將問題現(xiàn)象的具體描述郵箱聯(lián)系至liuy@wch.cn


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频