unsigned char CH375_InitDisk() { unsigned char status,i,j=0;
status=CH375_Wait_Int(); if(status==USB_INT_DISCONNECT) return 1; /* USB設(shè)備斷開 */ while(1) { CH375_Write_Cmd(CMD_DISK_INIT); /* 初始化USB存儲(chǔ)器 */ status=CH375_Wait_Int(); /* 等待中斷并獲取狀態(tài) */ if(status==USB_INT_SUCCESS) break; }
while(1) //以下代碼均源自沁恒的官方U盤初始化函數(shù),借用它可以提高對(duì)U盤的兼容性! { j++; CH375_Write_Cmd(CMD_DISK_SIZE); /* 獲取USB存儲(chǔ)器的容量 */ status=CH375_Wait_Int(); /* 等待中斷并獲取狀態(tài) */ if(status==USB_INT_SUCCESS) break; else { delay(1000); CH375_Write_Cmd(CMD_DISK_R_SENSE); /* 獲取USB存儲(chǔ)器的容量 */ status=CH375_Wait_Int(); /* 等待中斷并獲取狀態(tài) */ if(status==USB_INT_SUCCESS) /* 出現(xiàn)錯(cuò)誤 */ continue; else return 1; } if(j==5) return 1; } for(i=0;i!=5;i++) { CH375_Write_Cmd( CMD_DISK_READY ); /* 獲取USB存儲(chǔ)器的容量 */ status=CH375_Wait_Int(); /* 等待中斷并獲取狀態(tài) */ if(status==USB_INT_SUCCESS) return 0; /* U盤已經(jīng)成功初始化 */ } return 1; } 檢查過了。INT一直是高電平。ACT也一直是高電平。但是CH357已經(jīng)初始化成功了。。USB也是用5V供電的。