Denna webbsida fungerar både som kurs-PM och som medium för
distribution av information gällande kursen. Informationen kommer att
uppdateras under kursens gång, så besök webbsidan regelbundet . För allmän information om kursen konsultera
kursens hemsida på Studieportalen.
2016-01-08 UPPSAMLING, laborationer:
Fredagen 15/1, 8.00-11.45 har vi ett extra laborationstillfälle för er som ännu inte godkänts. Ingen bokning behövs, det är bara att gå dit!.
2015-12-07: "drMemory" finns nu på resurssidan.
2015-11-10: Lab PM, uppgift 1.1 finns inte (leta inte efter den...)
Time Edit: Övning för grupp D, ska vara onsdagstiden.
Resurssidan har uppdaterats med kompletterande material.
Personal
Examinator och föreläsare: Roger Johansson
Föreläsare: Ulf Assarsson
Övningsledare: Daniel Toom
Laborationschef: Johan Olofsson
Handledare: Johan Olofsson, Andreas F Wieden, Dan Dolonius, Sverker
Rasmusen.
Detaljerad
kontaktinformation hittar du här.
Organisation
Kursen omfattar föreläsningar,
demonstrationsövningar, konsultationspass, simulatorövningar och laborationer.
Föreläsningar och demonstrationsövningar sker i storgrupp och
ägnas åt att förmedla nödvändiga grundläggande teoretiska kunskaper i
ämnet, och genom demonstrationer ge exempel på hur teorin tillämpas.
Konsultationspassen sker också i
storgrupp och skall ses som ett komplement till föreläsningarna. Ofta
ägnar man en inledande del av passen åt att gå igenom saker i kursen som
inte är direkt relaterat till den grundläggande teorin, t ex
kurshemsidor, PingPong och programvara för simulatorer. Under resten av
passen varvas räkneexempel för den
teori som avhandlats vid föreläsningarna med frågestund där studenten
kan ställa frågor till föreläsaren om
kursens innehåll, t ex sådant som man inte har förstått från
föreläsningarna.
Simulatorövningarna sker i mindre grupper
och ägnas åt att utföra det arbete som anvisas som självverksamhet i
veckoplaneringarna och förberedelsearbete för laborationerna. Vid
simulatorövningarna kan man också fråga handledarna om sådant i kursen
som man inte har förstått.
Fem obligatoriska laborationer skall utföras
i främst grupper om två studenter. Laborationerna
startar i läsvecka 3 .
Aktuellt och detaljerat schema för
ovanstående aktiviteter hittar du i
TimeEdit.
Syfte och mål
Kursens syfte är att vara en introduktion till konstruktion
av små inbyggda system och att ge en förståelse för hur imperativa
styrstrukturer översätts till assembler samt för de svårigheter som
uppstår vid programmering av händelsestyrda system med flera
indatakällor.
Kursen innehåller moment som låter eleven konstruera större
och större programblock i assembler och C. Resultatet blir ett
"tidsdelningssystem" för två parallella processer. Processerna styr
en borrmaskin och en sifferindikator för tid- och temperaturvisning.
Första delen av kursen koncentreras kring programutveckling
i assemblerspråk. Därefter inhämtas grunderna för programmering i C.
Slutligen kombineras programutveckling i C och assembler.
I pedagogiskt syfte används en enkel borrmaskin och
traditionella in- utmatningsenheter som tangentbord och
sifferindikatorer. Utrustningen används tillsammans med en mikrodator
(68HC12). Allt finns tillgängligt både i form av maskinvara och som
enheter i en simulator. Utrustningen används både för C- och
assemblerprogrammering.
Efter fullgjord kurs ska studenten kunna
· skriva
enkla assemblerprogram med användande av den valda arkitekturens
instruktionsuppsättning.
· skriva
enkla C-program med användande av programspråkets datatyper och
styrstrukturer.
· beskriva
motsvarigheten i assembler till typiska programstrukturer i C.
· utnyttja
de i kursen använda verktygen för programutveckling på ett adekvat
sätt.
· konstruera
system innefattande olika typer av undantag (interna undantag,
avbrott, återstart).
· beskriva
och exemplifiera några olika typer av digitala kringkomponenter och
deras användning.
Examination
Kursens innehåll examineras medelst en
skriftlig tentamen på hela kursen (4,5 hp) samt en uppsättning
laborationsuppgifter (3 hp).
Betyg (U, 3-5) ges baserat på
tentamensresultat. För godkänt slutbetyg (3-5) i kursen fordras godkänd
skriftlig tentamen och godkända laborationsuppgifter.
Kurslitteratur
Program (Windows) som används i kursen, finns
såväl i STUDAT-datorer som i laborationssalar, du rekommenderas också
installera dem på egna datorer du använder för dina studier.
Följande kurslitteratur används, observera att
övervägande delen är på elektronisk form:
-
Lärobok: Välj mellan att använda någon av följande:
-
Vägen till C, Bilting/Skansholm, studentlitteratur ISBN 978-91-44-07606-5, bokens
hemsida. Finns på Cremona.
-
The C-programming language, Kernighan/Ritchie, finns som
PDF här.
-
Arbetsbok för MC12, Johansson/Snedsböl, finns på Cremona.
Utöver ovanstående används följande material som du kan ladda ner
från resurssidan. Där hittar du
också länkar till programdistributioner och annat material på
elektronisk form.
-
Utdrag ur lärobok: Maskinnära programmering med HC12,
Johansson
-
Maskinnära programmering - exempelsamling
-
Programmering av inbyggda system – laborationer för IT – Tryckt
version tillhandahålls kostnadsfritt för kursdeltagarna
-
Instruktionslista: HCS12 Reference guide - Tryckt version
får användas under tentamen
-
Quick guide: C-reference card ANSI - Tryckt version får
användas under tentamen.
Kursutvärdering
Ett sätt att påverka kvaliteten och
innehållet i din utbildning är att delta i kursutvärderingen i samband
med varje kurs. Dina erfarenheter som student är nödvändig för att
kurserna Chalmers ger ska hålla så hög kvalitet som möjligt.
Studentrepresentanter:
|
FREDRIK BURHÖI BENGTSSON
(freb@student.chalmers.se) |
|
FILIP HALLQVIST
(filhallq@student.chalmers.se) |
|
ANTON INGVARSSON
(ianton@student.chalmers.se ) |
|
FILIP SLOTTNER SEHOLM
(seholm@student.chalmers.se) |
|
OLIVER TUNBERG
(olivert@student.chalmers.se) |
Läs mer om
kursutvärderingsprocessen på Chalmers
här.