-
Data: 2022-11-03 12:36:28
Temat: Niezainicjowana karta SD miesza na magistrali SPI
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Taka ciekawostka, zauważona podczas wczorajszego uruchamiania
(opisywanej nieco wcześniej) konstrukcji odtwarzacza/radia internetowego
na STM32F107. Po uruchomieniu FreeRTOS-a oraz lwIP zabrałem się za
testowanie pozostałych peryferiów. Sprawdziłem m.in. czy nadal działa
karta SD podłączone do magistrali SPI. Na tej samej magistrali pracuje
także pamięć RAM, używana w roli bufora.
Karta zgodnie z oczekiwaniami działa zupełnie prawidłowo - inicjuje się,
jest widziana przez FatFS, mogę czytać jej zawartość oraz płynnie
odtwarzać przechowywane na niej pliki MP3.
Wszystko działało całkowicie poprawnie do momentu, gdy w ramach
kolejnego testu zamiast karty zamontowałem pendrive'a (a więc nie była
już wywoływana jej inicjacja). Wszystko zaczęło się psuć - odtwarzanie
przerywało, zupełnie jakby był jakoś problem w komunikacji pomiędzy USB,
pamięcią SPI RAM oraz VS1003 (ten ostatni układ na osobnej magistrali
SPI). Na początku pomyślałem, że gdzieś zmniejszana jest prędkość
transmisji na SPI, ale okazało się, że wszystko jest skonfigurowane
poprawnie.
Aż w końcu znalazłem winowajcę - sama karta SD pozostawiona w gniazdku
miesza w komunikacji na magistrali, o ile nie zostanie zainicjowana.
Jeśli jej nie ma - wszystko jest w porządku. Jeśli jest i przejdzie
inicjację - też. Za to jeśli pozostawię ją niezainicjowaną, urządzenie
zaczyna szwankować.
Nigdy jeszcze nie spotkałem się z taką sytuacją, a kart SD na SPI
używałem w wielu swoich projektach, jeszcze z czasów AVR-ów. Linia MISO
miała ustawionego wewnętrznego pull-upa. Poza zauważeniu problemu
dodałem jeszcze zewnętrznego 10k, ale to nie pomogło. Linia CS rzecz
jasna jest podciągnięta do linii zasilania 3,3V rezystorem 10k, podobnie
jak linia SD_PRESENT.
Niby nie stanowi to dla mnie wielkiego problemu, bo docelowo karta nie
będzie hot-swapowalna i mogę ją po prostu inicjować przy każdym starcie
urządzenia. Zastanawia mnie po prostu potencjalna przyczyna takiego
zachowania.
Następne wpisy z tego wątku
- 03.11.22 12:40 Dawid Rutkowski
- 03.11.22 18:38 Atlantis
- 03.11.22 18:41 heby
- 03.11.22 21:17 Marek
- 04.11.22 09:11 Dawid Rutkowski
- 04.11.22 10:22 MKi
Najnowsze wątki z tej grupy
- Akumulatorki Ni-MH AA i AAA Green Cell
- Dławik CM
- JDG i utylizacja sprzetu
- Identyfikacja układ SO8 w sterowniku migających światełek choinkowych
- DS1813-10 się psuje
- Taki tam szkolny problem...
- LIR2032 a ML2032
- SmartWatch Multimetr bezprzewodowy
- olej psuje?
- Internet w lesie - Starlink
- Opis produktu z Aliexpress
- No proszę, a śmialiście się z hindusów.
- Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800
- karta parkingowa
- Wl/Wyl (On/Off) bialy/niebieski
Najnowsze wątki
- 2024-12-04 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2024-12-04 Czy policjantów należy ROZBROIĆ?
- 2024-12-03 Tymoteusz Sz.
- 2024-12-03 Re: Prezydent ułaskawia: Prezydent USA Biden (D) ułaskawia syna własnego
- 2024-12-03 Re: Tani dodatkowy sim do smartwacha
- 2024-12-03 Wróblewo => Analityk finansowy <=
- 2024-12-03 Praktyczny test GPS...
- 2024-12-02 Tak się sprzedają elektryczne woldzwageny ;-)
- 2024-12-02 Akumulator do Hyundai
- 2024-12-02 Olsztyn => Sales Specialist <=
- 2024-12-02 Poznań => Technical Artist <=
- 2024-12-02 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-12-02 Kraków => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2024-12-02 Chrzanów => Team Lead / Tribe Lead FrontEnd <=
- 2024-12-02 Białystok => Delphi Programmer <=