CH376初始化通訊測試成功后。ACT腳一直輸出為低?為何呢?直接套用樣板并口模擬IO的方式?
你測試命令通過了嗎?ACT#在主機方式下是USB設(shè)備正在連接狀態(tài)輸出,如果你連著U盤ACT引腳一直為低。
s = mInitCH376Host( ); /* 初始化CH376 */ mStopIfError( s ); CH376DiskConnect( ) != USB_INT_SUCCESS 上面兩個函數(shù)都測試通過了。CH376DiskMount( ) == USB_INT_SUCCESS 這個初始化設(shè)備就不能通過。用示波器看INT腳,只有插入USB時瞬間為低電平。初始化不能通過,所以后續(xù)寫讀U盤就讀不行了。感謝ZBbin的回復(fù)。我懷疑U盤有問題,借了2個U盤測試也是這樣。難度芯片問題?
換了個芯片。初始化mInitCH376host()正常。CH376DiskConnect()檢測U盤插入正常。然后進入CH376DiskMount(),每次調(diào)用初始化設(shè)備函數(shù),INT能變低,返回值為0x24.很奇怪,如果是0x14則初始話成功的。如果跳過初始化設(shè)備函數(shù),后面調(diào)用s = CH376FileOpen( "\\123.TXT" );則返回失敗。
后面調(diào)用s = CH376FileOpen( "\\123.TXT" );返回值同樣是0x24. 0x24在CH376.INC文件沒有定義是什么狀態(tài)代碼。通訊測試發(fā)送0x55,讀0xAA是正常的。這應(yīng)該說明接線是沒有問題的。請沁恒FAE能給個建議。我考慮再買幾片IC。也會多借幾個U盤進行測試下。
根據(jù)你的現(xiàn)象,測試命令、磁盤連接應(yīng)該正確通過了,磁盤初始化沒有正確通過,后面打開文件一定要在磁盤初始化成功之后操作才有意義。 你CH376DiskMount返回0X2X一般表示USB通訊出現(xiàn)問題,請檢查USB連線,包括是否在UD+,UD-上串接了電阻電容器件,UD+、UD-有沒有焊反、虛焊?你可以換一個USB口試一下?
非常感謝Zbin的提醒,確實是UD+和UD-搞反,項目趕得急沒有檢查仔細?;ㄙM了幾天時間查找問題。另我只是新建個123.txt文件操作,為何計算機下打開這個文檔里面有個大寫字符I?我并沒有寫TXT操作即退出程序的。
創(chuàng)建文件成功之后我們芯片會寫入一個字節(jié)長度的隨機字符,這是正?,F(xiàn)象,不影響后面的操作。
理解。非常感謝你們的技術(shù)服務(wù)。