Lektioner
Kompletterande information/anvisningar läggs upp under kursens gång.
1:
Kursintroduktion
Översikt av ARM-arkitekturen,
introduktion till laborationssystem och utvecklingsmiljöer
Måndag 31/10, 15:15-17:00 i HA4
Presentationsbilder
·Kursintroduktion, Översikt
av ARM-arkitekturen [ PDF]
2:
Grundläggande C-programmering - del 1
Programstruktur, enkla typer och
operatorer, tilldelningar och funktioner
Tisdag 1/11, 13:15-15:00 i HC1
Presentationsbilder
·C-programmering 1 [ PDF ]
Övningsuppgifter
·C förel. 1 [HTML]
3: Assemblerprogrammering - del 1
Kodgenerering:
tilldelningar, uttryck, programflöde och subrutiner
Onsdag 2/11, 10:00-11:45 i HC2
Presentationsbilder
·Assemblerprogrammering 1 [ PDF ]
Läsanvisningar
·Arbetsbok,
kapitel 2
·Quick-guide,
instruktionslistan
4: Assemblerprogrammering - del 2
Kodgenerering:
Subrutiner: parametrar, returvärden och lokala variabler
Måndag 7/11, 15:15-17:00 i HA4
Presentationsbilder
·Assemblerprogrammering 2 [ PDF ]
Läsanvisningar
·Arbetsbok,
kapitel 2
·Quick-guide,
instruktionslistan
5: Grundläggande C-programmering - del 2
Pekare och fält
Tisdag 8/11, 13:15-15:00 i HC1
Presentationsbilder
·C-programmering 2 [ PDF
]
Övningsuppgifter
·C förel. 2 [HTML]
6: Assemblerprogrammering - del 3
Kodgenerering:
konstanta pekare, pekararitmetik, operatorer på fält
Onsdag 9/11, 10:00-11:45 i HC2
Presentationsbilder
·Assemblerprogrammering 3 [ PDF ]
Läsanvisningar
·Arbetsbok,
kapitel 2
·Quick-guide,
instruktionslistan
7: General purpose
Input/Output (GPIO)
Digital
IO, programmering av enkelt tangentbord ”keypad”.
Måndag 14/11, 15:15-17:00 i HA4
Presentationsbilder
·GPIO [ PDF
]
·Tavlan [ PDF ] – läggs upp efter lektion
Läsanvisningar
·Arbetsbok,
kapitel 4
·Quick-guide,
GPIO
8:
Synkronisering
Programmering
av räknarkrets och, programmering av LCD ASCII-display
Ang.
diskussion om ”ctrlbit_clear”, kan jag nu hålla med om att studentens
anmärkning var helt riktig. Tavellösning nedan är ändrad. Anledningen till att
gamla lösningen fungerar är förstår att ”ctrlbit_set” som regel anropas först,
och här sätts ju B_SELECT-biten för att sedan aldrig ändras…
Tisdag 15/11, 13:15-15:00 i HC1
Presentationsbilder
·Synkronisering [ PDF ]
·Tavlan [ PDF
] – läggs upp efter lektion
Läsanvisningar
·Arbetsbok,
kapitel 5
9:
Grundläggande C-programmering - del 3
Sammansatta
datatyper, ”strukter”, funktionspekare.
Onsdag 16/11, 10:00-11:45 i HC2
Presentationsbilder
·C-programmering 3 [ PDF
]
Övningsuppgifter
·C förel. 3 [HTML]
10: INGEN PLANERAD LEKTION
Måndag 21/11, 15:15-17:00 i HA4
11:
C-programmering - del 4
Mer
programstruktur och dynamisk minnesallokering
Tisdag 22/11, 13:15-15:00 i HC1
Presentationsbilder
·C-programmering 4 [ PDF ]
Övningsuppgifter
·C förel. 4 [HTML]
12:
Demonstrationsövning
Programmering
av grafisk display
Onsdag 23/11, 10:00-11:45 i HC2
Presentationsbilder
·Grafisk display [ PDF ]
13:
Undantagshantering och interna avbrott
ARM
Cortex-M4 ”exceptions”, programmering av undantagshantering.
Måndag 28/11, 15:15-17:00 i HA4
Presentationsbilder
·Undantagshantering [ PDF ]
·Tavlan [ PDF ] – läggs upp
efter lektion
Läsanvisningar
·Arbetsbok,
kapitel 6
·Quick-guide,
vektortabell
·STM32F4xx Cortex M4 programming manual
oKap 2.3
“Exception model”
oSCB,
sidor 206-226 översiktligt
14:
Externa avbrott
Bugfixade
presentationsbilder: PC3->PC0, samt bild på stacken vid TASK-switch…
Glöm
inte att SIMSERVER och ETERM8 måste uppgraderas till versioner 2016-11-21 för
att exemplen med undantagshantering ska fungera!
Anslutning
av extern ”avbrottsvippa”, programmering med konfigurering och hantering av
externa avbrott. Introduktion till ”time-sharing”, enkel ”task-switch”.
Tisdag 29/11, 13:15-15:00 i HC1
Presentationsbilder
·Externa Avbrott [ PDF ]
Läsanvisningar
·Arbetsbok,
kapitel 6
·Laborationskort
IRQ Flip Flop
·Quick-guide
·STM32F4xx Cortex M4 programming manual
oNVIC,
sidor 194-205, översikligt
·STM32F407 reference manual
oInterrupts and events (NVIC-EXTI, kap 12, 368-384
oSYSCFG,
kap 9 (EXTI) , 286-298
15:
Seriekommunikation
Nätverkstopologier,
nätverksprotokoll, asynkron/synkron överföring. Programmering av USART.
Onsdag 30/11, 10:00-11:45 i HC2
Presentationsbilder
·Seriekommunikation [ PDF ]
·Tavlan [ PDF ] – läggs upp
efter lektion
Läsanvisningar
·Arbetsbok,
kapitel 7
·Quick-guide
16: INGEN PLANERAD LEKTION
Måndag 5/12, 15:15-17:00 i HA4
17:
Programbibliotek
Användning
av programbibliotek: kompilatorbibliotek, flyttal och C-bibliotek. Så skapar du
ett eget programbibliotek
Tisdag
6/12, 13:15-15:00 i HC1
Presentationsbilder
·Programbibliotek [ PDF ]
·Mall för programbibliotek ”md407-static-library” [ ZIP ]
18:
C-programmering - del 5
Programmering
av grafisk display
Onsdag 7/12, 10:00-11:45 i HC2
Presentationsbilder
·C-programmering 5 [ PDF ]
19: INGEN PLANERAD LEKTION
Måndag 12/12, 15:15-17:00 i HA4
20:
Assemblerprogrammering - fördjupning
Fördjupning
kring assemblerprogrammering, tabellerade funktionsadresser, lagringsklasser,
mer om parameteröverföring, registerspill, kodgenereging – ISA och
kodoptimering.
Tisdag 13/12, 13:15-15:00 i HC1
Presentationsbilder
·Assemblerprogrammering - fördjupning [ PDF ]
·Tavlan [ PDF ] – läggs
upp efter lektion
21:
Sammanfattning av kursen
Repetition,
genomgång av kursens lärandemål samt förberedelser inför tentamen.
Onsdag 14/12, 10:00-11:45 i HC2
Presentationsbilder
·Sammanfattning av kursen [ PDF ]