求助,ch32v307 freertos+udisk結(jié)合對(duì)里面文件復(fù)制粘貼或者刪除時(shí)出錯(cuò)

使用CH32V307的開(kāi)發(fā)板,將freertos例程和USBHS設(shè)備模式的MSC-U-DISK例程結(jié)合,目的是類似將sdio方式的emmc變成u盤(pán)的功能,目前可以在freertos下將其變成u盤(pán)打開(kāi)看到里面的文件,插拔多次都能識(shí)別到usb設(shè)備,但對(duì)里面文件進(jìn)行復(fù)制粘貼和刪除操作時(shí),會(huì)卡住很久,然后就識(shí)別不到u盤(pán),顯示無(wú)法識(shí)別到usb設(shè)備。再重新插入時(shí)就無(wú)法識(shí)別了。

請(qǐng)問(wèn)是中斷方面需要怎么調(diào)整嗎,或者有相關(guān)的例子嗎

您好,注意程序中若用到延時(shí),延時(shí)函數(shù)要換成FreeRTOS下的延時(shí)函數(shù),調(diào)用vTaskDelay延時(shí)函數(shù)。關(guān)于中斷的話,USB中斷優(yōu)先級(jí)一般默認(rèn)是最高的??梢钥匆幌轮袛嗦暶鞣绞?,根據(jù)mstatus寄存器的值進(jìn)行聲明,采用軟件壓棧或者硬件壓棧聲明方式。暫時(shí)沒(méi)有相關(guān)例程,若方便,可將例程發(fā)我郵箱(lzs@wch.cn)具體看一下。


碰到了同樣的問(wèn)題,移植USB+EMMC+DISK到FREERTOS中。USB MSC正常枚舉,但寫(xiě)入或者讀取的時(shí)候會(huì)卡在對(duì)應(yīng)的讀寫(xiě)函數(shù)中,TIMEOUT變量被置位了,在等待對(duì)應(yīng)的寫(xiě)入讀取完成標(biāo)志位,可是一直都沒(méi)有進(jìn)入對(duì)應(yīng)的SDIO中斷。

我用了USB+SD+DISK的工程移植到FREERTOS中,也是同樣的問(wèn)題。

理論上來(lái)說(shuō),F(xiàn)REERTOS模版中使用了Systick定時(shí)器作為基準(zhǔn)定時(shí)器,其他地方就不能在用這個(gè)定時(shí)器了,但對(duì)應(yīng)的代碼中我也沒(méi)有看到有延時(shí)函數(shù)。直接就卡死在了USB中斷->SDIO操作->讀/寫(xiě)函數(shù)中了。感覺(jué)是SDIO中斷回調(diào)出現(xiàn)了問(wèn)題,可以幫忙查一下問(wèn)題嗎?

而且似乎官網(wǎng)給出的EMMC例子中,非DMA模式,流模式也有問(wèn)題,使用流模式直接無(wú)法進(jìn)行USBMSC的枚舉。


問(wèn)問(wèn)各位技術(shù)大佬,這個(gè)DMA或者說(shuō)SD操作不返回標(biāo)志位的問(wèn)題,有比較好的解決方法嗎? 一般都是什么問(wèn)題導(dǎo)致的呀,EMMC中甚至連輪詢模式也不行。


我插入電腦,首次格式化都不成功0.0。更別說(shuō)進(jìn)行文件復(fù)制粘貼了,哎


感覺(jué)CH30x系列的SDIO支持會(huì)比EMMC好, EMMC可能維護(hù)的人不是很多, 使用的人也不是很多. 但是DMA庫(kù)有問(wèn)題好像真的不知道如何解決了哈哈..?


今天仔細(xì)debug了一下, DMA2傳輸完成之后,理論上SDIO要進(jìn)入中斷,回復(fù)一下CMD24命令, 但SDIO的狀態(tài) STA->CMDACT一直置位, 正在傳輸命令, 感覺(jué)是IP里面狀態(tài)沒(méi)改過(guò)來(lái), 剩下的也不知道怎么查了....


目前我也依然沒(méi)調(diào)通,一步步的看似沒(méi)得啥問(wèn)題。更深一點(diǎn),看不懂。我用的是V305,最奇怪的是,使用fatfs文件系統(tǒng)后,掛載正常,但只要有f_open這一句代碼,編譯的時(shí)候,flash占用直接超出最大限度,由本來(lái)30KB變?yōu)?00多KB,完全找不到方向。還在等他們技術(shù)的回復(fù),幫忙看看是什么原因


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

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