[SPRZĘT] Programator USBDM dla mikrokontrolerów KINETIS z zestawu KAMAMI FREEboard
Zestaw FREEboard jest jedną z najlepiej wyposażonych w układy peryferyjne platform sprzętowych z mikrokontrolerem KINETIS L dostępnych na rynku ale ma dość dokuczliwą wadę: nie ma wbudowanego programatora, trzeba korzystać z bootloadera lub zewnętrznego programatora. W artykule pokazujemy jak ten problem samodzielnie rozwiązać.
Firma Freescale nie ma w swojej ofercie taniego programatora mikrokontrolerów KINETIS L, co jest jednym z czynników ograniczających ich popularność, na którą w pełni zasługują. Promowany na platformach FRDM programator OpenSDA nie jest niestety „open”, z czasem nabiera coraz silniejszych cech komercyjnych. Brak taniego programatora SWD sprawa spore kłopoty zwłaszcza początkującym użytkownikom tych mikrokontrolerów.
Na szczęście problem programowania pamięci Flash w mikrokontrolerach KINETIS został częściowo rozwiązany przez wspólnotę programistów, którzy opracowali i rozwijają interfejs o nazwie USBDM, który obsługuje m.in. mikrokontrolery KINETIS L.
Fot. 1. Wygląd testowanego w redakcji egzemplarza programatora SWD, zmontowanego na PCB, której projekt oraz Gerbery udostępniliśmy na dole strony
Wygląd testowej wersji programatora wykonanego na płytce drukowanej opisanej w projekcie pokazano na fotografii 1.
Rys. 2. Wygląd modelu 3D płytki drukowanej programatora wykonanej za pomocą Altium Designera
W redakcyjnym laboratorium przygotowaliśmy płytkę drukowaną do tego programatora, której projekt (wykonany w Altium Designerze – rysunek 2) jest udostępniany bezpłatnie, wraz z plikami Gerber i NC Drill. Projekt powstał na bazie aktualnej wersji sprzętowej, bazującej na mikrokontrolerze MC9S08JS16CFK firmy Freescale, dzięki czemu część sprzętowa programatora jest bardzo prosta (schemat na rysunku 3).
Rys. 3. Schemat elektryczny programatora SWD (KINETIS) na mikrokontrolerze MC9S08JS16CFK
Prezentowany programator jest obsługiwany przez środowiska: Codewarrior oraz Kinetis Design Studio, a zgodnie z informacjami udostępnionymi przez twórców, szykowana jest także integracja programatora z ARM-MDK firmy ARM (Keil).
Dokładny opis sposobu konfiguracji i użycia programatora jest dostępny w artykule pod adresem.
Rozmieszczenie najważniejszych elementów na płytce programatora pokazano na fotografii 4.
Fot. 4. Rozmeszczenie elementów na płytce programatora USBDM