Produkty Novinky Články Návody Kontakty

Das U-Boot není ponorka

Obvyklý pohled na roli univerzálního bootloaderu U-Boot se omezuje na natažení binárního obrazu linuxového jádra z externího úložiště (NAND Flash, SD karta atd.) do operační paměti a jeho spuštění. Ale během vývoje je U-Boot neocenitelným pomocníkem. Umožňuje natáhnout velké binárky ze sítě a zkrátit tak dobu mezi rebooty, které jsou ve fázi ladění velmi časté. Odpadnou zdlouhavé zápisy do Flash paměti nebo na SD kartu.

Modul SAMA5 a SAM-BA

Je hezké, že nám mikroprocesor SAMA5D31 reaguje na příkazy, které mu posíláme po sériové lince. My ale chceme, aby po resetu spustil nějaký program. Pomocí programu SAM-BA zapíšeme binárku programu do SPI Flash paměti, která je na modulu SAMA5. Po resetu natáhne primární zavaděč RomBOOT binárku z SPI Flash do interní SRAM mikroprocesoru a spustí ji.

Modul SAMA5 - první kroky

Než začneme používat modul SAMA5, musíme si připravit vývojový kit s prototypovací deskou Baseboard. Potom připojíme modul pomocí sériového RS-232 kabelu k PC a vyzkoušíme komunikaci s primárním zavaděčem RomBOOT, který je v ROM paměti mikroprocesoru SAMA5D31.

Struktura programu (co jsme zatajili)

V předchozím článku jsme rozebrali strukturu zdrojáků jednoduchého programu pro mikrokontrolér LPC1115, ale pár věcí jsme přešli jako samozřejmost, kterou není potřeba moc vysvětlovat. Třeba odkud se vzaly definice registrů LPC1115 nebo co je vlastně v tom mejkfajlu. Proto jsme napsali tento článek.

Struktura programu pro LPC1115

Program pro LPC1115, který na Lipicanu bliká LEDkami, je opravdu velice jednoduchý. Než se ale procesor dostane k samotnému rozsvěcování a zhasínání LEDek, uděje se řada věcí. Projdeme si strukturu zdrojového kódu programu a probereme děje, které předchází spuštění hlavní funkce main().