兄弟們幫忙看下V307怎么IN數(shù)據(jù)?OUT可以了,IN沒反應(yīng)!

帖子在:ch320v307代碼有bug嗎,高速給的是全速的描述符? - 沁恒微電子社區(qū) (wch.cn)


目前bulk傳輸?shù)睦樱? 5 是 out,4 6 是in,1是in 和 out。

現(xiàn)在用bus hound可以測到 1 3 的out都沒問題。然后再點(diǎn)1 in 或者 4 in就掛住了!

請問這樣測試有沒問題,為啥會掛住呢?

GIF:

http://www.findthetime.net/uploads/file/20230331/1680235437155104.rar

我找到原因了,用的是HSI,并且初始化時:

void?USBHS_RCC_Init(?void?)
{
????//?選擇48m時鐘來源,用的是?PHY,?bit31?=?USBHS?SRC
????RCC_USBCLK48MConfig(?RCC_USBCLK48MCLKSource_USBPHY?);

????//?bit27?PLL?SRC?=?PLL參考源為?HSI
????RCC_USBHSPLLCLKConfig(?RCC_HSBHSPLLCLKSource_HSE?/*?改為hsi?就不行,為什么??*/?);

????//?bit24?HSDIV,?PLL參考源分頻,因為參考源是?HSI=8MHz,所以?PLL?=?8/2=4MHz
????RCC_USBHSConfig(?RCC_USBPLL_Div2?);

????//?bit28~29?那么參考源時鐘就是?4MHz
????RCC_USBHSPLLCKREFCLKConfig(?RCC_USBHSPLLCKREFCLK_4M?);
????RCC_USBHSPHYPLLALIVEcmd(?ENABLE?);
????RCC_AHBPeriphClockCmd(?RCC_AHBPeriph_USBHS,?ENABLE?);
}
把?RCC_HSBHSPLLCLKSource_HSE?改成?RCC_HSBHSPLLCLKSource_HSI?就不行,為什么?

我時鐘已經(jīng)是HSI 144MHz,而且都能out,為啥in不行???


沒人回復(fù),是否可以確認(rèn),HSI不能用于USB通信了?


你好,隨著數(shù)據(jù)長度的增加,對時鐘精度的要求越高,正常條件下,64字節(jié)的長度用HSI是可以的,修改HSI校準(zhǔn)值等操作,可以提高到兩三百字節(jié),但是USB建議使用HSE做參考源,更穩(wěn)定


使用USB高速時,USB時鐘只能用HSE。

image.png



附CH32V307寄存器手冊:http://www.findthetime.net/downloads/CH32FV2x_V3xRM_PDF.html


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

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