Onderwijseenheid INLMIC Inleiding microcontrollers Studiebelasting: 3 CP Kwartaal: EQ1.1, EQ3D.1 Verantwoordelijke docenten: J.E.J. op den Brouw, B. Kuiper Opbouw onderwijseenheid. OEdeel INLMIC-co1 INLMIC-pr1
kwt 1 1
sbu 42 42
theo 14
pract
proj
14
toetswijze Meerkeuze Opdrachten
bs 1..10 O/V
Relevantie. De systeemingenieur is in staat systemen te bouwen met behulp van complexe componenten. Sleutelcompetenties hierbij zijn het analyseren, selecteren, configureren en programmeren van complexe componenten. Een microcontroller is een complexe digitale component die in vrijwel elk apparaat dat wij dagelijks gebruiken aanwezig is. De belangrijkste ontwerpparameters zijn snelheid, geheugenbeslag en energieconsumptie. In dit college worden de belangrijkste aspecten als interne opbouw en organisatie van computers in het algemeen en van microcontrollers in het bijzonder behandeld. Teneinde een goed inzicht in de interne werking van een microcontroller te verkrijgen wordt op assemblerniveau geprogrammeerd.
Competenties en/of leerdoelen. De beginnende beroepsbeoefenaar demonstreert dat hij een complexe digitale component kan analyseren en voor een gespecificeerde functie kan configureren en programmeren. Dit is een competentie voor een beginnende beroepsbeoefenaar. Voor een student die net kennis maakt met microcontrollers wordt de competentie vereenvoudigd. Na deze onderwijseenheid kan de student: een eenvoudig microcontrollersysteem analyseren en configureren uit een eenvoudige specificatie een algoritme opstellen eenvoudige algoritmes vertalen in een assembly-programma eenvoudige programma’s verifiëren door simulatie eenvoudige programma’s verifiëren door demonstratie op een ontwikkelboard
versie 1.12
J.E.J. op den Brouw
1
Onderwijseenheid INLMIC Inleiding microcontrollers Plaats in het curriculum. EP1.1
EP2.1
EQ1.1
EQ1.2
GESPRG Gestructureerd programmeren in C T3 P2 EC 3
INLDIG Inleiding digitale techniek
INLMIC Inleiding microcontrollers
T3
T2
P2
EC 3
P2
EC 3
MICPRG Microcontroller programmeren in C T2 P2 EC 3
Figuur 1: Plaats van INLMIC in digitale leerlijn (voltijd)
Voorkennis: Module INLDIG – Inleiding digitale techniek. Met de elementaire digitale bouwblokken die in INLDIG geïntroduceerd zijn, kunnen complexe bouwstenen als ALU, registers, decoders en multiplexers worden gemaakt, die weer de componenten van een microprocessor vormen. Module GESPRG – Gestructureerd programmeren in C. Tijdens INLMIC zal aandacht besteed worden aan de relatie tussen programmeren in C en programmeren in assembler. Module DIGSE1/2 – Digitale systeemengineering 1 en 2 Complexe systemen kunnen eenvoudig beschreven worden met de taal VHDL die geintroduceerd is in DIGSE1. In DIGSE2 is de opbouw van een eenvoudige microprocessor behandeld.
Voorbereidend voor: Module INLMIC is toeleverancier voor module MICPRG en project PROBAS (niet weergegeven, voltijd). Tijdens MICPRG wordt verdergegaan met de AVRmicrocontroller; er wordt meer hardware besproken en het programmeren geschiedt in C. PROBAS is het afsluitende project van de basis. Hier worden alle vakgebieden gecombineerd.
versie 1.12
J.E.J. op den Brouw
2
Onderwijseenheid INLMIC Inleiding microcontrollers Onderwerpen. Programma Theorie Week Omschrijving algemeen 1 Wat is een computersysteem Wat is een microcontroller Typen processoren De opbouw van een microcontroller ALU registers multiplexers 2 De AVR microcontroller registers (algemeen, IR, PC, SP) Vlaggen, statusregister Verwerken instructies Typen geheugen Assembler programma opbouw typen instructies operands 3 Assembler programma opbouw addressing modes Port I/O input/output manipulatie I/O ports Lussen, vergelijken en beslissen 4 Stack, Subroutine Wachtlussen 5 Interrupt, Timer
6
C en assember
Lezen* H1S1, H1S2, H1S3 (t/m pag. 20), H1S4
H2S1, H2S2, H3S1, H3S2, H3S4, H3S8
H3S3, H3S5, H3S6, H3S7, H4S1, (H4S2), H4S3, H4S4, H4S5, H5S1, H5S2, H6S1, H6S2, H6S3, H6S4, (H4S8) H4S2, H4S3, sheets H11S1, H11S3, H11S4, H10S1 (t/m pag. 331), H10S2, H11S2 H8S1 (t/m pag. 260), sheets
7 Uitloop en bespreken proeftoets *Lezen uit het boek: HxSy : hoofdstuk x, sectie y
Programma Practicum Week Omschrijving 1 Leren omgaan met de software tool; tutorial 2 Fouten zoeken, werking programma achterhalen 3 Eenvoudig programma: zoek grootste getal 4 Eenvoudig programma met I/O 5 Subroutines, stack 6 Interrupts 7 Uitloop
versie 1.12
J.E.J. op den Brouw
3
Onderwijseenheid INLMIC Inleiding microcontrollers Studiemateriaal. Verplicht boek: The AVR Microcontroller and Embedded Systems; Using Assembler and C Paperback 744 pagina's Pearson Education ISBN10: 1292042567 ISBN13: 978-1-29204-256-5 Let op: internationale editie Readers: Kopieën slides via Blackboard Practicumhandleiding via blackboard Internet sites: http://www.atmel.com http://www.avrfreaks.org/ http://en.wikipedia.org/wiki/Atmel_AVR Benodigde hardware/software.
STK500 microcontroller board met ATmega32A + ICE interface AVRstudio 6.2sp2, is vrij te downloaden van Atmel.
Let op: tijdens het practicum wordt versie 6.2sp2 van AVR Studio gebruikt!
Toetsing. Theorie In week 8 van dit blok wordt een multiple-choice tentamen afgenomen. Tentamens kunnen in principe éénmaal per cursusjaar worden overgedaan. Deze herkansing vindt plaats in week 10 van het blok waarin ook het gewone tentamen plaatsvindt. Het cijfer van dit onderwijsdeel is gelijk aan het behaalde tentamencijfer of het hertentamencijfer. Dit geldt alleen als alle practicumopdrachten met een voldoende zijn beoordeeld. Is één van de practicumopdrachten onvoldoende, dan wordt dit gehele onderwijsdeel beoordeeld met een 1. Practicum Iedere practicumopdracht wordt beoordeeld tijdens de ingeroosterde practicumuren met een “O” (onvoldoende) of een “V” (voldoende). Een opdracht die met een “O” beoordeeld is, kan door de student worden verbeterd en opnieuw worden ingeleverd ter beoordeling. Als er minstens één opdracht is (of blijft) die beoordeeld is met een onvoldoende, dan wordt het practicumonderwijsdeel beoordeeld met een “O”. Practicumopdrachten kunnen in principe alleen herkanst worden in week 10 van het blok waarin ook het gewone practicum wordt gegeven. versie 1.12
J.E.J. op den Brouw
4
Onderwijseenheid INLMIC Inleiding microcontrollers Studiepunten De studiepunten voor deze module worden toegekend als het theoriedeel beoordeeld is met een cijfer hoger dan of gelijk aan 5.5 én als het practicumdeel beoordeeld is met een voldoende.
versie 1.12
J.E.J. op den Brouw
5