#defineSRV_FMGR_CARD_DRVFS_GetDrive(FS_DRIVE_V_REMOVABLE,1,FS_NO_ALT_DRIVE)下面使用下面函数都可以实现检测T卡
我先使用FS_GetDevStatus和FS_GetDrive来实现。
statickal_int8my_get_removeable_driver(void){/*----------------------------------------------------------------*//*LocalVariables*//*----------------------------------------------------------------*/kal_int8drive;/*----------------------------------------------------------------*//*CodeBody*//*----------------------------------------------------------------*/if(FS_GetDevStatus((unsignedint)FS_GetDrive(FS_DRIVE_V_REMOVABLE,1,FS_NO_ALT_DRIVE),FS_MOUNT_STATE_ENUM)==FS_NO_ERROR){drive=(kal_int8)FS_GetDrive(FS_DRIVE_V_REMOVABLE,1,FS_NO_ALT_DRIVE);if((drive>='A')&&(drive<='Z')){returndrive;}}return(kal_int8)0;}当检测到有T卡返回其盘号,反之返回0.
也可以使用现成的函数
srv_fmgr_drv_has_accessible_removable_drvsrv_fmgr_drv_is_accessible(SRV_FMGR_CARD_DRV)
获取系统可用的存储设备盘符S32MsgCmd_GetUsableDrive(void){S32drive=SRV_FMGR_CARD_DRV;if(!srv_fmgr_drv_is_accessible(drive)){drive=SRV_FMGR_PUBLIC_DRV;}returndrive;}