初始化成功; 接著就枚舉文件 strcpy(PathName,"\\HB\\*" );//HB目錄下的文件* s = CH376FileOpenPath( (UINT8*)PathName ); /* 枚舉HB多級目錄下的文件或者目錄,輸入緩沖區(qū)必須在RAM中 */ U盤里有HB目錄,里面有文件, 但是s返回值是0xfa;不知道什么問題? 版主幫幫忙??!
你直接打開"\\HB\\"下面的某一個文件可以打開嗎?返回0XFA多數(shù)是未產(chǎn)生中斷,建議你看下CH376在等待中斷函數(shù)的超時去掉在測試下。
static void Disp_Disk_Status(INT8U status) { INT32U UDCapSize,UDFreSize;//U盤容量、剩余空間,單位:M UDCapSize =0; UDFreSize =0; /*獲得U盤的容量大小*/ if( (status&0x01)==0x00 )//U盤連接好 { /* 查詢磁盤物理容量,扇區(qū)數(shù) */ if(CH376DiskCapacity( &UDCapSize)==USB_INT_SUCCESS) { UDCapSize =UDCapSize *512/1024/1024; } /* 查詢磁盤剩余空間信息,扇區(qū)數(shù) */ if(CH376DiskQuery( &UDFreSize )==USB_INT_SUCCESS) { UDFreSize =UDFreSize *512/1024/1024; } //printf("磁盤物理容量%d\r\n",UDCapSize); //printf("磁盤剩余容量%d\r\n",UDFreSize); lcd_disp_string(320,4,"檢測到U盤......",LCD_RED,LCD_BLUE); //disp_long(100+12*8,460,UDFreSize); } else { lcd_disp_string(320,4,"沒檢測到U盤....",LCD_RED,LCD_BLUE); } delay_ms(1000);//添加了延時1秒鐘 } 添加了延時1秒鐘 就可以了
你需要發(fā)送DISK-MOUNT命令,等待這個命令成功之后才能進(jìn)行下面的步驟。