[KROK-PO-KROKU] Bootloader dla zestawu FREEboard – jak z niego korzystać

Podczas tej operacji będzie widoczne okienko z postępem zapisywania pamięci (rysunek 3), a na koniec zostanie wyświetlona komunikat końcowy (rysunek 4).

Z programu wychodzimy poleceniem:

 

Rys. 4. Informacja o zakończeniu programowania

 

Fot. 5. Umieszczenie złącza USB Con2 na płytce FREEboard (jest obsługiwane przez bootloader i służy do modyfikowania oprogramowania w pamięci Flash mikrokontrolera)

 

Odłączamy zestaw FREEboard od komputera i programatora, a następnie podłączamy go ponownie do komputera, ale tym razem poprzez złącze CON2 (fotografia 5). W menedżerze urządzeń systemu powinna wyświetlić się informacja o wykryciu urządzenia interfejsu HID – żadne dodatkowe sterowniki nie są wymagane (rysunek 6).

 

Rys. 6. Zaprogramowany układ jest wykrywany w systemie jako urządzenie USB HID

 

Bootloader z projektu

Inna metoda zapisania bootloadera w pamięci Flash mikrokontrolera polega na kompilacji projektu-bootloadera zawartego w pakiecie KINETIS Bootloader wraz z otwartymi kodami źródłowymi, a następnie wgraniu otrzymanego pliku binarnego z poziomu tego samego środowiska programistycznego. Zaletą takiego rozwiązania jest możliwość dostrojenia parametrów bootloadera do własnych potrzeb.

Projekt przygotowany w środowisku IAR Embedded Workbench (jest to jedyne środowisko w jakim przygotowane są projekty omawianego pakietu) i najbardziej odpowiadający naszej platformie sprzętowej znajduje się w podkatalogu targets/MKL25Z4/ (plik bootloader.eww). Po jego otwarciu, w sekcji Workspace środowiska wybieramy „freedom_bootloader – Debug” i z menu kontekstowego ustawiamy jako aktywny (Set as Active). Przed kompilacją możemy ustawić najważniejsze opcje bootloadera – makrodefinicje w pliku bootloader_config.h (rysunek 7) – m.in. czas oczekiwania bootloadera na pierwsze połączenie się z nim przez dowolny obsługiwany układ komunikacyjny (DEFAULT_PERIPHERAL_DETECTION_TIMEOUT) lub prędkość transmisji i numer interfejsu UART (TERMINAL_BAUD i TERM_PORT_NUM).

 

Rys. 7. Projekt bootloadera w środowisku IAR Embedded Workbench

 

Ze wspomnianego menu kontekstowego kompilujemy projekt (element Make), a następnie konfigurujemy programator/debuger (element Options…) wybierając w zakładce Debugger/Setup interfejs J-Link (rysunek 8). Wygenerowany plik binarny wgrywamy do pamięci mikrokontrolera poprzez wybranie z menu środowiska Project ? Download ? Download active application, po czym układ jest resetowany i rozpoczyna się wykonywanie programu.

 

Rys. 8. Konfiguracja programatora/debugera J-Link

 

Do pobrania

O autorze