Szara codzienność, czyli kilka słów o środowisku developerskim

Od pewnego czasu co raz to więcej osób pyta mnie, z jakich środowisk programistycznych korzystam, w czym piszę, z jakich narzędzi korzystam – krótko mówiąc: jak wygląda mój warsztat developera systemów wbudowanych. Dlatego dziś postanowiłem napisać krótki artykuł na ten właśnie temat 🙂

Narzędzia programistyczne

Systemem operacyjnym dla narzędzi, których używam do budowania aplikacji jest oczywiście Linux. Kompilator (a ściślej: cross-kompilator) zależy od architektury sprzętowej docelowego systemu – w naszym przypadku jest to arm-gcc serii 5.0. Do tego standardowy ARMowy toolchain oparty o makefile’y i binutils. W sumie nic odkrywczego 😉 W czasie debugowania korzystam z OpenOCD oraz nieśmiertelnego gdb.

Ponieważ ilość kodu przekracza możliwości ogarnięcia go w sensowny sposób ludzką pamięcią, konieczne jest użycie jakiegoś systemu kontroli wersji. Tu też bez niespodzianek – git :), od czasu do czasu wspomagany prostą nakładką graficzną, w celu rozrysowania drzewka wersji.

Do edycji kodu służy mi QtCreator lub stary dobry Eclipse, z kilkoma wtyczkami usprawniającymi debugowanie na sprzęcie. A skoro już dotykamy tego tematu…

Narzędzia sprzętowe

Jak pisałem w jednym z pierwszych artykułów, bazą dla naszego projektu jest płytka prototypowa z serii STM32 Discovery. Co prawda została ona wyposażona we wbudowany dongle STLink, jednak zdecydowałem się mimo to użyć dodatkowego, zewnętrznego interfejsu. Do tego laboratoryjny zasilacz, który dostarcza napięcie +12 zasilające nasz testowy system.

I w zasadzie tyle 🙂

Posted in Sto dni w kolorze.