Mam problem z obsługą karty MMC poprzez funkcje z kursu w EP. Mam ją podłączoną przez sprzętowe SPI, ATmega 32, kwarc 3,6864 MHz, zasilanie 3,2V.
Problem polega na tym, że karta niby coś tam robi (gdy nie jest włożona, funkcja mmc_get_cid() się zawiesza, gdy jest - przechodzi dalej). Zauważyłem, że zawsze komenda mmc_cmd() zwraca nie takie wartości jak trzeba. Przy takim rozkazie (w mmc_reset):
mmc_cmd(MMC_GO_IDLE_STATE, 0, Finish);
Dostaję w odpowiedzi 127 (gdy karta odłączona dostaję 0).
Co może być nie tak? Może są jakieś błędy w ich programie?
Problem polega na tym, że karta niby coś tam robi (gdy nie jest włożona, funkcja mmc_get_cid() się zawiesza, gdy jest - przechodzi dalej). Zauważyłem, że zawsze komenda mmc_cmd() zwraca nie takie wartości jak trzeba. Przy takim rozkazie (w mmc_reset):
mmc_cmd(MMC_GO_IDLE_STATE, 0, Finish);
Dostaję w odpowiedzi 127 (gdy karta odłączona dostaję 0).
Co może być nie tak? Może są jakieś błędy w ich programie?