Microcontrollers Introductie INLMIC Jesse op den Brouw INLMIC/2014-2015 Microcontroller Uit Wikipedia “A microcontroller (sometimes abbreviated µC or uC) is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals.” 2 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. 3 Relevantie In deze cursus worden de belangrijkste aspecten als interne opbouw, organisatie en programmering van een microcontroller besproken. Teneinde een goed inzicht in de interne werking van een microcontroller te verkrijgen wordt op assemblerniveau geprogrammeerd. 4 Onderwijs INLMIC-co1/pr1 – Microcontrollers Theorie Jesse op den Brouw 7x2 uur Eén toets, beoordeeld met cijfer 1 t/m 10 Practicum Harry Broeders 7x2 uur Beoordeeld met een O/V Totaal 84 SBU (3 EC) 5 Waar in de opleiding? Voltijd Jaar 2, blok 1 Voorgaande vakken: INLDIG, DIGSE1, DIGSE2, GESPRG Gevolgd door: MICPRG Duaal Jaar 3, blok 1 Voorgaande vakken: INLDIG, DIGSE1, DIGSE2, GESPRG Gevolgd door: MICPRG 6 Leerdoelen 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. 7 Keuze microcontroller Gekozen is voor de ATmega32(A) van de firma Atmel Eenvoudig om te leren en te gebruiken Wordt zeer veel in de praktijk gebruikt Veel te vinden op internet Goede en goedkope ontwikkelomgeving voor studenten Ontwikkelomgeving Goede IDE met assembler GNU C/C++ compiler Goedkope debug/tracer 8 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 goed op: internationale editie, paperback € 86,- bij bol.com Wordt ook gebruikt bij MICPRG 9 Alternatieve boeken Er zijn enkele alternatieven Embedded System Design With The Atmel Avr Microcontroller (Engels, C) Programming and Customizing the Avr Microcontroller (Engels, gedateerd) AVR, hardware en C-programmering in de praktijk (Nederlands, C) AVR-microcontrollers (Nederlands, gedateerd, assembler, weinig info) Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie (Duits, C en assembler, volledig) AVR – An Introductionary Course (Engels, assembler, gedateerd, niet volledig), 10 Week 1 Introductie microcontroller Wat is een computersysteem? Wat is een microcontroller? Typen processoren Opbouw van een microcontroller ALU Registers Multiplexers H1S1, H1S2, H1S3 (tm p20), H1S4 11 Week 2 Opbouw ATmega32 controller Registers Algemeen, IR, PC, SP, flags, statusregister Verwerking instructies Ophalen instructies, decoderen, uitvoeren Typen geheugen Registers, I/O, SRAM, Flash, eeprom Geheugenmap H2S1, H2S2, H3S1, H3S2, H3S4, H3S8 12 Week 2 – vervolg Instructies Typen instructies Operands H2S1, H2S2, H3S1, H3S2, H3S4, H3S8 13 Week 3 Addressing modes Voorbeelden assemblerprogramma’s Port I/O Lussen, vergelijken en beslissingen H3S3, H3S5, H3S6, H3S7, H4S1, (H4S2), H4S3, H5S1, H5S2, H6S1, H6S2, H6S3, H6S4, (H4S8) 14 Week 4 Stack Subroutine Parameteroverdracht Wachtlussen H4S2, H4S3, sheets 15 Week 5 Interrupt Timer H11S1, H11S3, H11S4, H10S1 (tm p331), H10S2, H11S2 16 Week 6 C en assembler Simpele variabelen Pointer, array’s Beslissen Lussen (while, for, do-while) Functies H8S1 (tm p260), sheets 17 Week 7 Uitloop Bespreking proeftoets 18 Practicum Docent: Harry Broeders Aanwezigheid verplicht Beoordeling voldoende/onvoldoende Practicumkaart Voor het practicum stof bestuderen/programma ontwerpen 19 Practicum Week 1: tutorial Week 2: fouten opsporen, werking programma uitleggen Week 3: eenvoudig programma, zoek grootste getal Week 4: eenvoudig programma met I/O Week 5: stack, subroutines Week 6: interrupts, Timer/Counter 0 Week 7: uitloop 20 De Haagse Hogeschool, Delft 015-2606311 [email protected] www.dehaagsehogeschool.nl
© Copyright 2024 ExpyDoc