Wpis z mikrobloga

Chciałbym spróbować zabawy z embedded. Kiedyś kupiłem płytke Arduino Uno (jest tam Atmega328p), ale leżało nieużywane. Docelowo interesuje mnie STM32, ale podobno od tych 8 bitowych AVR'ów łatwiej zacząć. Myślałem, żeby najpierw nauczyć się programowania tej Atmegi (ofc na rejestrach, a nie w języku Arduino), popracować z dokumentacją, a dopiero potem nabyć jakąś płytkę z STM32. Co myślicie, najpierw ogarnąć AVR czy może szkoda czasu i można zaczynać od STM32?
#embedded
  • 8
  • Odpowiedz
@dam2k01: wszystko jedno, ważne by zacząć. ARMy są bardzo powszechne (choć może kiedyś risc-v je zdetronizuje ;)) ale mają też większe noty katalogowe, czy jak tam się "datasheet" tłumaczy.
  • Odpowiedz
Zacznij od stm32 i przykładów na HALu z jakiegoś tutoriala na yt, tylko tutaj angielski jest wymagany, po polsku mało materiałów. Lub jest też (chyba na elektrodzie) dostępny super poradnik jak pisać na stm32 na rejestrach bez użycia bibliotek. Idealny na początek. Polecam też niebieską książkę Galewskiego o stm32.
  • Odpowiedz
@dam2k01: W mojej ocenie to łatwiej zacząć od STM, więcej przykładów, sporo rzeczy niskopoziomowych jest załatwione za pomocą HAL, ogólnie przyjemniej się zaczyna i łatwiej ulepić coś działającego (nawet bez wiedzy jak dokładnie działa peryferium).
Nikt nie każe Ci od razu rozumieć całego HAL'a, każde peryferium można małymi krokami poznawać i rozkładać na kolejne warstwy, w AVR masz od razu rzeźbę po rejestrach i było to coś co mnie na długo
  • Odpowiedz
@dam2k01: zależy co chcesz robić/ co cię interesuje. Jak chcesz pomigać paskiem LED na I2C/SPI to nie oszukujmy się, samo ustawianie rejestrów nie jest ciekawe i da się go wyklikać z STMCube w kilka minut.
Jeśli masz fetysz poznania rejestrów dla danego procka to też możesz zrobić to przy użyciu STM.

Ogólnie co do rejestrów to mam zdanie takie że dopóki nie chcesz pracować dla producenta kontrolerów lub firmy dostarczającej biblioteki
  • Odpowiedz