Procesor
Do nauki wystarczy dowolny procesor posiadający podstawowe zasoby: porty, SPI, kanał szeregowy, I2C, przetworniki ADC. Bardzo dobry stosunek ceny do możliwości daje ATmega8 na którym powstało wiele ciekawych projektów. Niestety przy ambitnych programach pisanych w językach wysokopoziomowych zacznie brakować miejsca na kod. Warto od początku wybrać procesor mocniejszy aby nie zmieniać go w trakcie rozwijania projektu np. ATmega32. Mimo wyższej ceny ten model daje duże możliwości pozwalając realizować złożone sterowniki. Zaletą starej rodziny procesorów AVR jest również możliwość programowania procesorów bardzo tanim programatorem poprzez port LPT.
Język programowania
Szybkie opanowanie pełnych możliwości języka C jest nierealne. Jest to język o bardzo złożonej, rozbudowanej i nieczytelnej składni trudnej do opanowania w początkowym stadium nauki. Kompilator pozwala na dużą swobodę tworzenia kodu co jest zaletą dla wytrawnych programistów i "drogą przez mękę" dla początkujących. Oczywiście proste algorytmy robi się szybko ale w miarę rozbudowania programu "schody" są coraz bardziej strome.
Do zdecydowanej większości projektów w naszym hobby wystarczą możliwości Bascoma. Odradzam również naukę assemblera w celach hobbystycznych, nakłady na naukę i napisanie podstawowych funkcji będą zbyt duże. Warto to robić w projektach komercyjnych gdzie liczy się zwięzłość kodu i szybkość realizacji algorytmu.
Zestaw startowy
Moim zdaniem szkoda "kasy" na zestawy startowe, które wcześniej czy później lądują bezużyteczne na dnie szuflady. Lepiej za te środki kupić dobrą książkę z opisem języka, programator oraz kilka procesorów. Skoro potrafimy w domowych warunkach wykonywać obwody drukowane to jaki problem aby samemu zrobić tani i prosty sterownik pod nasze potrzeby. Warto aby konstrukcja modułu była tak pomyślana abyśmy mogli docelowo zastosować go w jakimś przyrządzie czy nawet radiu. Do tego celu możecie Koledzy wykorzystać np. mój projekt
minikomputerka do urządzeń QRP (Atmega32, LCD 2x16, klawisze, SPI, porty na złączach).
Nauka programowania
Przykładów lekcji pokazujących obsługę pojedynczych zasobów procesora jest w sieci dużo, sposobów łączenia tych kawałków w całość niewiele.
Najlepszą formą nauki programowania jest praktyczna realizacja jakiegoś projektu (była mowa o syntezie). Zaczynamy od obsługi wyświetlacza LCD, potem klawisze, enkoder, SPI, DDS, pamięci, kanał szeregowy, CAT itd. Kompleksowe pokazanie rozwiązywania całego problemu technicznego daje najlepsze efekty edukacyjne.