FAT-filsystem

Inbäddat FAT12-, FAT16- och FAT32-filsystem

FAT-filsystemet (FAT FS) gör det enkelt och snabbt för inbäddade utvecklare att integrera sina system med andra ledande system och möjliggör interoperabilitet med MS-DOS/Windows-kompatibla filsystem. Zeeis FAT-filsystem kan köras perfekt på olika operativsystem och även på icke-ROST-system. Systemet har hög effektivitet, hög hastighet och låg minnesanvändning, och kan köras med minimal RAM och ROM.

Översikt av FAT-filsystemet

Fram till 2008 har över 25 miljoner enheter använt Zeeis FAT-filsystem och det är ledande inom konsumentelektronik och lagringsapplikationer globalt.

Det inbäddade FAT-filsystemet är ett säkert, pålitligt och fullständigt funktionellt FAT12/16/32 och VFAT (långa filnamn) filsystem. Det stöder plattformar som MCU, CPU, DPS med mera. Det är en källkodsprodukt skriven specifikt för inbäddade enheter för att läsa kompatibla persondatorlagringsmedier, och stöder fasta och mobila lagringsmedier som SD-kort, SDHC-kort, MMC-kort, CF-kort, ATA/IDE-hårddiskar, SATA-hårddiskar, USB-minnen, NAND-flashminnen med mera.

Källkoden för det inbäddade FAT-filsystemet är helt skriven i standard ANSI C. Den har genomgått omfattande tester och kan användas med de flesta utvecklingsverktyg inklusive: ARM STD, ARM ADS, ARM RVDS, GNU GCC, Keil, Visual C++ med flera.

Funktioner hos FAT-filsystemet

  • Stödjer standard FAT-filsystem inklusive: FAT12, FAT16, FAT32 och VFAT (långa filnamn)
  • Fullt kompatibelt med MS-DOS/Windows FAT-filsystem
  • Kan användas med olika processorer och operativsystem
  • Källkoden är helt skriven i ANSI C för att säkerställa portabilitet
  • Optimerat för MCUs/DSPs för att säkerställa prestanda och stabilitet
  • RAM- och ROM-användning är mycket flexibel beroende på konfiguration
  • Mycket lågt resursbehov: Lätt version <1KB RAM / 4KB ROM, standardversion <2K RAM / 10K ROM
  • Kompatibelt med POSIX-gränssnitt (fopen(), fread(), fwrite(), fclose(), etc.)
  • Kan formatera och skapa partitioner
  • Felhantering under körning
  • Omfattande källkods-kommentarer och utvecklingsdokumentation
  • Exempelprogram och enhetsdrivrutiner
  • Ett års gratis teknisk support
  • Ett års gratis uppgraderingar
  • Endast en engångslicensavgift krävs

Stödda lagringsmedier

  • Secure Digital Cards: SD, SDHC, microSD, microSDHC
  • CompactFlash
  • MultiMediaCard (MMC)
  • USB
  • SATA
  • ATA/IDE
  • PCMCIA
  • NAND Flash
  • NOR Flash
  • DataFlash

FAT-filsystemets API

FS_mount: Monterar en enhet för det inbäddade FAT-filsystemet och skapar buffertar.

FS_unmount: Frigör alla resurser för det inbäddade FAT-filsystemet.

FS_format: Formaterar en enhet.

FS_size: Hämtar information om enhetens och FAT-filsystemets utrymme.

FS_mkdir: Skapar en mapp (katalog).

FS_chdir: Ändrar den aktuella mappen.

FS_rmdir: Tar bort en tom mapp.

FS_getCWD: Returnerar sökvägen till den aktuella mappen.

FS_opendir: Öppnar en mapp.

FS_closedir: Stänger en mapp.

FS_readdir: Läser en katalog.

FS_remove: Tar bort en fil via den angivna sökvägen.

FS_length: Returnerar storleken på en fil.

FS_fopen: Öppnar en fil.

FS_fread: Läser data via ett handtag.

FS_fwrite: Skriver data via ett handtag.

FS_fflush: Rensar ett handtag.

FS_fclose: Stänger en fil.

FS_fseek: Flyttar filpekaren till en angiven position.

FS_ftell: Hämtar den aktuella positionen för en filpekare.

FS_feof: Testar om slutet av filen har nåtts.

FS_rewind: Återställer pekaren till början av filen.

FS_truncate: Ändrar storleken på en fil.

FS_rename: Byter namn på en fil eller mapp.

FS_findFirst: Söker efter en fil eller katalog med hjälp av jokertecken.

FS_findNext: Fortsätter sökningen baserat på den senaste anropet av FS_findFirst().

FS_setDateTime: Ställer in tid- och datumattribut för en fil eller mapp.

FS_getDateTime: Hämtar tid- och datumattribut för en fil eller mapp.

FS_setAttributes: Ställer in attributen för en fil eller mapp.

FS_getAttributes: Hämtar attributen för en fil eller mapp.

Drivrutiner och portgränssnitt

FATDriver_init

FS_STATUS FATDriver_init( FATDriver_DEVICE * device )

Initierar lagringsenhetsdrivrutinen för FAT-filsystemet.

Parametrar

device: Enhetens pekare av typen FSDriver_DEVICE.

Returneringsvärde

FS_SUCCESS returneras vid framgång, annars returneras ett fel.

FATDriver_deinit

FS_STATUS FATDriver_deinit( void )

Frigör resurser som används av lagringsenhetsdrivrutinen för FAT-filsystemet.

Returneringsvärde

FS_SUCCESS returneras vid framgång, annars returneras ett fel.

FATDriver_getStatus

FS_STATUS FATDriver_getStatus( void )

Kontrollerar den aktuella statusen för FAT-filsystemet på ett flyttbart lagringskort.

Returneringsvärde

FS_SUCCESS returneras vid framgång, annars returneras ett fel.

FATDriver_writeSectors

FS_STATUS FATDriver_writeSectors( void * buffer, unsigned long sector, unsigned long count )

Skriver data till en specifik sektor på enheten.

Parametrar

buffer: Dataskrivbuffert sector: Startsektorn för dataskrivning count: Antal sektorer att skriva

Returneringsvärde

FS_SUCCESS returneras vid framgång, annars returneras ett fel.

FATDriver_readSectors

FS_STATUS FATDriver_readSectors( void * buffer, unsigned long sector, unsigned long count )

Läser sektordata.

Parametrar

buffer: Dataskrivbuffert sector: Startsektorn för dataavläsning count: Antal sektorer att läsa

Returneringsvärde

FS_SUCCESS returneras vid framgång, annars returneras ett fel.

FATPort_getDateTime

void FATPort_getDateTime( FS_DATE_TIME * date_time )

Från målsystemet hämtas aktuell datum- och tidsinformation.

Parameterar

date_time lagrar aktuell datum- och tidsinformation.

Auktorisation

Zeeis inbäddade FAT-filsystem har självständig immaterialrätt, så det finns inga begränsningar för användning eller modifiering, vilket underlättar snabb design av dina produkter. För att köpa våra produkter behöver du bara betala en engångslicensavgift.

Zeeis är inte bara en världsledande utvecklare av inbäddade filsystem, utan också den enda leverantören som erbjuder lokal teknisk support direkt i Storkina-regionen. För mer information om våra produkter, vänligen kontakta oss via e-post: [email protected] eller ring 024-31876750. Klicka här för att se fler kontaktuppgifter.

Nästa
Föregående