Znaleziono 1 wynik

autor: maciek95k
01 cze 2025, 00:47
Forum: Na luzie
Temat: Dokąd zmierza świat?
Odpowiedzi: 50
Odsłony: 1070

Re: Dokąd zmierza świat?

Dokładnie tak. W cube jak wygenerujesz program i chcesz sobie potem go przegenerować, to aby nie pousuwał Ci tego co dopisałeś, kod musi się znajdować dokładnie między komentarzami które on tam pozostawiał. Ja osobiście tego środowiska bardzo nie lubię bo:
- komentarze zaciemniają kod
- wersje hal'a zmieniają się jak szalone i są niekompatybilne często wstecz (jedno rozwiązanie za chwilę już nie działa w kolejnych projektach bo nie ma danych funkcji itd.)
- kontrola wersji? szkoda gadać. Co chwila po sklonowaniu repo trzeba projekt stawiać na nowo i dodawać pliki
To do czego to narzędzie jest super przydatne to:
- wyklikanie konfiguracji pinów - tak aby wyciągnąć z procka max peryferiów, nie było kolizji itd. Robienie tego z tabelki to mordęga i trwa 10 razy dłużej
- przetestowanie czegoś na szybko. Mam nowy prototyp PCB - coś mi nie działa i chcę sprawdzić jakąś jedną rzecz - generuję szybko kod i patrzę czy to w ogóle żyje
- debug i live expressions - czyli podglądanie zmiennych w czasie pracy procka bez zastopowania debugu

Ja osobiście korzystam najwięcej z platformio (wtyczka do vscode). Projekty opisane są w plikach tekstowych. Biblioteki mogą być na zewnątrz i można je podać jako link do repozytorium wraz ze znacznikiem do odpowiedniego commita czy releasa - brak problemów jak ktoś coś zaktualizuje. Jest to super bo znajdując błąd w jakiejś libce - automatycznie poprawia się on we wszystkich projektach. Da się nad jednym projektem jednocześnie pracować z linuxa i windowsa (co przy Cube Ide jest praktycznie niemożliwe). Same płytki także można sobie samemu opisać i używać już z odpowiednią abstrakcją. W przeciwieństwie do słabych IDE tutaj im dłużej się pracuje i projekty się rozrastają - tym jest łatwiej i przyjemniej a nie odwrotnie.

I tu chyba można dojść do sedna jeśli chodzi o HAL. Nie koniecznie ten w cube bo on bywał różny (aczkolwiek te nowe wersje już działają całkiem nieźle) ale ogólnie pisanie softu embedded w odpowiednich warstwach. Dzięki temu z każdym kolejnym projektem, baza naszej wiedzy ale też rozwiązań rośnie i nawet bardzo skoplikowane biblioteki możemy szybko portować na kolejne procki. Osobiście w platformio sobie piszę biblioteki w oderwaniu nawet od danego framework'u. Importując bibliotekę (linkiem do repo) dodaję tylko pliki config gdzie uzupełniam już zdefiniowane nagłówki funkcji odpowiednim wywołaniem sprzętowymi i gotowe. Polecam. Można sobie na STM pisać w arduino, C, C++ itd. (aczkolwiek wiedzę trzeba mieć bo czasem trzeba coś poprawiać).

Co do rozmiaru kodu - osobiście bawiąc się różnymi ustawieniami flag optymalizacji uważam że dzisiaj to już nie ma aż takiego znaczenia. Oczywiście znajomość rejestrów to podstawa i bez tego ani rusz imho z poważnymi programami i debugowaniem, ale jeśli nie robimy urządzenia które będzie klepane w milionach sztuk...

Wróć do „Dokąd zmierza świat?”