Nach Deiner Antwort zu urteilen, hast Du Dich wohl noch nie mit
hardwarenaher Programmierung beschäftigt.
Mit "lernen" meinte ich nämlich die CPU-Hardware, also die UART,
Timer, ADC/DAC, Interfaces, Portpins, Interruptlogik,
Exceptionhandling, Power-Down-Modis, Taktgeneration usw.
Statt also mit einem großen Projekt auf einer großen CPU sofort und
gründlich auf die Nase zu fallen, würde ich an Deiner Stelle lieber
erstmal mit einem kleinen 8-Bitter (z.B. ATMEGA8) die Grundlagen der
Hardwareansteuerung (LED an/aus usw.) kennenlernen.
C-Programmierung auf einem Windows-PC oder für eine Robotersteuerung
ist schon ein himmelweiter Unterschied. Ist quasi, wie das
Programmieren nochmal von Anfang an zu lernen. Nur die Syntax ist
ähnlich.
Peter