Dzisiejszy temat kompletuje Świętą Trójcę największych pytań na grupach dla programistów embedded. Dwa pozostałe tematy – wybór mikrokontrolera i wybór języków omawialiśmy w poprzednich wpisach. Dzisiaj zajmiemy się wyborem tematów na własne projekty embedded. Zawęzimy temat właśnie do prywatnych projektów. Zarówno tych na początek przygody z programowaniem embedded, jak i tych na później. Nie będziemy natomiast omawiać projektów komercyjnych – to temat na oddzielną dyskusję.
Continue readingKategoria: Bez kategorii
Clean Code, Horrible Performance. Czy aby na pewno?
Jakiś czas temu wielką popularność zdobyło nagranie Casey Muratori “Clean Code, Horrible Performance” jeżeli jeszcze nie znasz, polecam obejrzeć! Autor stawia tam obrazoburczą tezę, że popularne zasady Clean Code przynoszą więcej szkody niż pożytku. A w szczególności powodują ogromny spadek wydajności. W tym artykule zapoznamy się z jego argumentami i zastanowimy się, czy mają zastosowanie w embedded.
Continue readingGrudniowy embedded meetup – relacja
We wtorek 5 grudnia w Sztuce Wyboru w Gdańsku mieliśmy kolejną, siedemnastą już odsłonę Gdańsk Embedded Meetup. Jako organizator nie zawsze mam możliwość uważnie śledzić prezentacje, ale tym razem się udało i dzięki temu mogę teraz napisać całkiem długą relację. A przy okazji dobrze się składa, bo długo nic nie pisałem na bloga, a ten meetup dał wiele ciekawych tematów, które rozwinę jeszcze w kolejnych wpisach. Tutaj skupię się jednak na relacji, bo mieliśmy dwie bardzo ciekawe prezentacje.
Continue readingDarmowy ebook o TDD w Embedded
Stworzyłem ostatnio ebooka „Jak zacząć z Test Driven Development w systemach embedded”. Możesz go pobrać ze strony tddembedded.pl
Z ebooka dowiesz się między innymi:
- O co chodzi w TDD i jak może pomóc Ci w codziennej pracy
- Jaki framework testowy wybrać na początek
- Jak dostosować TDD do systemów embedded
Opisałem tam również historię jednego projektu, gdzie programowałem sterowniki wentylatorów do klimatyzacji.
Tak więc zapraszam na tddembedded.pl i życzę przyjemnej lektury!
Podsumowanie roku 2021
Niedawno rozpoczął się nowy rok, więc tradycyjnie pora na podsumowanie wydarzeń z roku 2021 i planów na 2022. Podobne podsumowania robiłem też w 2017, 2018 i 2020. Podsumowanie z 2019 zagninęło w akcji 🙂
Zapraszam do lektury!
Continue readingObsługa zależności czasowych
Jakiś czas temu otrzymałem na maila takie pytanie:
Czy jest jakaś elegancka metoda, aby zarządzać zdarzeniami czasowymi w systemie?
Generalnie unikamy delay’ów i odnosimy się np. do zegara systemowego. Aby uruchomić daną komendę/operację/funkcję w konkretnym momencie czasowym używamy IF-ów. Sprawa się komplikuje jeśli chcemy powiązać czasowo różne zdarzenia w systemie.Oto przykład: chcemy aby:
1. Zdarzenie X było realizowane co 2 sekundy,
2. Niezależne zdarzenie Y co 5 sekund
3. Zdarzenie Z 1 sekundę po zdarzeniu X.
Czy masz tu jakiś pomysł jak taki cel można zrealizować prościej, z wykorzystaniem jakiegoś tricku, aby kod stał się prostszy i bardziej czytelny?
W dzisiejszym wpisie omówię dwa podejścia do tego tematu – z RTOSem i bez.
Continue readingJak zaimplementować obsługę różnych języków w menu?
Czasami tak bywa, że sukces produktu niesie nowe wyzwania dla programistów. Jednym z takich wyzwań może być przetłumaczenie tekstów wyświetlanych w menu na inne języki i obsługa tego w prosty i niezawodny sposób. W dzisiejszym wpisie pokażę jak ustrukturyzować kod zawierający menu i jak łatwo zaimplementować tłumaczenia wykorzystując tablice.
Continue readingFragmenty live’ów na YouTube
Ostatnio na swój kanał YouTube zacząłem wrzucać fragmenty live’ów pocięte na krótsze – około 10-minutowe – filmiki. Każde nagranie skupia się na jednym zagadnieniu. Dzięki temu łatwiej będzie po czasie znaleźć interesujące fragmenty bez przeszukiwania całego dwugodzinnego nagrania.
Zapraszam również do zapisu na newsletter, gdzie poza tego typu nagraniami otrzymacie również linki do dodatkowych materiałów i różne opowieści z moich projektów.
Czytelność kodu w embedded
Dlaczego mój kod nie działa?
Książki dla programisty embedded – live na YT
Dzisiaj o 20:00 zapraszam na YT na live o książkach dla programisty embedded:
A w nim odpowiedzi na pytania:
- Jakie książki wybrać do początkowej nauki?
- Jakie książki polecam na później?
- Jakie książki polecam o testach, architekturze, prowadzeniu projektów itd.
- Jakie do C? A jakie do C++?
- Jakie o elektronice?
- Z czego sam się uczyłem?
- Czy trzeba czytać książki od deski do deski?
Większość książek programistycznych pomija kwestie sprzętowe, a o samym embedded literatura jest dużo uboższa. Dlatego będzie też o tym jak odnosić informacje w książkach do naszej konkretnej sytuacji.
Migracja projektu z STM32 Cube IDE do CMake – live na YT
Problemy z konfiguracją IDE to prawdziwa zmora. Mogą objawiać się na różne sposoby – na przykład:
- Wiesz jak coś ma działać, ale nie umiesz wyklikać tego w wizardzie.
- Przenosisz projekt na inny komputer i się nie kompiluje.
- Chcesz uruchomić kompilację bez instalowania IDE i nie wiesz jak.
Narzędzia się zmieniają, ale problemy pozostają te same. Musimy umieć sobie z nimi radzić.
Dlatego właśnie dzisiaj o 20:00 zapraszam na live na YouTube. Tematem będzie Migracja projektu z STM32 Cube IDE do CMake. A przy okazji pokażę co IDE robią pod maską.
Continue reading