Witam,
Ostatnio postanowiłem przetrenować sobie czytnik kart microSD pod mikrokontroler NUCLEO-L552ZE-Q. Mam problem z komunikacją z kartą. Generalnie udało mi się wykrywać włożenie bądź wyjęcie karty z czytnika, natomiast przy próbie wykonania testowych czynności tj. utworzenie nowego folderu czy zapis do pliku załącza mi się obsługa błędów. Generalnie komunikację nawiązałem po smmcsd1 z obsługą wbudowanej biblioteki dla plików FatFs. Mój problem polega na tym, że pomimo wykrycia karty w czytniku przy próbie wydania komend pojawiają mi się następujące błędy f_mount (FR_NOT_READY), f_open (FR_DISK_ERR), f_write (FR_INVALID_OBJECT), f_close (FR_INVALID_OBJECT).
Podejrzewam, że błąd mogłem popełnić gdzieś przy konfiguracji, ale nigdy wcześniej nie obsługiwałem jeszcze kart microSD. Jeżeli chodzi o podłączenia pinów, to skonfigurowałem je następująco: SDMMC_D0 (PC8), SDMMC_D1 (PC9), SDMMC_D2 (PC10), SDMMC_D3 (PC11), SDMMC_CK (PC12), SDMMC_CMD (PD2), SDCDET (PF3) (ten pin poprawnie wykrywa umieszczenie karty w czytniku). Jest to program głównie do przetestowania karty microSD, do wykonywania nieskomplikowanych działań takich jak tworzenie folderów czy plików. Poniżej załączam plik programu oraz dane odczytywane z terminala. Z góry dziękuję za pomoc.
test_microSD.zip