Witam, jestem nowy na forum, jest to moj pierwszy post i pierwszy problem (opisany na forum, rzecz jasna). Jak w temacie, zajmuje się obsługą karty SD, korzystam z biblioteki FatFs. Obsluguje wylacznie zapis na karte. Moj problem jest nastepujacy: operacja zapisu wykonuje sie prawidlowo, przy zalozeniu ze karta zostaje umieszczona TYLKO po uruchomieniu urzadzenia. Jesli urzadzenie uruchamiam juz z karta w slocie, o zapisu nie ma mowy. Drugi problem: nawet jesli karta zostanie wlaczona po uruchomieniu to operacja wykonuje sie poprawnie tylko raz, za drugim razem juz nie :/ pomaga tylko reset choc i nie zawsze (jesli kilka razy po tym pierwszym sprobuje zapisac, nawet reset nie pomaga, musze odlaczyc zasilanie plytki, wyjac karte, podlaczyc zasilanie, wlozyc karte, wtedy zadziala, ale jak wczesniej napisalem, tylko raz). Kolejnym moim problemem jest proba wykrycia braku karty lub trybu ReadOnly. W kodzie funkcją disk_status sprawdzam flagę STA_NOINIT, chyba dziala poprawnie, ale podobnie jak w przypadku zapisu tylko raz, no moze dwa. Przy kolejnych probach zapisu, gdy karty nie ma w slocie, funkcja wykonuje sie, jakby karta w slocie byla. Chyba pora na kod:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Zastanawialem sie jeszcze nad sprawdzaniem statusu karty. Czy powinienem to robic funkcja disk_status, czy sprawdzac flagi funkcji takich jak f_open, f_write etc?
Z góry dzieki za wszystkie sugestie i pomoce
Pozdrawiam
[ale na przyszłość proszę wyedytować ten post i zobaczyć jak się używa znaczników do dłuższego kodu. [ syntax = c ] a nie [ code ] .... ok??? mirekk36 - taka prośba]