CH375DiskQuery

請問一下函數(shù)CH375DiskQuery() 是不是有些U盤不能使用該函數(shù);我在使用的時(shí)候,有些U盤會死在 void xQueryInterrupt( void ) /* 查詢中斷狀態(tài),等待硬件中斷 */ { while ( CH375IntStatus == 0 ); /* 子程序庫調(diào)用該子程序之前CH375IntStatus=0,硬件中斷后,由中斷服務(wù)程序置為非0的實(shí)際中斷狀態(tài)后返回 */ } 一直在里面死循環(huán),請問一下,是怎么回事?

有些U盤可以使用該函數(shù),但是讀取速度很慢,要好幾秒鐘才能查到磁盤信息,但是也不是每一次都成功,請問一下,需要怎么樣使用該函數(shù),是不是在使用該函數(shù)之前要調(diào)用其他函數(shù),才能正常操作?

非常的感謝!

另外還想問一個(gè)問題:  今天早上看文檔,說CH375DiskQuery()在FAT32文件系統(tǒng)下,運(yùn)行速度最快,在FAT16下運(yùn)行速度最慢,我的U盤,昨天下午是可以通過這個(gè)函數(shù)讀到磁盤信息,但是常常死掉了,就如我上面的問題所問那樣,我以為可能是要格式化為FAT32,但我把U盤重新格式化為FAT32(U盤大小為64M),結(jié)果發(fā)現(xiàn)這個(gè)函數(shù)返回值一直都是"0X2C",后來就調(diào)用函數(shù)CH375DiskSize( ),結(jié)果返回的也是"0X2C"(用FAT16的時(shí)候,這個(gè)函數(shù)一直超過正常).請問一下貴公司,將U盤格式化為什么樣的文件系統(tǒng)是不是與U盤本身的容量有一定的關(guān)系,因我用同事的256M的U盤,他的是FAT32,操作起來很快,但是有時(shí)候也會死掉,也是死在: void xQueryInterrupt( void ) /* 查詢中斷狀態(tài),等待硬件中斷 */ { while ( CH375IntStatus == 0 ); /* 子程序庫調(diào)用該子程序之前CH375IntStatus=0,硬件中斷后,由中斷服務(wù)程序置為非0的實(shí)際中斷狀態(tài)后返回 */ } 函數(shù)里面出不來! 所以我很想知道,是不是和U盤的型號啊,大小啊,都有關(guān)系?

我現(xiàn)在可以正常的讀出U盤的文件數(shù)據(jù),但是還沒有做寫數(shù)據(jù),正在調(diào)試中^_^. 懇請貴公司能幫我解答以上的疑難問題,非常感謝??!


硬件有點(diǎn)問題,檢查USB之D+/D-以及GND是否串電阻,時(shí)鐘電路干擾以及布線


檢查USB之D+/D-以及GND是否串電阻? 不明白,能否解釋詳細(xì)一點(diǎn)呢?非常感謝


另外.我可以讀出U盤的文件名字,調(diào)用的是函數(shù)ListFile( ); 但是一直操作,并且操作很快的話,就會死掉!是不是也是硬件的問題? 還是本身就有這個(gè)問題?


是指USB口的D+,D-可串了電阻,這個(gè)電阻不能太大(0-5歐姆)


沒有接電阻


可能是硬件問題,方法很簡單,把你的#ACT接個(gè)燈,一般優(yōu)盤插上后就會燈亮,如果在操作的過程中燈熄了就是硬件問題。 我這兒是遇到兩種情況 1.接地不好。我這邊CPU與CH375分開在兩塊板上,老有這問題,后來我把CPU附近的地與電源地一起接到CH375的地上,就穩(wěn)定了。 2.片選信號過長或干擾。

不同的優(yōu)盤,出錯(cuò)的嚴(yán)重程度不一樣,所以有時(shí)會認(rèn)為與容量相關(guān),其實(shí)不是。


我在#ACT上接了指示燈了,操作過程中一直都是亮的啊,表示一直都是連接的嘛!那就不是硬件的問題嗎?


因?yàn)槟阌玫氖枪俜綆欤绻麕煊袉栴}你也說不清,你可以試試自已寫初始化,然后連續(xù)讀扇區(qū)。如果你自己寫的程序能穩(wěn)定讀數(shù)據(jù),而使用庫則不行,說明就是軟件問題了。

你可以看看我以前發(fā)的貼子中的不使用官方庫的初始化,然后自己去讀扇區(qū),這樣就是錯(cuò)也至少知道錯(cuò)在哪兒。

;---------------------------------- 第一部分是針對端點(diǎn)0的,屬于標(biāo)準(zhǔn)部分 1.用CH375發(fā)出DISK_INIT命令(不可以失敗) 2.成功后發(fā)出DISK_MAX_LUN命令(可以返回STALL) 3.等待成功或STALL(有些優(yōu)盤是死活返回STALL的)

第二部分是針對數(shù)據(jù)端點(diǎn)的,已經(jīng)使用了CBW/CSW了. 4.發(fā)出DISK_INQUIRY命令 5.發(fā)出DISK_SIZE 需要注意的是4,5命令可能會失敗,此時(shí)需要調(diào)用DISK_R_SENSE命令來獲取錯(cuò)誤,此時(shí)錯(cuò)誤好象是06,28(磁盤未準(zhǔn)備好),然后重試,直到成功。有些優(yōu)盤必須獲取錯(cuò)誤后才可以繼續(xù)運(yùn)行!

上面5步能完成的話,基本上大部分優(yōu)盤都能過。DISK_READY命令就不需要了。


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

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