Witam
W czasie implementacji struktury plików fat32 (na avr) napotkałem na pewien problem a dokładniej na "bezpomysłowość".
Jak wiadomo RootDirectry ma wielkość 1 Klastra, w nim znajdują się "paczki" 32B określające nazwę pliku, rozmiar, atrybuty itd. Odczytać mogę jedynie cały sektor wielkości 512B (na tyle maxymalnie pozwala mi pamięć ram procesora). I jak by to obliczyć to w 1 sektorze znajduje się 16 "paczek" plików (512/32). I teraz pojawia się problem, bo niektóre nośniki danych (w moim przypadku karty sd\mmc) mogą mieć wielkość klastra od 1sektora do 32 sektorów. I w tym momencie pojawia się problem, jak napisać procedurkę odczytującą sektor i szukającą w paczkach np nazwy pliku
Gdyby ilość sektorów na klaster była stała to problem nie miałby miejsca ale jak zaimplementować coś takiego gdy liczba sektorów jest zmienna
PS wiem że z BootSectora odczytuje ile sektorów przypada na klaster ale nie w tym rzecz.
Czy ktoś może pomóc mi w ww problemie
Oczywiście tylko w C
W czasie implementacji struktury plików fat32 (na avr) napotkałem na pewien problem a dokładniej na "bezpomysłowość".
Jak wiadomo RootDirectry ma wielkość 1 Klastra, w nim znajdują się "paczki" 32B określające nazwę pliku, rozmiar, atrybuty itd. Odczytać mogę jedynie cały sektor wielkości 512B (na tyle maxymalnie pozwala mi pamięć ram procesora). I jak by to obliczyć to w 1 sektorze znajduje się 16 "paczek" plików (512/32). I teraz pojawia się problem, bo niektóre nośniki danych (w moim przypadku karty sd\mmc) mogą mieć wielkość klastra od 1sektora do 32 sektorów. I w tym momencie pojawia się problem, jak napisać procedurkę odczytującą sektor i szukającą w paczkach np nazwy pliku
PS wiem że z BootSectora odczytuje ile sektorów przypada na klaster ale nie w tym rzecz.
Czy ktoś może pomóc mi w ww problemie