Devices and Volumes
If the return error code is
FS_ERR_DEV_NOT_PRESENT ,
FS_ERR_DEV_IO
or
FS_ERR_DEV_TIMEOUT , the device is either not present or did not respond. This is an
important consideration for removable devices. It is still registered with the file system
suite, and the file system will attempt to re-open the device each time the application
accesses it.
If any other error code is returned, the device is not registered with the file system. The
developer should examine the error code to determine the source of the error.
5-3 USING REMOVABLE DEVICES
μC/FS expects that any call to a function that accesses a removable device may fail, since
the device may be removed, powered off or suddenly unresponsive. If μC/FS detects such
an event, the device will need to be refreshed or closed and re-opened. FSDev_Refresh()
refreshes a device:
chngd = FSDev_Refresh((CPU_CHAR *)“ide:0:”,
(FS_ERR *)&err);
<-- (b) device name
<-- (c) return error
There are several cases to consider:
If the return error is FS_ERR_NONE and the return value (a) is DEF_YES , then a new
device (e.g., SD card) has been inserted. All files and directories that are open on
volumes on the device must be closed and all volumes that are open on the device
must be closed or refreshed.
If the return error is FS_ERR_NONE and the return value (a) is DEF_NO , then the same
device (e.g., SD card) is still inserted. The application can continue to access open files,
directories and volumes.
If the return error is neither FS_ERR_NONE nor FS_ERR_DEV_INVALID_LOW_FMT , then no
functioning device is present. The device must be refreshed at a later time.
A device can be refreshed explicitly with FSDev_Refresh() ; however, refresh also happens
automatically. If a volume access (e.g., FSVol_Fmt() , FSVol_Rd() ) , entry access
( FSEntry_Create() , fs_remove() ), file open ( fs_fopen() or FSFile_Open() ) or
71
相关PDF资料
AD-UCOS3-SPRD PRD LIC UCOS3 RTOS CORE CCES SGL
AD-UCUSBD-SPRD PRD LIC UCUSB DEV CORE CCES SGL
AD637-EVALZ BOARD EVALUATION FOR AD637
AD736-EVALZ BOARD EVALUATION FOR AD736
AD737-EVALZ BOARD EVALUATION FOR AD737
AD8007AKS-EBZ BOARD EVAL FOR AD8007AKS
AD8018ARU-EVAL BOARD EVAL FOR AD8018
AD8034ART-EBZ BOARD EVAL FOR AD8034ART
相关代理商/技术参数
ADuC-H7020 功能描述:开发板和工具包 - ARM HDR BRD FOR ADUC7020 ARM7 RoHS:否 制造商:Arduino 产品:Development Boards 工具用于评估:ATSAM3X8EA-AU 核心:ARM Cortex M3 接口类型:DAC, ICSP, JTAG, UART, USB 工作电源电压:3.3 V
ADuC-IO7020 功能描述:开发板和工具包 - ARM DEV BRD FOR ADUC7020 ARM7 RoHS:否 制造商:Arduino 产品:Development Boards 工具用于评估:ATSAM3X8EA-AU 核心:ARM Cortex M3 接口类型:DAC, ICSP, JTAG, UART, USB 工作电源电压:3.3 V
ADUCM3027BCBZ-R7 功能描述:LOWPWR CORTEXM3W/128KKEMBEDDED F 制造商:analog devices inc. 系列:* 零件状态:在售 标准包装:1,500
ADUCM3027BCBZ-RL 功能描述:LOWPWR CORTEXM3W/128KKEMBEDDED F 制造商:analog devices inc. 系列:* 零件状态:在售 标准包装:5,000
ADUCM3027BCPZ 功能描述:IC MCU 32BIT 128KB FLASH 64LFCSP 制造商:analog devices inc. 系列:ADuCM 包装:托盘 零件状态:在售 核心处理器:ARM? Cortex?-M3 核心尺寸:32-位 速度:26MHz 连接性:I2C,SPI,UART/USART 外设:DMA,POR,PWM,WDT I/O 数:44 程序存储容量:128KB(128K x 8) 程序存储器类型:闪存 EEPROM 容量:- RAM 容量:96K x 8 电压 - 电源(Vcc/Vdd):1.74 V ~ 3.6 V 数据转换器:A/D 8x12b 振荡器类型:内部 工作温度:-40°C ~ 85°C(TA) 封装/外壳:64-WFQFN 裸露焊盘 供应商器件封装:64-LFCSP(9x9) 标准包装:1
ADUCM3027BCPZ-R7 功能描述:IC MCU 32BIT 128KB FLASH 64LFCSP 制造商:analog devices inc. 系列:ADuCM 包装:剪切带(CT) 零件状态:在售 核心处理器:ARM? Cortex?-M3 核心尺寸:32-位 速度:26MHz 连接性:I2C,SPI,UART/USART 外设:DMA,POR,PWM,WDT I/O 数:44 程序存储容量:128KB(128K x 8) 程序存储器类型:闪存 EEPROM 容量:- RAM 容量:96K x 8 电压 - 电源(Vcc/Vdd):1.74 V ~ 3.6 V 数据转换器:A/D 8x12b 振荡器类型:内部 工作温度:-40°C ~ 85°C(TA) 封装/外壳:64-WFQFN 裸露焊盘 供应商器件封装:64-LFCSP(9x9) 标准包装:1
ADUCM3027BCPZ-RL 功能描述:IC MCU 32BIT 128KB FLASH 64LFCSP 制造商:analog devices inc. 系列:ADuCM 包装:带卷(TR) 零件状态:在售 核心处理器:ARM? Cortex?-M3 核心尺寸:32-位 速度:26MHz 连接性:I2C,SPI,UART/USART 外设:DMA,POR,PWM,WDT I/O 数:44 程序存储容量:128KB(128K x 8) 程序存储器类型:闪存 EEPROM 容量:- RAM 容量:96K x 8 电压 - 电源(Vcc/Vdd):1.74 V ~ 3.6 V 数据转换器:A/D 8x12b 振荡器类型:内部 工作温度:-40°C ~ 85°C(TA) 封装/外壳:64-WFQFN 裸露焊盘 供应商器件封装:64-LFCSP(9x9) 标准包装:2,500
ADUCM3029BCBZ-R7 功能描述:LOWPWR CORTEX M3W/256KEMBEDDED F 制造商:analog devices inc. 系列:* 零件状态:在售 标准包装:1,500