-
Data: 2020-05-20 20:01:19
Temat: Re: karta SD na SPI zawiesza AtXmega128A3U
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 20.05.2020 18:43, a...@m...uni.wroc.pl wrote:
> Przepraszam ze pytam o oczywistosc, ale czy sprawdziles zasilanie?
> Karta do pracy swoje potrzebuje...
Tak, to już sprawdziłem. Cały układ jest zasilany z przyzwoitego
zasilacza impulsowego, a przy karcie jest obecny kondensator filtrujący.
Ścieżka zasilająca w miarę gruba i niezbyt długa.
Okazuje się, że winę za to zachowanie ponoszą najprawdopodobniej dwa
błędy. Pierwszy wynikał z zastosowania zmiennych o niezdefiniowanej
długości, zależnej od kompilatora. Na PIC24 zmienna miała właściwy
rozmiar, ale na AVR przepełniła się przed osiągnięciem wartości mającej
zakończyć pętlę.
Samo to jednak nie usunęło problemu. Zacząłem wywoływać niskopoziomowe
funkcje I/O bezpośrednio w pętli głównej programu. I faktycznie,
writeSPI() zawiesza program, na pętli oczekiwania na zakończenie
transmisji. Jeśli zakomentuję pętlę, zawias znika.
Funkcja wygląda następująco:
#define SD_SPI SPIE
// send one byte of data and receive one back at the same time
unsigned char writeSPI( unsigned char b) {
SD_SPI.DATA = b;
while(!(SD_SPI.STATUS & SPI_IF_bm));
return SD_SPI.DATA;
}// writeSPI
Jakiś pomysł co do tego, co może powodować problem z tą flagą?
W tym samym układzie mam już uruchomione inne urządzenie na SPIC - tam
żadne problemy ne występują.
Następne wpisy z tego wątku
- 20.05.20 20:05 jacek
- 20.05.20 20:35 Atlantis
- 20.05.20 20:48 Atlantis
- 20.05.20 21:31 Atlantis
- 21.05.20 11:13 Piotr Gałka
Najnowsze wątki z tej grupy
- tuner i silnik od rolety
- Przednia lampka rowerowa Basta / AXA pod dynamo w piaście
- Boję siię capa...
- Efekt gitarowy koda kd-30 trash metal
- Re: Efekt gitarowy koda kd-30 trash metal
- Wykrywanie przerwy w długim przewodzie zakopanym w ziemi.
- PT500
- supercap
- Procesor NMOS i karta CF
- Jak sprawdzic uC
- radyjko znalazłem
- Telewizor przestał widzieć sygnał z anteny
- LED
- System operacyjny dla 6800?
- Przyłączenie działki do sieci elektrycznej
Najnowsze wątki
- 2024-05-30 Warszawa => SAP WM Consultant / Execution <=
- 2024-05-30 Wrocław => Mid/Senior QA Engineer <=
- 2024-05-30 Bieruń => Administrator i wdrożeniowiec Lotus Notes/Domino <=
- 2024-05-30 Warszawa => B2B Sales Representative <=
- 2024-05-29 Warszawa => Frontend Developer - React <=
- 2024-05-29 Kraków => Senior PHP Developer (Symfony) <=
- 2024-05-29 Warszawa => Frontend Developer (React) <=
- 2024-05-29 Zabrze => Regular .NET Developer <=
- 2024-05-29 Zabrze => Regular .NET Developer <=
- 2024-05-29 Warszawa => Senior Cloud DevOps Engineer (Azure) <=
- 2024-05-29 Berlin => Technischer Rollouter (d/m/w) <=
- 2024-05-29 Poznań => Specjalista ds. Sprzedaży <=
- 2024-05-29 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2024-05-29 Warszawa => Google Ads Freelancer <=
- 2024-05-29 Ulm => Solution Engineer (m/w/d) Data Center Technologies <=