Skocz do zawartości

Książki o STM32 i bibliotekach HAL


Pomocna odpowiedź

@_LM_ Dziękuję za obszerny komentarz. Ostatnio pracuję na etacie przy programowaniu mikrokontrolerów w RTOSie ESP-IDF dla ESP i TreadX dla STM. Próg wejścia w tematy jest dość spory, ale zaczyna się pojawiać satysfakcja, gdy program nie wpada w segmentation fault 😅 Pomocna jest znajomość np pthread dla C. 

Nie jestem niewiadomo jakim ekspertem dlatego uważam że warto się uczyć. Niedługo będę potrzebował ruszyć temat tworzenia bootloadera z kilkoma partycjami aplikacji, zobaczymy co się uda. Do kursu Forbota L4 czasem powracam, przyznam że w moim przypadku publikacja kursu to był bardzo przełomowy moment. Może komercyjnie takie programowanie tzw. bare-metal się nie przyda, bo zarządzanie dużym projektem wymaga jakiegoś wzorca, który zmniejszy powiązania, a master-loop w bare-metal trochę to komplikuje. Koniec końców wynajdzie się własną koncepcję wielowątkowości czyli nowe, piękne, okrągłe koło. Dlatego uważam i na to wygląda że jest taki trend, że RTOS jest nieunikniony w takich projektach. Ale ekspertem nie jestem, może kiedyś 🙂 

@msalamon dziękuję za informację i za maila. Będziemy w kontakcie 🙂 

  • Lubię! 1
1 godzinę temu, Gieneq napisał:

Może komercyjnie takie programowanie tzw. bare-metal się nie przyda, bo zarządzanie dużym projektem wymaga jakiegoś wzorca, który zmniejszy powiązania, a master-loop w bare-metal trochę to komplikuje.

To chyba bardzo mocne stwierdznie, że się nie przyda. Pod warstwą abstrakcji RTOSa są konkretne ograniczenia sprzętowe i wcześniej czy później trzeba się z nimi zmierzyć i wtedy taka wiedza jest bezcenna. 

1 godzinę temu, Gieneq napisał:

Dlatego uważam i na to wygląda że jest taki trend, że RTOS jest nieunikniony w takich projektach.

Zgadzam się. Ja teraz wgryzam się w Zephyr RTOS. I trochę tak to wygląda, że odpalić kombajn jest trudno, ale potem żniwa są łatwe... 

1 godzinę temu, Gieneq napisał:

TreadX dla STM

Jak jest z licencją ThreadX? Dobrze rozumem, że wszystkie STM32 są prelicensed? 

https://github.com/azure-rtos/threadx/blob/master/LICENSED-HARDWARE.txt

  • Lubię! 2
Dnia 29.12.2022 o 11:10, pmochocki napisał:

Ja nie czytałem, ale mam, przejrzałem, a obecnie książka (w wersji papierowej) leży na półce i się kurzy, bo w ogóle nie ma porównania do kursu Forbota. Generalnie moje wrażenia są takie, że jest trochę teorii, ale zdecydowana większość książki to projekty pokazujące działania różnych(przypuszczam że bardzo drogich) modułów, np. panelu dotykowego i modułu gps, z tego co pamiętam. Więc, o ile jestem kompetentny żeby się wypowiedzieć na temat książki której w sumie nie czytałem w całości, radziłbym uczyć się z innych źródeł.

  • Lubię! 1
3 godziny temu, StefanekP napisał:

Więc, o ile jestem kompetentny żeby się wypowiedzieć na temat książki której w sumie nie czytałem w całości, radziłbym uczyć się z innych źródeł

Książkę ju kupiłem i pewnie wyrobię sobie na jej temat jakieś zdanie. Z innych źródeł bardzo chętnie skorzystam. Szczególnie jak podpowiesz, które są godne uwagi.

Może ktoś zna jakieś perełki... @Elvismyślałem, że coś odpiszesz... 😋

  • Lubię! 1
1 godzinę temu, Elvis napisał:

@pmochocki Ja oczywiście polecam kurs Forbota 😉 A co do perełek to najlepsza jest dokumentacja producenta - niestety do Cube HAL jest raczej słaba. Więc polecam czytanie Reference Manual, gdzie są opisane same moduły sprzętowe, a później przeglądanie jak zostały obsłużone w HAL-u. Moim zdaniem Reference Manual to najlepsze źródło wiedzy o STM32.

Ale żeby przeczytać całą dokumentację? 

 Ja właśnie myślałem że szukanie informacji w dokumentacji jest jedną z umiejętności niezbędnych do programowania STMów(niestety tą, która mi najtrudniej przychodzi i której nie wiem jak się nauczyć).

5 minut temu, StefanekP napisał:

Ale żeby przeczytać całą dokumentację? 

Wariactwo 😉 szukasz po instrukcji tego co akurat potrzebujesz np: ADC interrupt i przechodzisz do strony. Niema szans zapamiętać całego manuala i w ogóle niema to sensu ze względu na tak szeroką gamę mikrokontrolerów ST

6 minut temu, StefanekP napisał:

Ale żeby przeczytać całą dokumentację? 

Nie trzeba czytać od razu całej, szczególnie że ciężko byłoby pewnie wszystko zapamiętać. Ale jak chcesz się dowiedzieć więcej o danym module peryferyjnym, przykładowo GPIO, ADC, czy UART, to warto przeczytać dany rozdział z Reference Manuala. Używając HAL-a można pominąć rejestry, warto natomiast przeczytać opis samego modułu. To bardzo ułatwia zrozumienie działania układu.

  • Lubię! 1
1 minutę temu, _LM_ napisał:

niema to sensu ze względu na tak szeroką gamę mikrokontrolerów ST

To też nie do końca prawda. Większość modeli używa tych samych modułów peryferyjnych. Czasem wręcz na poziomie rejestrów jest większa zgodność między różnymi modelami STM32 niż w bibliotekach HAL 🙂

  • Lubię! 1
3 godziny temu, StefanekP napisał:

Ale żeby przeczytać całą dokumentację? 

Tu nie chodzi o przeczytanie tylko studiowanie dokumentacji.

Czytasz raz, nie rozumiesz, czytasz drugi raz i tak dalej, jak Forrest Gump z demontażem karabinu, aż do perfekcji 🙂

1 godzinę temu, Zealota napisał:

Czytasz raz, nie rozumiesz, czytasz drugi raz i tak dalej, jak Forrest Gump z demontażem karabinu, aż do perfekcji 🙂

Ja tak zazwyczaj nie czytam dokumentacji. Wystarczą fragmenty, które są Tobie akurat potrzebne....

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...