Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

FATFS - karta SD i inne slave na magistrali

05 Gru 2012 23:02 852 2
  • Poziom 23  
    Cześć
    Straciłem sporo czasu próbując uruchomić pewne urządzenie. Sytuacja wygląda następująco: na magistrali SPI jest karta SD i wyświetlacz LCD. Do tych urządzeń podprowadzone osobne sygnały CS. Zauważyłem, że nie działa mi zapis na kartę. Po długich bojach odkryłem, że gdy wyłączę funkcję odpowiedzialną za wysyłanie danych do LCD przez SPI, karta SD działa poprawnie. Oczywiście wysyłam bajt dummy (0xFF), żeby zwolnić magistralę. Czy ktoś próbował odpalić kartę SD przy konfiguracji master + multi slave?
  • Moderator Mikrokontrolery Projektowanie
    Co znaczy, że wysyłasz bajty dummy, żeby zwolnić magistralę? Linie SS muszą być sterowane programowo, sterownik SPI w trybie master nimi sam nie steruje. Więc albo zostawiasz którąś aktywną, lub transmisja np. do LCD przerywa transmisję do SPI. W takiej konfiguracji dostęp do urządzeń slave musi być transakcyjny.
  • Poziom 23  
    Oczywiście że muszą, i są. Ale karta SD nie ma własnego clock-a i po "puszczeniu" CS-a zwolni magistralę dopiero po zataktowaniu przez wysłanie nie znaczącego bajtu danych. Patrzyłem dokładnie oscyloskopem stan linii CS wyświetlacza i karty i nigdy nie zdarza się sytuacja że na obydwóch jednocześnie jest stan aktywny (niski). Mimo to wychodzi na to że karta przyjmuje dane które idą do wyświetlacza pomimo że ma wtedy swój CS w stanie wysokim.