C-föreläsningar:
Delkurs i Maskinorienterad Programmering samt Programmering av Inbyggda System. Slides:
C-övningar:
Övningar i C-programmering hittar du här: Uppgifterna finns till för din egen skull, är obligatoriska, men skall inte redovisas. Lösningsförslag finns till uppgifterna - på samma sätt som facit finns till matematikuppgifter. Det ligger alltså på ditt eget ansvar att genomföra dem och lära dig ifrån dem.

Startup-project ARM:
Färdigt startup-projekt för CodeLite med ARM cross compiler för MD407. Testat på Mac OSX samt Windows 8.
Space Invaders:
Här finns ett spelexempel i CodeLite och C för Windows. Det använder alltså inte ARM cross compiler. Spelet använder ASCII-grafik i konsolen. Ofta i grundkurser för C så får eleverna endast se massa små exempelsnuttar på kod. Här har ni ett lite större och därför mer realistiskt exempel på ett C-projekt. Ni kan se de för C så typiska typedef struct... definitionerna i .h-filerna före deklarationer av funktioner. Spelet använder både arv (som i object-oriented programming) samt component-based programming.
    Objektorientering: Structarna Player och Enemy etc "ärver" structen Object genom att inkludera en medlem av typ Object i structen.
    Component-based programming: Struct Object innehåller en medlem properties som består av massa boolska flaggor av egenskaper som slås på/av för varje objekt. Dessa flaggor checkas sedan i de olika update-funktionerna:
enum { UPDATE_POS_FROM_VEL = 1, DEAD_OFF_SCREEN = 2, CLAMP_TO_SCREEN = 4, SCREEN_BORDER_BOUNCE = 8, LETHAL_ON_EXPLODING = 16 } properties;