BPP#1 Hello World

Pierwsze poważniejsze zmagania z STM32 doprowadziły mnie do wniosku, że wiem, że nic nie wiem. A co gorsza, nie do końca wiedziałem, gdzie szukać informacji, aby się czegoś dowiedzieć.

Aby dokładniej opisać problem, opowiem, o co chodzi.

Napisałem prosty program, który po kolei konfiguruje rejestry potrzebne do podania napięcia na porcie GPIOA5 (kod jest na GitHubie), tak aby uruchomić mikrokontrolerowe "Hello World", czyli miganie diodą.

Niestety na tym skończyła się łatwa część. Proces kompilacji okazał się podobny, ale nie do końca tak samo płynny jak z użyciem AVRdude przy programowaniu Atmegi328p (tak, kupiłem podróbkę Arduino).

Podczas kompilacji z użyciem Arm Embedded Toolchain, bez dopisania:

--specs=nosys.specs

Proces tworzenia pliku .elf nie ruszył. Prawdopodobnie linker potrzebował wsparcia w obsłudze funkcji systemowych, których na "gołym" procesorze przecież nie ma (I use Arch btw).

Dalsze próby z użyciem arm-none-eabi-objcopy również nie poszły gładko, dlatego na tym zakończyłem swoje starania, by poszukać wiedzy u źródła i wrócić nieco mądrzejszy.

Jeżeli znacie fora poświęcone tematyce programowania mikrokontrolerów w C, byłbym wdzięczny za linki. Muszę znaleźć punkt zaczepienia, aby wiedzieć, czego szukać chociażby na gcc.gnu.org. Niestety na Stack Overflow nie znalazłem zbyt wielu odpowiedzi na moje obecne rozterki.

Ps.Następnym problemem będzie flashowanie dlatego jak ktoś ma informacje na temat konfiguracji wspomnianego toolchaina pod dany procesor i konwerter CH340 będę wdzięczny.

Z góry dziękuje za polecajki!