-
Data: 2009-01-17 11:35:40
Temat: [avr] Bootloader i stos albo...
Od: Dariusz Zolna <a...@u...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Rzeźbię teraz bootloader na Atmega8, który ściąga firmware przez I2C,
niestety dzieją się dziwne rzeczy.
Kod bootloadera uruchamia się, kontrolna dioda miga w określonej
sekwencji, czyli jest ok. W momencie kiedy wyślę pierwszy bajt po I2C,
układ się resetuje.
Podejrzewałem 1 z 3 możliwości:
1. Kod bootloadera jest za duży i nie mieści się w obszarze 1024 słów
(ale to wyeliminowałem przez porównanie zawartości flasha z tym co do
niego ładuję)
2. Jest niepoprawnie ustawiony wektor przerwania TWI i w momencie
otrzymania danej skacze gdzieś w maliny.
Na początku programu przepisuję tablicę wektorów przerwań:
GICR = (1<<IVCE);
GICR = (1<<IVSEL);
W pliku . map mam taki wpis:
0x00000d4e __vector_17
A w .lst taki:
302 .global __vector_17
304 __vector_17:
305 .LFB15:
306 .LM55:
307 /* prologue: frame size=0 */
308 00e2 1F92 push __zero_reg__
Więc wygląda, że wszystko jest na miejscu.
3. Ta opcja wygląda mi najbardziej podejrzanie: być może mam źle
ustawiony wskaźnik stosu i program resetuje się przy próbie powrotu z
przerwania.
HELP!
Dariusz Żołna
Następne wpisy z tego wątku
- 17.01.09 14:43 T.M.F.
- 19.01.09 12:38 Dariusz Zolna
- 19.01.09 16:17 T.M.F.
- 19.01.09 17:58 Dariusz Zolna
- 19.01.09 18:44 T.M.F.
Najnowsze wątki z tej grupy
- 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
- I3C
- Pytanie o transformator do dzwonka
- międzymordzie USB 3.2 jako 2.0
- elektronicy powinni pomysleć o karierze elektryka
- jak szybko plynie prad
- Płytki Milkv-Duo
- Światłowód między budynkami
- POtrzebny bufor 3.3<>5V, jedonkieruowy, trójstanowy, wąski
- retro
- Bezprzewodowe polączenie Windows z projektorem
Najnowsze wątki
- 2024-11-17 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- 2024-11-18 Gdynia => Spedytor Międzynarodowy <=
- 2024-11-18 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-11-18 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-18 Kraków => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2024-11-18 Kraków => Business Development Manager - Network and Network Security
- 2024-11-18 Kraków => Network Systems Administrator (IT Expert) <=
- 2024-11-18 Kraków => Administrator Systemów Sieciowych (Ekspert IT) <=
- 2024-11-18 Zdunowo => Senior PHP Symfony Developer <=
- 2024-11-18 Łódź => QA Inżynier <=
- 2024-11-18 Lublin => Senior PHP Developer <=
- 2024-11-18 Gliwice => Specjalista ds. public relations <=
- 2024-11-18 Gdynia => Front-End Developer (React/Three.js) <=
- 2024-11-18 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-18 Gdańsk => Kierownik Działu Spedycji Międzynarodowej <=