Programowanie mikrokontrolerów w C++ bez ascezy - Wersja do druku +- HomeMade (http://sp-hm.pl) +-- Dział: Oprogramowanie (/forum-84.html) +--- Dział: Technika programowania mikroprocesorów (/forum-85.html) +--- Wątek: Programowanie mikrokontrolerów w C++ bez ascezy (/thread-2841.html) |
Programowanie mikrokontrolerów w C++ bez ascezy - SQ6DGT - 21-11-2016 8:38 Witam, był kiedyś wątek na temat tego czy warto uczyć się programowania rodziny ARM-ów (np. STM32) na poziomie CMSIS czy też używająć SPL/HAL dla większej wygody. Do tego dochodzi jeszcze kwestia tego czy wykorzystać wygodne C++ dla komfortu i czytelności czy też trzymać się C. Jest wiele stereotypów z tym związanych, np. taki, że C++ generuje narzut i między innymi z tego powodu nie nadaje się do mikrokontrolerów. Ja się generalnie z tym nie zgadzam, ARM-y to nie ATTINY :-) i można a nawet jest wskazane korzystać z języków i środków o większym wyrazie niż gołe C. Dla poparcia tego podaję dwa linki, które bardzo polecam: - Compiler Explorer, można podać jeden z wielu kompilatorów, jest też arm, i na żywo pokazuje jak dany kod jest kompilowany do ASM-a. Polecam na początek wykorzystanie const int zamiast #define z opcją kompilatora -O albo -Os i stwierdzenie jak działa optymalizacja kodu :-) https://godbolt.org - Film gdzie gość pisze program w C++, wykorzystując wiele zaawansowanych elementów tego języka, i potem rekompiluje go na 6502, 8-bitowy procesor jaki był w starym Commodore C-64. To co pisze to prosta gierka, którą potem uruchamia na prawdziwym C-64, wszystko na żywo. Kod wynikowy nie ma żadnego narzutu ! https://youtu.be/zBkNBP00wJE warto obejrzeć do końca :-) |