Kursplan för Programmering av enkapseldatorer

Microcontroller Programming

Kursplan

  • 10 högskolepoäng
  • Kurskod: 1TE663
  • Utbildningsnivå: Avancerad nivå
  • Huvudområde(n) och successiv fördjupning: Teknik A1N, Datavetenskap A1N, Inbyggda system A1N

    Huvudområde(n) och successiv fördjupning

    Koden visar kursens utbildningsnivå och fördjupning i förhållande till andra kurser inom huvudområdet och examensfordringarna för generella examina:

    Grundnivå
    G1N: har endast gymnasiala förkunskapskrav
    G1F: har mindre än 60 hp kurs/er på grundnivå som förkunskapskrav
    G1E: innehåller särskilt utformat examensarbete för högskoleexamen
    G2F: har minst 60 hp kurs/er på grundnivå som förkunskapskrav
    G2E: har minst 60 hp kurs/er på grundnivå som förkunskapskrav, innehåller examensarbete för kandidatexamen
    GXX: kursens fördjupning kan inte klassificeras.

    Avancerad nivå
    A1N: har endast kurs/er på grundnivå som förkunskapskrav
    A1F: har kurs/er på avancerad nivå som förkunskapskrav
    A1E: innehåller examensarbete för magisterexamen
    A2E: innehåller examensarbete för masterexamen
    AXX: kursens fördjupning kan inte klassificeras.

  • Betygsskala: Underkänd (U), godkänd (3), icke utan beröm godkänd (4), med beröm godkänd (5)
  • Inrättad: 2010-03-16
  • Inrättad av: Teknisk-naturvetenskapliga fakultetsnämnden
  • Reviderad: 2018-08-30
  • Reviderad av: Teknisk-naturvetenskapliga fakultetsnämnden
  • Gäller från: vecka 30, 2019
  • Behörighet: 120 hp inom teknik/naturvetenskap, varav 60 hp inom datavetenskap, inklusive kurser i datorarkitektur och imperativ programmering. Alternativt 120 hp inom teknik/naturvetenskap, varav 60 hp inom elektroteknik, inklusive kurser i analog och digital elektronik, samt imperativ programmering.
  • Ansvarig institution: Institutionen för teknikvetenskaper

Mål

Efter godkänd kurs ska studenten kunna:

  • självständigt konstruera och realisera ett inbyggt system baserat på en åttabitars enkapseldator, med hänsyn tagen till energiförbrukning och eventuella mjukvarufel,
  • programmera en enkapseldator i C, inklusive konfigurering av hårdvara och avbrottsrutiner,
  • hantera parallella processer med olika prioritet och realtidskrav utan hjälp av ett operativsystem,
  • välja datatyper och algoritmer lämpliga för arkitekturen och instruktionsuppsättningen för en given enkapseldator,
  • ge en detaljerad beskrivning av begränsningarna i den valda systemdesignen,
  • felsöka en enkapseldatorapplikation med hjälp av olika hjälpmedel.

Innehåll

Enkapseldatorers uppbyggnad och interna enheter, minnestyper. Anslutning av analoga och digital signaler, inklusive grunder i elektronik. Seriell kommunikation. Hårdvarunära programmering i C, drivrutiner, avbrottshantering. Hantering av parallella processer då operativsystem saknas, processprioritering, tidsanalys, tillståndsmaskiner. Instruktions- och registeruppsättning samt adresseringsmoder för en given enkapseldatorfamilj. Effektivitetsaspekter på olika datatyper och programkonstruktioner i C. Utvecklingsverktyg. Planering och konstruktion av ett projekt baserad på en enkapseldator.

Undervisning

Föreläsningar, laborationer och projekthandledning.

Examination

Muntlig tentamen (4 hp) samt demonstration av projektuppgift (2 hp), skriftlig rapport (3 hp) och laborationer (1 hp). 
 
Om särskilda skäl finns får examinator göra undantag från det angivna examinationssättet och medge att en enskild student examineras på annat sätt. Särskilda skäl kan t ex vara besked om särskilt pedagogiskt stöd från universitetets samordnare för studenter med funktionsnedsättning.

Litteratur

Litteraturlista

Gäller från: vecka 30, 2019

Datablad till kommersiella enkapseldatorer och övriga systemkomponenter. Övrigt material som tillhandahålls under kursens gång.