Bez większych problemów wykorzystywałem bibliotekę FatFS na AVR-ach. Teraz eksperymentuję z PIC32 i zabrałem się za portowanie podstawowych bibliotek albo uruchamianie tych, które już zostały przeportowane. Na oficjalnej stronie FatFS nie ma co prawda wersji pod PIC32, jednak znalazłem kod, który został już przez kogoś zmodyfikowany:
Funckja f_mount(0, &Fatfs), wywołana na początku main() zwraca FR_OK. Czyli wygląda na to, że biblioteka nawiązuje komunikację z kartą i znajduje na niej system plików. Działanie komunikacji po SPI potwierdza analizator stanów logicznych.
Potem, co pięć sekund w nieskończonej pętli uruchamiam następujący kod:
res1 = f_open(&file, "test.txt", (FA_CREATE_ALWAYS | FA_OPEN_ALWAYS | FA_CREATE_NEW | FA_WRITE)); res2 = f_write(&file, "test", 5, &numwritten); res3 = f_close(&file);
I tutaj niestety coś już jest nie tak. res1 zawiera kod błędu FR_NO_FILESYSTEM, a res2 FR_INVALID_OBJECT.
Ktoś wie, gdzie może tkwić błąd?