我用的是LPC2378處理器,使用方式大致如下圖:
LPC2378---------(SPI)-------CH374----------U盤
我參照的例子是CH374LIB.ZIP下的EXAM/HOSTDISK目錄,對U盤進行初始化和物理扇區(qū)讀寫。
可運行中出現(xiàn)了一個問題:就是每當(dāng)跑到"獲取設(shè)備描述符"的時候不能返回USB_INT_SUCCESS,直接等待U盤拔出!
通過示波器可以看到SPI接口正常的波形, 在程序中對CH374的寄存器也能正常操作,應(yīng)該可以確認SPI連接、初始化都是正確的。咨詢貴公司的技術(shù)人員,說可能是延時函數(shù)問題,盡量保證微秒、毫秒延時函數(shù)跟真正的微秒、毫秒接近。 今天我用示波器通過波形觀察糾正了微秒、毫秒延時函數(shù),保證微秒、毫秒延時函數(shù)跟真正的微秒、毫秒十分接近了,代碼如下??墒沁€是出現(xiàn)無法獲取設(shè)備描述符,請問還有可能是什么原因呢?為什么老是運行不過去呢?
#if 1 while(1) { //高電平保持1毫秒,低電平保持2毫秒 IO0CLR |= SPI_SCS; //低電平 IO0SET |= SPI_SCS; //高電平 mDelaymS(1); //延時1毫秒 IO0CLR |= SPI_SCS; //低電平 mDelaymS(2); //延時2毫秒 } #endif