-
Data: 2010-04-07 22:37:00
Temat: Re: Bootloader dla SAM7 z flashowaniem z karty SD
Od: voland <v...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 21 Mar, 03:12, Adam Dybkowski <a...@4...pl> wrote:
> W dniu 2010-03-19 09:15, Sebastian Biały pisze:
>
> >> BTW: Tyle że w AT91SAM7 nie ma takiego wsparcia dla własnych
> >> bootloaderów, jakie jest np. w AVRach. "Bootloader" w tym przypadku to
> >> zwykły kawałek softu, który leży sobie na początku Flasha. A cały
> >> normalny program musisz linkować odpowiednio dalej (np. od 32KB).
>
> > To nie ma znaczenia gdzie będzie fizycznie flash ładowany, byle by można
> > potem zmienić wektory przerwań.
>
> Z tym nie ma problemu. W kodzie bootloadera wstawiasz standardowy skok
> przez wektor ładowany z rejestru kontrolera przerwań:
> 0x18: ldr pc, [pc, #-3872] ; fffff100
> 0x1c: ldr pc, [pc, #-3872] ; fffff104
> A potem konfigurujesz konkretny adres przerwania IRQ i FIQ w kontrolerze
> przerwań. Po starcie właściwego systemu możesz zmienić adres i już.
>
> Można też dla uproszczenia nie korzystać w bootloaderze w ogóle z
> przerwań (nie jest to problemem przy prostym dostępie do UARTu i karty
> SD) a na początku bootloadera wstawić na stałe rozkazy skoków o 32KB do
> przodu - jeżeli przyjmiesz tyle miejsca na swój bootloader. Potem w
> kodzie docelowej aplikacji zajmiesz się przerwaniami jak chcesz.
>
> --
> Adam Dybkowski
> http://dybkowski.net/
>
> Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
Przypadkiem sie natknąłem na ten wątek bo mam podobne problemy też z
at91sam7s128. Generalnie juz napisalem se taki bootloader i wyglada na
to ze dziala. flashuje se binarke do pamieci pod adres 0x109000, i
sciągam potem pamieć na twardy dysk i zawartość się zgadza, ale mam
inny problem mianowicie nie wiem jak skonfigurowac linker dla programu
który ma być wgrany pod ten adres, niby skonfigurowalem coś w pliku
flash.lds czyli zmieniłem adres pamieci flash i jej wielkość, wygląda
to mniej więcej tak:
MEMORY
{
sram (W!RX) : ORIGIN = 0x200000, LENGTH = 0x8000
flash (RX) : ORIGIN = 0x109000, LENGTH = 0x17000
}
No i jak kompiluje ten program z parametrem optymalizacji -s0 to niby
działa ale kiedy próbuje skompilować to zoptymalizowane to już się
wysypuje.
Następne wpisy z tego wątku
- 07.04.10 23:34 Adam Dybkowski
- 08.04.10 07:26 voland
- 08.04.10 07:27 voland
- 08.04.10 08:49 voland
Najnowsze wątki z tej grupy
- Co może być gorsze od pożaru elektryka?
- daltonizm
- Mały Linux
- Superkondensator. Czy to się uda?
- Stare filmy o technice
- Zasilanie własnych konstrukcji przez PoE
- Jak działa domofon?
- Co oni mierzą miernikiem
- 40 lat OrCAD-a
- Multimetr z bluetooth
- Ciekawa mapka z BTS-ami
- Lampy uliczne LED z kubkiem
- Pęczniejące LiPo
- wyłącznik ścienny
- "Wybitna" inteligencja AI
Najnowsze wątki
- 2025-10-24 Prawdziwy obraz społeczeństwa Gazy.
- 2025-10-24 Atra_ment Canona GI-41 vs 45 itp...
- 2025-10-24 Warszawa => International Freight Forwarder <=
- 2025-10-24 Co może być gorsze od pożaru elektryka?
- 2025-10-24 Co może być gorsze od pożaru elektryka?
- 2025-10-24 Warszawa => Senior Microsoft Dynamics 365 Business Central Consultant
- 2025-10-24 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-10-23 brylant
- 2025-10-23 Warszawa => BI Developer / Analityk BI <=
- 2025-10-23 Warszawa => Młodszy Specjalista ds. wsparcia sprzedaży <=
- 2025-10-23 Trójmiasto => Head of Social Media <=
- 2025-10-23 Warszawa => Programista C <=
- 2025-10-23 Warszawa => Senior Account Manager <=
- 2025-10-23 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-10-23 Łódź => SysAdmin <=




Deweloperzy hamują sprzedaż mieszkań, ale nie podnoszą cen