Laboration Datorteknik TSIU02 2. I/O-programmering

Storlek: px
Starta visningen från sidan:

Download "Laboration Datorteknik TSIU02 2. I/O-programmering"

Transkript

1 Laboration Datorteknik TSIU02 2. I/O-programmering Stefan Gustafsson version 1.1

2 1. Inledning Laboration: I/O-programmering Du skall i denna laboration programmera TUTOR till att signalera i Morsekod. Det är som alltid viktigt att du förbereder den här laborationen väl innan du kommer till lablokalen. En del av programmet du skall knappa in får du färdigskrivet i styckena nedan. En del får du dock skriva själv, och detta skall förberedas så noga du kan i förväg. På laborationen skall du sätta ihop alltsammans till en fungerande helhet och provköra det, eventuellt felsöka det tills det fungerar som avsett, samt slutligen göra vissa mindre ändringar. De egentliga laborationsuppgifterna finner du i avsnitten 11, 12 och 13. Resten av denna laborationshandledning är förberedelseuppgifter och information. 2. Tonsignalering med binära utgångar TUTOR-kortet har bara digitala utgångar, och man kan fråga sig hur man sänder ut en ton på en sådan. Svaret är att det går alldeles utmärkt att ansluta en örsnäcka till en digital utgång som man växlar mellan hög och låg nivå i snabb takt. Det blir ingen vacker ton, men det låter i alla fall. Du skall använda någon av utgångarna på parallellporten. Det finns många att välja bland, men du behöver bara en. Koppla in den ena av örsnäckans anslutningar till utgången du valt. Koppla den andra anslutningen till matningsspänningen (5V). 1 Stoppa inte in örsnäckan i örat när du senare skall provköra ditt program! En 5 volts fyrkantvåg ger en stark och rå ton som bäst avlyssnas på litet håll. Låt örsnäckan ligga på bordet så slipper du bli lomhörd. 3. Morsekoden Morsekoden är faktiskt ett mycket tidigt exempel på en kod för asynkron seriell dataöverföring. Den konstruerades redan på 1800-talet av amerikanen Samuel Morse. Morsekoden består av korta och långa tonsignaler som i olika kombinationer betecknar olika tecken. En kort signal ( prick ) är 1 tidsenhet lång, och en lång signal ( streck ) 3 tidsenheter. Mellan signalerna skall det vara 1 tidsenhets tystnad. Mellan tecken skall det vara 3 tidsenheter tystnad, och mellan ord skall det vara 7 tidsenheters tystnad. Tidsenheten det talas om här bör vara ganska lång med datormått mätt, omkring 50 ms, för att koden skall kunna uppfattas av människor. Morsekoden återges i tabellen på nästa sida, tillsammans med en lämplig binär kodning i 8 bitar av följden av prickar och streck. Binärkoden läses från vänster bitvis. En etta motsvarar ett streck, och en nolla motsvarar en prick. Morsetecknen är olika långa, så längden måste markeras på något sätt. I kodningen i tabellen är ettan längst till höger i byten en slutmarkering, som alltså inte ingår i själva Morsekoden. Tanken med denna kodning är att man skall läsa av bit för bit genom att skifta byten ett steg i taget åt vänster och låta innehållet i C-flaggan bestämma om man skall sända ut prick eller streck. När den sista ettan skiftats ut i C-flaggan är byten noll, och man kan på så sätt detektera när tecknet är slut. 1. Du kan koppla den andra anslutningen till jord om du vill, men digitala utgångar är oftast bättre på att leda mycket ström in i kretsen vid låg nivå än ut ur kretsen vid hög nivå, så du belastar inte PIA-kretsen lika hårt om du kopplar örsnäckan mellan utgången och 5V.

3 Tkn ASCII Morsekod Binärkod Hex Tkn ASCII Morsekod Binärkod Hex A $ $60 Å $5D $6C B $ $88 Ä $5B $58 C $ $A8 Ö $5C $E8 D $ $90 0 $ $FC E $ $40 1 $ $7C F $ $28 2 $ $3C G $ $D0 3 $ $1C H $ $08 4 $ $0C I $ $20 5 $ $04 J $4A $78 6 $ $84 K $4B $B0 7 $ $C4 L $4C $48 8 $ $E4 M $4D $E0 9 $ $F4 N $4E $A0. $2E $56 O $4F $F0, $2C $CE P $ $68 : $3A $E2 Q $ $D8 ; $3B $AA R $ $50? $3F $32 S $ $10 $ $7A T $ $C0 - $2D $86 U $ $30 / $2F $94 V $ $18 ( $ $B4 W $ $70 ) $ $B6 X $ $98 $ $4A Y $ $B8 = $3D $8C Z $5A $C8 4. Programmets allmänna struktur Uppgiften sänd ut en sträng i Morsekod måste brytas ner i hanterligare deluppgifter om man skall kunna programmera TUTOR för detta. En lämplig uppdelning i successivt mindre deluppgifter visas i tabellen på nästa sida. Kolumnen längst till vänster beskriver huvudproblemet. För varje kolumn delas vissa komplicerade uppgifter upp i nya delproblem. Längst till höger i varje rad har vi brutit ner problemet i så pass enkla uppgifter att vi kan programmera dem direkt i assembler. Denna successiva uppdelning i delproblem lämpar sig mycket väl för att programmeras som en samling subrutiner i flera nivåer. Vi sätter namn på de subrutiner som behövs, och behandlar dem i tur och ordning i följande stycken. Översätt ett tecken till Morsekod Vänta en halv period Sänd ett streck eller en prick Sänd ett tecken Huvudprogram: starta, sänd ut sträng, avsluta LOOKUP DELAY BEEP SEND MAIN För att du och eventuellt också assistenten skall hitta i TUTOR:s minne rekommenderas att du lägger dina subrutiner, dina data och din stack på följande adresser. MAIN $2000 Sträng $6000 LOOKUP $2100 Morsetabell $7000 SEND $2200 T för DELAY $7100 BEEP $2300 N för BEEP $7104 DELAY $2400 Stackpekare $8000

4 Nivå 1 (sträng) Start Sänd ut en sträng i Morsekod Slut Nivå 2 (tecken) Hämta ett tecken. Om strängen är slut, sluta. Översätt tecknet till Morsekod Sänd ut tecknet Hämta nästa tecken Nivå 3 (streck/prick) Kolla om vi skall sända ut ett streck eller en prick. Om tecknet är färdigt, hoppa ur. Om prick: sänd kort ton och kort tystnad Om streck: sänd lång ton och kort tystnad. Sänd ut nästa streck/prick Nivå 4 (ton/paus) Ladda register med N. Om streck, multiplicera registret med 3. Sänd ut en ton vars längd bestäms av registrets innehåll. Ladda register med N. Sänd ut en paus vars längd bestäms av innehållet i registret. Nivå 5 (enstaka perioder) Sänd ut en period av tonen. Räkna ned i registret. Om noll, hoppa ur, annars upp och sänd en period till. Sänd ut en period tystnad. Räkna ned i registret. Om noll, hoppa ur, annars upp och sänd en period till. Nivå 6 (utbit 1/0) Sätt utgången till 1 Vänta en halv period T. Sätt utgången till 0 Vänta en halv period T. Vänta en hel period 2T.

5 5. LOOKUP: Översättning til Morsekod För att översätta ett tecken från ASCII till Morse använder man lämpligtvis tabellslagning. Med hjälp av en tabell med början på adress $7000 enligt nedan, så kan man enkelt översätta från ASCII till Morse genom att läsa talet på den position i tabellen som anges av ASCII-koden. Adress Innehåll Kommentar $7000 $00 Ej skrivbara tecken... $00 $7040 $00 $7041 $60 A $7042 $88 B $7043 $A8 C $7044 $90 D $7045 $40 E $7046 $28 F... $00 $705A $C8 Z $705B $58 Ä $705C $E8 Ö $705D $6C Å $705E $00 Tecken som inte är skrivbara eller inte har någon motsvarighet i Morsekoden, samt tecken som man helt enkelt inte orkar mata in, markeras lämpligen med värdet 0 i tabellen. Tabellen matas lämpligen in med kommandot MM, eventuellt med hjälp av kommandot BF för att nollställa hela tabellen (256 bytes) innan man börjar mata in data. För att slå i tabellen kan följande subrutin användas. ASCII-koden för ett tecken skall ligga i D0 (8 bitar) vid anropet. Morsekoden returneras i D0. LOOKUP: LEA $7000,A1 ; Peka på tabellen AND.W #$00FF,D0 ; Gör D0 till 16 bitar MOVE.B (A1,D0.W),D0 ; Hämta Morsekoden RTS 6. DELAY: Tidsfördröjning Följande programsnutt ger en tidsfördröjning vars längd beror på talet på adressen $7100. DELAY: MOVE.L $7100,D3 ; Hämta fördröjning T WAIT: SUBQ.L #1,D3 ; Räkna ned med 1 BNE WAIT ; Om D3<>0: räkna vidare RTS ; Hoppa tillbaka Du måste förstås byta ut den symboliska hopppadressen WAIT i hoppinstruktionen mot den faktiska adress som instruktionen SUBQ.L hamnar på när du skriver in programmet. Detsamma gäller för alla andra symboliska hopadresser ( labels ) i det följande. För kommentarer om hur man matar in hopp framåt till okända adresser, se häftet TUTOR M68008 system och assembler, avsnitt 5.9. Med talet $000000DA (218 decimalt) på adressen $7100 tar rutinen DELAY ungefär 1 ms. Vilken frekvens ger detta för tonen som sänds ut av BEEP?

6 7. BEEP: Sänd ut ton eller paus En ton sänds ut med hjälp av följande rutin. Ett antal perioder som anges av innehållet i registret D1 sänds. För att inte behöva skriva en nästan likadan subrutin till låter vi rutinen även kunna sända ut en stunds tystnad. För ton sätts D2 till 1 före anrop, för tystnad sätts D2 till 0. BEEP: BSR DELAY BSR DELAY SUBQ.L #1, D1 BNE BEEP RTS ; Om D2=1: ettställ utbiten, ; annars nollställ utbiten. ; (Tips: instruktionen Scc!) ; Vänta en halv period ; Nollställ utbiten ; Vänta en halv period ; Räkna ned D1 ; Om D1>0: fortsätt pipa Notera att den eller de instruktioner som krävs för att ettställa och nollställa utbiten utelämnats. Vilka instruktioner som skall användas beror på vilken utgång du väljer att använda. Det är din uppgift att välja en lämplig utgång och fylla i dessa instruktioner. 8. SEND: Sänd ut ett tecken För att sända ut ett tecken kan följande rutin användas. Morsetecknet i binär representation enligt tabellen i avsnitt 5 skall ligga i D0 vid anropet. SEND: MOVE.L $7104,D1 ; Hämta antal perioder N för prick LSL.B #1,D0 ; Skifta upp nästa symbol i Morsekoden BEQ READY ; Om D0=0 är tecknet slut BCC DOT ; C=0: prick, C=1: streck DASH: MULU #3,D1 ; Multiplicera D1 med 3 DOT: MOVE.B #1,D2 ; Ladda D2 med 1 för ton BSR.L BEEP ; Sänd ut prick/streck MOVE.L $7104,D1 ; Hämta N igen MOVE.B #0,D2 ; Ladda D2 med 0 för paus BSR.L BEEP ; Sänd paus efter prick/streck BRA SEND ; Sänd ut nästa prick/streck READY: ASL.L #1,D1 ; Öka D1 till 2N MOVE.B #0,D2 ; Ladda D2 med 0 för paus BSR.L BEEP ; Sänd ut extra paus efter tecknet RTS ; Hoppa tillbaka från subrutinen Ett tal N hämtas från adress $7104. Detta tal anger hur många perioder BEEP skall sända ut för en kort ton. Vilket tal skall lagras på denna adress om man vill ha en kort ton av längden 100 ms? 9. MAIN: Huvudprogrammet Huvudprogrammet skall börja med att sätta stackpekaren till $08000 och programmera parallellporten så att den utgång du valt verkligen fungerar som utgång. De anslutningar som inte används bör sättas till ingångar, om inte annat så för att kolla att du träffat rätt med bitadresserna i ditt program. För information om hur man programmerar parallellporten, se häftet TUTOR M68008 system och assembler, avsnitt 4.5.

7 Du skall själv skriva huvudprogrammet, men en del hjälp får du av skelettet nedan. MAIN: MOVE.B #$04,$10084 MOVE.B #$04,$10086 Som synes blir huvudprogrammet tämligen kort och överskådligt, eftersom det mesta av detaljarbetet sker i subrutiner, som i sin tur är tämligen lättbegripliga eftersom de också anropar subrutiner för nästa mer detaljerade nivå av databearbetning. De flesta subrutiner används visserligen bara på ett ställe i koden och skulle därför kunnat skrivas in i själva huvudprogrammet, men det blir betydligt lättare att få en överblick över programmet på det här sättet, och den extra tid som några subrutinanrop tar är i det här fallet helt försumbar. Med tanke på den mycket begränsade editorn i TUTOR är detta också det lämpligaste sättet att skriva in programmet: som små åtskilda snuttar som gör att man inte måste skriva om stora stycken om man behöver skjuta in en instruktion någonstans i efterhand. 10. Lagring av strängen som skall sändas Den sträng du skall sända ut skall lagras med början på adress $6000 och avslutas med tecknet NUL (ASCII-kod $00). Du kan exempelvis lagra strängen HEJ HOPP på detta format med TUTOR-kommandot: MS 6000 HEJ HOPP Testkörning av programmet ; Sätt stackpekaren ; Programmera PIA: nollställ CRA ; och nollställ CRB ; Programmera DDRA och DDRB. ; En bit utgång, resten ingångar ; Inga avbrott skall genereras, ; varken från port A eller port B ; Sätt utbiten till 0 LEA $6000,A0 ; Sätt A0 till att peka på strängen NEXTCH: MOVE.B (A0)+,D0 ; Hämta nästa tecken ; Om D0=0: sträng slut, gå till END ; Annars: anropa LOOKUP ; Kolla det returnerade värdet i D0 BEQ NEXTCH ; Om D0=0: gå till NEXTCH ; Annars: anropa SEND ; Gå till NEXTCH för nästa tecken END: MOVE.B #228,D7 ; Gå tillbaka till TRAP #14 ; monitorn i TUTOR Mata in hela programmet och provkör det. Om det inte fungerar skall du leta upp felet själv. Kolla att programmet är rätt inmatat, och att du matat in alla data som behövs. Kolla att alla hopp sker till rätt adresser. Kolla att du valt rätt bit som utgång, att du kopplat in örsnäckan rätt till denna bit och att utgången verkligen byter värde när du sätter biten i utregistret till 1 respektive 0. Om du kör programmet med TR skall det höras ett klick i örsnäckan när utgången växlar från 0 till 1 eller tvärt om. Om du misstänker att örsnäckan är trasig, koppla in den till matningsspänningen (den går inte sönder av det). Precis när du kopplar in den skall du höra ett knäpp eller ett frasande. Annars är den trasig och behöver bytas ut. Om felet ligger i ditt program, använd kommandona GO och BR, eventuellt GT samt det mycket användbara kommandot TR för noggrann kontroll tills du hittar felet. Om du misslyckas, försök igen. Om du misslyckas trots upprepade försök, fråga assistenten om hjälp. Vänta dig emellertid inte att du skall få annat än allmän hjälp och goda råd. Det är inte assistentens uppgift att felsöka ditt program. När du fått ditt program att fungera, sänd ut några olika meddelanden.

8 12. Ändring av sändhastighet När du fått ditt program att fungera skall du göra följande enkla ändringar: 1. Ändra hastigheten för sändning, antingen till långsammare eller snabbare hastighet. Frekvensen hos den utsända tonen skall inte ändras. 2. Ändra frekvensen hos den utsända tonen till en något högre eller något lägre frekvens. Sändhastigheten skall inte ändras. För ovanstående ändringar behöver du inte ändra i någon programkod! 13. Hantering av mellanslag Tänk efter vad som händer när ditt program träffar på ett mellanslag i strängen. Hur lång blir pausen mellan två ord? Är detta rätt enligt Morsekodens definition i stycke 3? Lägg in Morsekoden $80 för mellanslag (ASCII-kod $20) i din tabell. Hur lång blir pausen mellan två ord nu? Är detta rätt längd? Är det bättre än förut? För att hantera mellanslag helt korrekt kan man antingen kolla tecknet innan man gör tabellslagningen med LOOKUP och särbehandla ett mellanslag, eller också kan man behandla alla okända tecken (Morsekod $00 efter tabellslagningen) som mellanslag. Den senare metoden är enklast. Du skall avslutningsvis i laborationen göra denna utökning av ditt program. Följande programsnutt skall skrivas och läggas till i slutet av ditt huvudprogram. Du kan lägga till den efter instruktionen TRAP #14 om du vill - du behöver alltså inte flytta några av de instruktioner du redan skrivit. Lägg den dock i omedelbar anslutning till ditt huvudprogram. Sedan behöver du bara ändra i en enda hoppinstruktion i det tidigare huvudprogrammet för att få mellanslag att hanteras korrekt. Vilken, och till vad, får du fundera ut själv. (Om du ändrade koden för mellanslag till $80 förut skall du dessutom ändra den tillbaka till $00 igen.) BLANK: ; Ladda D1 med N ; Öka D1 till 4N ; Ladda D2 med 0 för paus ; Sänd ut extra paus efter ord ; Gå till NEXTCH för nästa tecken

Datorteknik TSIU02 Lab 2 Morsesändare v0.7

Datorteknik TSIU02 Lab 2 Morsesändare v0.7 Inledning För att skriva program i något programspråk förenklar det att ha ett strukturerat angreppssätt. I assembler får man strukturen genom omsorgsfull användning av subrutiner. Som exempel på en mer

Läs mer

CE_O3. Nios II. Inför lab nios2time

CE_O3. Nios II. Inför lab nios2time IS1200 Exempelsamling till övning CE_O3, 2015 CE_O3. Nios II. Inför lab nios2time 3.1. Logiska operationer (se uppgift 1.2 c) Repetera (eller lär dig) innebörden av de logiska operationerna "bitvis AND",

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #17 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Tallriksmodellen Stackoperationer Element kan endast

Läs mer

7) Beskriv tre sätt att överföra parametrar mellan huvudprogram och subrutin.

7) Beskriv tre sätt att överföra parametrar mellan huvudprogram och subrutin. 1(5) Övningstentamen i Mikrodatorer och assemblerprogrammering, ELGA05 Hjälpmedel: Bifogad lista med memokoder för MC68xxx. Samtliga programmeringsuppgifter ska innehålla flödesschema med förklaringar

Läs mer

LABORATION. Datorteknik Y

LABORATION. Datorteknik Y LABORATION Datorteknik Y Avbrottsprogrammering på Darma Version 4.03 Februari 2019 (OA, KP) Namn och personnummer Godkänd 1 1 Inledning Syftet med laborationen är först att ge övning i avbrottsprogrammering

Läs mer

Arduinokurs. Kurstillfälle 4

Arduinokurs. Kurstillfälle 4 Kurstillfälle 4 CW-generering Det här kan ses som överkurs men kan ändå vara roligt för att kunna generera CW på ett enkelt sätt. Det blir en hel del nytt men vi tar det steg för steg Som alla vet gäller

Läs mer

Programmera i teknik - kreativa projekt med Arduino

Programmera i teknik - kreativa projekt med Arduino NYHET! Utkommer i augusti 2017 Smakprov ur boken Programmera i teknik - kreativa projekt med Arduino av Martin Blom Skavnes och Staffan Melin PROJEKT LJUS s 1 I det här projektet kommer du att bygga en

Läs mer

TENTAMEN Datorteknik (DO2005) D1/E1/Mek1/Ö1

TENTAMEN Datorteknik (DO2005) D1/E1/Mek1/Ö1 Halmstad University School of Information Science, Computer and Electrical Engineering Tomas Nordström, CC-lab TENTAMEN Datorteknik (DO2005) D1/E1/Mek1/Ö1 Datum: 2012-05- 23 Tid och plats: 9:00 13:00 i

Läs mer

Övningsuppgifter i Mikrodatorteknik 4p/5p

Övningsuppgifter i Mikrodatorteknik 4p/5p Övningsuppgifter i Benny Thörnberg Mittuniversitetet Inst. för Informationsteknologi och medier Hösten 2005 1 Exekvering av assemblerkod 1.1 Statusflaggors beteende Vad blir C-, N- och Z- flaggornas värden

Läs mer

PROJEKT LJUD. KOPIERINGSUNDERLAG Martin Blom Skavnes, Staffan Melin och Natur & Kultur Programmera i teknik ISBN

PROJEKT LJUD. KOPIERINGSUNDERLAG Martin Blom Skavnes, Staffan Melin och Natur & Kultur Programmera i teknik ISBN PROJEKT LJUD PROJEKT LJUD s 1 I det här projektet ska du koppla en krets som innehåller en högtalare och skriva ett program som får högtalaren att spela toner och melodier. Materiel Arduino dator kopplingsdäck

Läs mer

General Purpose registers ALU I T H S V N Z C SREG. Antag att vi behöver skriva in talet 25 till register R18

General Purpose registers ALU I T H S V N Z C SREG. Antag att vi behöver skriva in talet 25 till register R18 F3 Föreläsning i Mikrodatorteknink 2006-08-29 Kärnan i microcontrollern består av ett antal register och en ALU. Till detta kommer också ett antal portar. Det finns 64 st portar. Några är anslutna mot

Läs mer

LABORATION DATORTEKNIK Y DATORTEKNIK D

LABORATION DATORTEKNIK Y DATORTEKNIK D LABORATION DATORTEKNIK Y DATORTEKNIK D Avbrottsprogrammering på M68008 Version: 3.2 203 (OVA) Namn och personnummer Godkänd Till laboranten Inledning Syftet med laborationen är först att ge övning i avbrottsprogrammering

Läs mer

Ansvarig lärare: Olof Andersson, Telefon 021-101314 (besöker skrivsalen)

Ansvarig lärare: Olof Andersson, Telefon 021-101314 (besöker skrivsalen) MÄLRLENS HÖGSKOL Institutionen för elektroteknik Tentamen Mikrodatorteknik T3760 atum 2005-10-28 Tid 08.30 12.30 nsvarig lärare: Olof ndersson, Telefon 021-101314 (besöker skrivsalen) Om du klarat samtliga

Läs mer

Laboration 2 i Datorteknik- Assemblerprogrammering II

Laboration 2 i Datorteknik- Assemblerprogrammering II Högskolan i Halmstad 1 (8) - Assemblerprogrammering II Målet med laborationen är att få begrepp om Subrutiner. in/utparametrar. Lokala variabler Maska in bitar till ett register Konstruktion av subrutiner

Läs mer

F5: Högnivåprogrammering

F5: Högnivåprogrammering F5: Högnivåprogrammering Parameteröverföring Koppling mellan låg- och högnivåprogrammering Lokala variabler Heapen Datatyper 1 Subrutin, parameteröverföring: 1(3) Via register genom värde Skicka data via

Läs mer

F5: Högnivåprogrammering

F5: Högnivåprogrammering 1 F5: Högnivåprogrammering Parameteröverföring Koppling mellan låg- och högnivåprogrammering Lokala variabler Heapen Datatyper 1 Subrutin, parameteröverföring: 1(3) Via register genom värde Skicka data

Läs mer

LABORATION. Datorteknik Y

LABORATION. Datorteknik Y LABORATION Datorteknik Y Avbrottsprogrammering på Darma Version 4.02 Februari 2018 (OA, KP) Namn och personnummer Godkänd 1 1 Inledning Syftet med laborationen är först att ge övning i avbrottsprogrammering

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #18 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Assemblerprogrammering Assemblatorer vs kompilatorer

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #8 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Assemblatorer vs kompilatorer En assemblator är ett program

Läs mer

Datorteknik. Tomas Nordström. Föreläsning 6. För utveckling av verksamhet, produkter och livskvalitet.

Datorteknik. Tomas Nordström. Föreläsning 6. För utveckling av verksamhet, produkter och livskvalitet. Datorteknik Tomas Nordström Föreläsning 6 För utveckling av verksamhet, produkter och livskvalitet. Föreläsning 6 Vad händer vid uppstart SoC och Kringkretsar, PIO Programmering i Assembler Lab2 genomgång

Läs mer

F8: Undantagshantering

F8: Undantagshantering F8: Undantagshantering Undantagshantering i 68 Vad är ett undantag? Typer av undantag Att skriva undantagsrutiner Undantagshantering, vad och varför? Exempel: Ett system ska mäta temperatur var :e sekund

Läs mer

Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704

Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704 Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704 Svar Svar till uppgifterna lämnas på separat papper. En poäng per uppgift. Max 30 poäng. Bonuspoäng beräknas enligt följande tabell: 6-10 poäng

Läs mer

Mål. Datorteknik. Innehåll. Innehåll (forts) Hur ser ett program ut? Hur skapas maskinkoden?

Mål. Datorteknik. Innehåll. Innehåll (forts) Hur ser ett program ut? Hur skapas maskinkoden? Mål Datorteknik Föreläsning 3 Att veta hur maskinkoden för ett program byggs upp Att börja programmera i på riktigt Att kunna skriva och anropa subrutiner i Att förstå hur stacken fungerar Att veta vad

Läs mer

Datorteknik 2 (AVR 2)

Datorteknik 2 (AVR 2) Namn: Laborationen godkänd: Digitala system 15 hp Datorteknik 2 (AVR 2) LTH Ingenjörshögskolan vid Campus Helsingborg Enkel in- och utmatning. Drivrutiner. Bithantering. I denna laboration ska vi förbättra

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2017-08-15 Lokal TER4 Tid 14-18 Kurskod Provkod Kursnamn Provnamn Institution Antal frågor 6 Antal sidor (inklusive denna sida) 6 Kursansvarig Lärare som besöker skrivsalen

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2016-08-16 Lokal TER2, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive

Läs mer

CPU. Carry/Borrow IX. Programräknare

CPU. Carry/Borrow IX. Programräknare Laboration:. Jämförelser mellan assembler och C. CPU ACCA ACCD ACCB 8-bitars ackumulatorer eller 16- bitars ackumulator CCR 1 1 1 SXH I NZVC Flaggregister Carry/Borrow IX IY PC Indexregister X Indexregister

Läs mer

Stack och subrutiner Programmeringskonventionen

Stack och subrutiner Programmeringskonventionen Stack och subrutiner Programmeringskonventionen Du ska förstå hur en instruktion behandlas i processorn Du ska känna till några fler instruktioner Du ska veta hur maskinkoden för ett program byggs upp

Läs mer

Programexempel för FLEX

Programexempel för FLEX Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Konstruera styrenheten. genom att. implementera olika maskininstruktioner i styrenheten. Kunna använda

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSEA28 Datorteknik Y (och U) Föreläsning 6 Kent Palmkvist, ISY TSEA28 Datorteknik Y (och U), föreläsning 6, Kent Palmkvist 2017-01-30 2 Dagens föreläsning Avbrot Princip Avbrot på 68000 Exempel Flera nivåers

Läs mer

Institutionen för elektro- och informationsteknologi, LTH

Institutionen för elektro- och informationsteknologi, LTH Datorteknik Föreläsning 3 Assembler, stack och subrutiner, programmeringskonventionen Mål Att veta hur maskinkoden för ett program byggs upp Att börja programmera i assembler på riktigt Att kunna skriva

Läs mer

Datorteknik. Föreläsning 3. Assembler, stack och subrutiner, programmeringskonventionen. Institutionen för elektro- och informationsteknologi, LTH

Datorteknik. Föreläsning 3. Assembler, stack och subrutiner, programmeringskonventionen. Institutionen för elektro- och informationsteknologi, LTH Datorteknik Föreläsning 3 Assembler, stack och subrutiner, programmeringskonventionen Mål Att veta hur maskinkoden för ett program byggs upp Att börja programmera i assembler på riktigt Att kunna skriva

Läs mer

Laboration nr2 med enchipsdatorn PIC-16F877

Laboration nr2 med enchipsdatorn PIC-16F877 Laboration nr2 med enchipsdatorn PIC-16F877 Inledning Målet med laborationen är främst att bli bekant med skift-, villkorliga- och ovillkorligaoperationer samt hur man strukturerar enklare flödesscheman.

Läs mer

PROJEKT STAFFAN STALLEDRÄNG

PROJEKT STAFFAN STALLEDRÄNG PROJEKT STAFFAN STALLEDRÄNG PROJEKT STAFFAN STALLEDRÄNG s 1 I det här projektet ska du koppla en krets som innehåller en högtalare och en lysdiod, samt skriva ett program som får högtalaren att spela en

Läs mer

Vad är en UART? Universal Asynchronous Receiver Transmitter parallella seriella parallell åttabitars signal mest signifikant bit

Vad är en UART? Universal Asynchronous Receiver Transmitter parallella seriella parallell åttabitars signal mest signifikant bit Vad är en UART? Beteckningen UART är en förkortning för det engelska uttrycket Universal Asynchronous Receiver Transmitter, vilket översatt till svenska blir ungefär Universell Asynkron Mottagare/Sändare.

Läs mer

Dataöverföring på Parallell- och serieform MOP 11/12 1

Dataöverföring på Parallell- och serieform MOP 11/12 1 Dataöverföring på Parallell- och serieform MOP 11/12 1 Parallell dataöverföring I digitala system finns ofta behovet att flytta ett eller flera dataord från ett ställe (sändare) till ett annat ställe (mottagare).

Läs mer

Laboration Datorteknik D 1. IR-länk

Laboration Datorteknik D 1. IR-länk Laboration Datorteknik D 1. IR-länk Michael Josefsson version 1.3 Innehåll 1. Inledning 5 2. Hårdvara 7 2.1. IR-sändare................................... 7 2.2. IR-mottagare..................................

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2015-06-01 Lokal Tid 14-18 Kurskod Provkod Kursnamn Provnamn Institution Antal frågor 6 Antal sidor (inklusive denna sida) 6 Kursansvarig Lärare som besöker skrivsalen

Läs mer

Övningsuppgifter STYRNING - i Mikrodatorteknik för U2 2010

Övningsuppgifter STYRNING - i Mikrodatorteknik för U2 2010 STYRNING - i Mikrodatorteknik för U2 2010 1. Uppgift M10 (5p) aug-09 Skriv ett program i PIC-assembler som - gör PortB till utport - ettställer bit 0, 3 och 4 i PortB - nollställer bit 5 och 6 i PortB

Läs mer

Lösningar till tentamen i EIT070 Datorteknik

Lösningar till tentamen i EIT070 Datorteknik Lösningar till tentamen i EIT070 Datorteknik Institutionen för Elektro- och informationsteknik, LTH Torsdagen den 13 mars 2014, klockan 14:00 19:00 i MA:10. Tillåtna hjälpmedel: på tentan utdelad formelsamling,

Läs mer

Datorteknik Hyfsa kod

Datorteknik Hyfsa kod Datorteknik Hyfsa kod Michael Josefsson Version 0.2 2018 Denna text beskriver hur man kan hyfsa kod till att bli både bättre, mer lättläst och mindre. Som exempel används en del av den kod som behövs för

Läs mer

AVR 3 - datorteknik. Avbrott. Digitala system 15 hp. Förberedelser

AVR 3 - datorteknik. Avbrott. Digitala system 15 hp. Förberedelser Namn: Laborationen godkänd: Digitala system 15 hp AVR 3 - datorteknik LTH Ingenjörshögskolan vid Campus Helsingborg Avbrott. Syften med den här laborationen är att introducera avbrott. Avbrott som uppkommer

Läs mer

Datorprojekt, del 1. Digitala system 15 p

Datorprojekt, del 1. Digitala system 15 p Namn: Laborationen godkänd: Digitala system 15 p L T H I n g e n j ö r s h ö g s k o l a n v i d C a m p u s H e l s i n g b o r g Datorprojekt, del 1 Projektet består i att skapa en klocka där tiden visas

Läs mer

Övning2 Datorteknik, HH vt12 - Programmering

Övning2 Datorteknik, HH vt12 - Programmering Övning2 Datorteknik, HH vt12 - Programmering För denna övning behöver man adresskarta och beskrivning av laborationsplattform. Finns bland föreläsningsanteckning samt i bilaga l till Lab l. Använd även

Läs mer

"Crash Course in Programming"

Crash Course in Programming "Crash Course in Programming" Denna genomgång har fokus på programmering. Den följer PBasic-syntaxen för Basic Stamp II, men är i övrigt i stort sett frikopplad från BS2. Vissa aspekter som tas upp följer

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #19 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Normaltillstånd vs undantagstillstånd I normaltillstånd

Läs mer

Uppgift 1 (grundläggande konstruktioner)

Uppgift 1 (grundläggande konstruktioner) Uppgift 1 (grundläggande konstruktioner) a) Skriv ett program som låter användaren mata in 7 heltal och som gör utskrifter enligt nedanstående körexempel. Mata in 7 heltal: 1 0 0 3 1 1 1 Tal nr 2 var en

Läs mer

Instruktioner för uppdatering av enheter med ISP

Instruktioner för uppdatering av enheter med ISP För AP produkter som använder ISP måste flashuppdateringen göras med hjälp av den medföljande MPC Manager. För att utföra en firmware uppdatering, följ dessa instruktioner: 1. Ladda ner och installera

Läs mer

TENTAMEN. Datorteknik. D1/E1/Mek1/Ö Hjälpmedel: Häfte "ARM-instruktioner", A4-format, 17 sidor. Maxpoäng:

TENTAMEN. Datorteknik. D1/E1/Mek1/Ö Hjälpmedel: Häfte ARM-instruktioner, A4-format, 17 sidor. Maxpoäng: TENTAMEN D1/E1/Mek1/Ö1 1400-1800 Hjälpmedel: Häfte "ARM-instruktioner", A4-format, 17 sidor Maxpoäng: Betyg 3 Betyg 4 Betyg 5 60p 24p 36p 48p Frågor under tentamen: Börje Delistrand tel. +46702986358 Bilaga

Läs mer

Programmering i maskinspråk (Maskinassemblering)

Programmering i maskinspråk (Maskinassemblering) Programmering i maskinspråk (Maskinassemblering) Programutveckling i assemblerspråk Begreppet assemblerspråk introduceras i häftet Ext-20. En del korta programavsnitt skrivs med assemblerspråk i övningsuppgifterna

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2016-10-18 Lokal TER1 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive

Läs mer

Datorsystem Laboration 2: Minnesmappade bussar

Datorsystem Laboration 2: Minnesmappade bussar Datorsystem Laboration 2: Minnesmappade bussar Senast uppdaterad: 14 oktober 2012 Version 1.2 Student: Lärare: Underskrift: Underskrift: Datum: Datorsystem Laboration 2 1 Innehåll 1 Inledning 2 1.1 Introduktion..................................

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #17 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola F-36 FLEX- och FLIS-datorn Ext-8 Tallriksmodellen Stackoperationer

Läs mer

Laboration 4: Knappstuds Drivrutiner för att eliminera störningar.

Laboration 4: Knappstuds Drivrutiner för att eliminera störningar. ATMega16 Laborationer av Kjell 2 Rev:5 Datum: 29.09.2010 Page 1 of 7 Laboration 4: Knappstuds Drivrutiner för att eliminera störningar. Inledning: Laborationskortet EasyAVR6 har bland annat tryckknappar

Läs mer

DIGITALTEKNIK. Laboration D164. Logiska funktioner med mikroprocessor Kombinatoriska funktioner med PIC16F84 Sekvensfunktioner med PIC16F84

DIGITALTEKNIK. Laboration D164. Logiska funktioner med mikroprocessor Kombinatoriska funktioner med PIC16F84 Sekvensfunktioner med PIC16F84 UMEÅ UNIVERSITET Tillämpad fysik och elektronik Digitalteknik Björne Lindberg Håkan Joëlson 2007-11-22 v 2.3 DIGITALTEKNIK Laboration D164 Logiska funktioner med mikroprocessor Kombinatoriska funktioner

Läs mer

Stegmotorn Tvåfasdrivning Unipolär lindning

Stegmotorn Tvåfasdrivning Unipolär lindning Stegmotorn I den här uppgiften skall du styra en stegmotor från din PC. Du skall köra stegmotorn i en sekvens som du anger i PC-programmet med olika riktning, hastighet och antal steg. I en stegmotor har

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2015-08-18 Lokal TERE, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive

Läs mer

LEU240 Mikrodatorsystem

LEU240 Mikrodatorsystem Institutionen för data- och informationsteknik 2011-10-11 LEU240 Mikrodatorsystem Vi har tidigare i olika sammanhang sett att det är önskvärt att kunna använda ett högnivåspråk som C för att skriva program

Läs mer

Digital elektronik CL0090

Digital elektronik CL0090 Digital elektronik CL9 Föreläsning 3 27--29 8.5 2. My Talsystem Binära tal har basen 2 Exempel Det decimala talet 9 motsvarar 2 Den första ettan är MSB, Most Significant Bit, den andra ettan är LSB Least

Läs mer

Besvara de elektroniska frågorna (se kurshemsidan). Läs kapitel i kursbok.

Besvara de elektroniska frågorna (se kurshemsidan). Läs kapitel i kursbok. Namn: Laborationen godkänd: Laboration 3. Pipeline Laborationens syfte I laborationen ska du bekanta dig med pipelining. Genom laborationen fås kunskap om hur pipelines är konstruerade och hur de används.

Läs mer

Flyttal kan också hantera vanliga tal som både 16- och 32-bitars dataregister hanterar.

Flyttal kan också hantera vanliga tal som både 16- och 32-bitars dataregister hanterar. FLYTTAL REAL Flyttal används i datorsystem för s k flytande beräkning vilket innebär att decimalkommat inte har någon fix (fast) position. Flyttal består av 2 delar (mantissa och exponent). När ett datorsystem

Läs mer

LABORATION DATORKONSTRUKTION TSEA83 UART. Namn och personnummer. Version: 1.0 2013 (OS)

LABORATION DATORKONSTRUKTION TSEA83 UART. Namn och personnummer. Version: 1.0 2013 (OS) LABORATION DATORKONSTRUKTION TSEA83 UART Version: 1.0 2013 (OS) Namn och personnummer Godkänd 1 blank sida 2 Innehåll 1 Inledning 5 1.1 Syfte................................. 5 1.2 Förberedelser............................

Läs mer

F4: Assemblerprogrammering

F4: Assemblerprogrammering F4: Assemblerprogrammering Hoppinstruktioner Branch Jump Med vilkor IF satser Loopar while-loopar do-while- loopar for-loopar Stackhantering Underprogram 1 BRA rel_adr Branch Always Relativadressering

Läs mer

Linköpings Tekniska Högskola Instutitionen för Datavetenskap (IDA) Torbjörn Jonsson, Erik Nilsson Lab 2: Underprogram

Linköpings Tekniska Högskola Instutitionen för Datavetenskap (IDA) Torbjörn Jonsson, Erik Nilsson Lab 2: Underprogram Mål Lab 2: Underprogram Följande laboration introducerar underprogram; procedurer, funktioner och operatorer. I denna laboration kommer du att lära dig: Hur man skriver underprogram och hur dessa anropas.

Läs mer

Laboration 5. Temperaturmätning med analog givare. Tekniska gränssnitt 7,5 p. Förutsättningar: Uppgift: Temperatur:+22 C

Laboration 5. Temperaturmätning med analog givare. Tekniska gränssnitt 7,5 p. Förutsättningar: Uppgift: Temperatur:+22 C Namn: Laborationen godkänd: Tekniska gränssnitt 7,5 p Vt 2014 Laboration 5 LTH Ingenjörshögskolan vid Campus Helsingborg Temperaturmätning med analog givare. Syftet med laborationen är att studera analog

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2016-05-31 Lokal Kåra, T1, T2, U1, U15 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2017-10-26 Lokal TER1, TER3 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive

Läs mer

Datorteknik TSIU02 Kursinformation

Datorteknik TSIU02 Kursinformation Datorteknik TSIU02 Kursinformation Michael Josefsson 24 maj 2018 1.1 Allmänt Kursen handlar om praktisk datorteknik på en grundläggande nivå. Programmerar man på en ännu lägre nivå är man processorkonstruktör!

Läs mer

Assemblerprogrammeringsuppgifter för FLIS-processorn

Assemblerprogrammeringsuppgifter för FLIS-processorn 1 (2013-05-02) Assemblerprogrammeringsuppgifter för FLIS-processorn 1. I simulatorn för FLISP-datorn kan man ansluta strömbrytarmodulen DIPSWITCH till en inport och sifferindikatorn 7-SEGMENT till en utport.

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSEA28 Datorteknik Y (och U), föreläsning 2, Kent Palmkvist 2018-01-16 3 TSEA28 Datorteknik Y (och U) Föreläsning 2 Kent Palmkvist, ISY Praktiska kommentarer Mail kommer skickas ut när labanmälan är möjlig

Läs mer

Tentamen i EIT070 Datorteknik

Tentamen i EIT070 Datorteknik Tentamen i EIT070 Datorteknik Institutionen för Elektro- och informationsteknik, LTH Onsdagen den 10 mars 2010, klockan 08:00 13:00 å Victoriastadion 1 och 2. Tillåtna hjälpmedel: på tentan utdelad formelsamling,

Läs mer

Programmering. Analogt och med smårobotar. Nina Bergin

Programmering. Analogt och med smårobotar. Nina Bergin Programmering Analogt och med smårobotar Nina Bergin Programmering i Läroplanen Tre ämnen i grundskolan som har huvudansvaret för programmering: matematik, teknik och samhällskunskap. Ämnesövergripande

Läs mer

Tentamen i Robotteknik MPR160, 16 december 2000

Tentamen i Robotteknik MPR160, 16 december 2000 Tenta i Robotteknik Z3 2000-12-16 1/6 Tentamen i Robotteknik MPR160, 16 december 2000 Lärare: Rolf Berlin ank 1286; 0707-99 24 89 Anders Boström ank 1526 Tillåtna hjälpmedel: Typgodkända kalkylatorer och

Läs mer

Högskolan i Halmstad Digital- och Mikrodatorteknik 7.5p. Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien

Högskolan i Halmstad Digital- och Mikrodatorteknik 7.5p. Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien DIGITAL- OCH MIKRODATORTEKNIK, U2 09.00 13.00 Tillåtna hjälpmedel: Instruktionslista PIC16F877A Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien Fullständiga lösningar skall inlämnas.

Läs mer

Egna genvägar. Subhashish Pradhan T.C. Hollingsworth Översättare: Stefan Asserhäll

Egna genvägar. Subhashish Pradhan T.C. Hollingsworth Översättare: Stefan Asserhäll Subhashish Pradhan T.C. Hollingsworth Översättare: Stefan Asserhäll 2 Innehåll 1 Inledning 4 2 Hantera genvägar och grupper 4 2.1 Lägga till grupper...................................... 4 2.2 Lägga till

Läs mer

Tentamen Datorteknik Y, TSEA28 Datum 2012-08-14

Tentamen Datorteknik Y, TSEA28 Datum 2012-08-14 Tentamen Datorteknik Y, TSEA28 Datum 2012-08-14 Lokal TER2 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Datorteknik Y Institution ISY Antal frågor 6 Antal sidor (inklusive denna sida) 7 Kursansvarig Andreas

Läs mer

Tentamen Datorteknik Y, TSEA28 Datum 2012-06-02 TER2, TER4, TERE Tid 14-18

Tentamen Datorteknik Y, TSEA28 Datum 2012-06-02 TER2, TER4, TERE Tid 14-18 Tentamen Datorteknik Y, TSEA28 Datum 2012-06-02 Lokal TER2, TER4, TERE Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Datorteknik Y Institution ISY Antal frågor 7 Antal sidor (inklusive denna sida) 10

Läs mer

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen 68000 Arkitektur F2: Motorola 68000 I/O signaler Processor arkitektur Programmeringsmodell Assembler vs. Maskinkod Exekvering av instruktioner i 68000 Instruktionsformat MOVE instruktionen Adresseringsmoder

Läs mer

Lösningsförslag till Tenta i Mikrodator

Lösningsförslag till Tenta i Mikrodator Lösningsförslag till Tenta i Mikrodator 050113 1. Vilka register finns det i processorn och vad används dessa till? D0 till D7: Dataregister som används för beräkningar A0 till A6: Adressregister som används

Läs mer

LABORATION. Datorteknik Y

LABORATION. Datorteknik Y LABORATION Datorteknik Y Mikroprogrammering Version 3.3 2012 (AE) 2013 (AE) 2017 (KP) Namn och personnummer Godkänd Uppg. 1-3 1 1 Inledning Syftet med laborationen är att skapa en känsla för vad som händer

Läs mer

Lösningar till tentamen i EIT070 Datorteknik

Lösningar till tentamen i EIT070 Datorteknik Lösningar till tentamen i EIT070 Datorteknik Institutionen för Elektro- och informationsteknik, LTH Onsdagen den 13 mars 2013, klockan 14:00 19:00 i Vic 2 A-D, 3 A-C. Tillåtna hjälpmedel: på tentan utdelad

Läs mer

AVR 5. Styrning av trafikljus. Digitala system 15 p

AVR 5. Styrning av trafikljus. Digitala system 15 p Namn: Laborationen godkänd: Digitala system 15 p AVR 5 LTH Ingenjörshögskolan vid Campus Helsingborg Styrning av trafikljus. Syftet med laborationen är att styra en trafikkorsning med hjälp av en mikroprocessor.

Läs mer

Systemkonstruktion LABORATION REALTIDSPROGRAMMERING

Systemkonstruktion LABORATION REALTIDSPROGRAMMERING Systemkonstruktion LABORATION REALTIDSPROGRAMMERING Laborationsansvariga: Anders Arvidsson, Björn Lundblad Utskriftsdatum: 2002-10-31 Laboranter: 1 Syfte Denna laboration syftar till att öva användningen

Läs mer

A-del motsvarande KS1

A-del motsvarande KS1 MÄLARDALENS HÖGSKOLA Institutionen för elektroteknik Tentamen Mikrodatorteknik CT3760 Datum 2005-10-28 Tid 08.30 12.30 Svar till A- och B-del A-del motsvarande KS1 Uppgift A1. Vad blir resultatet då instruktionen

Läs mer

ENKEL Programmering 3

ENKEL Programmering 3 ENKEL Programmering 3 Figurer i långa rader Titta på de olika figurerna i de olika raderna. Kan du se att de olika figurerna i varje rad är placerade enligt ett visst mönster? Kan du lista ut vilken figur

Läs mer

Grunderna i stegkodsprogrammering

Grunderna i stegkodsprogrammering Kapitel 1 Grunderna i stegkodsprogrammering Följande bilaga innehåller grunderna i stegkodsprogrammering i den form som används under kursen. Vi kommer att kort diskutera olika datatyper, villkor, operationer

Läs mer

LABORATIONSINSTRUKTION

LABORATIONSINSTRUKTION Högskolan Dalarna Elektroteknik LABORATION LABORATIONSINSTRUKTION PLC-styrning av ett minimalt parkeringsgarage KURS El- och styrteknik för tekniker ET 1015 INNEHÅLL LAB NR 4 Ver 1.0 1. Inledning 2. Laborationskortet

Läs mer

Projektlaboration 4, synkronisering av klockan

Projektlaboration 4, synkronisering av klockan Namn: Laborationen godkänd: Digitala system 15 p L T H I n g e n j ö r s h ö g s k o l a n v i d C a m p u s H e l s i n g b o r g Datorprojekt, del 4 Projektlaboration 4, synkronisering av klockan Asynkron

Läs mer

TENTAMEN. Datorteknik. D1/E1/Mek1/Ö Hjälpmedel: Häfte" ARM-instruktioner", A4-format, 17 sidor. Maxpoäng: 60p

TENTAMEN. Datorteknik. D1/E1/Mek1/Ö Hjälpmedel: Häfte ARM-instruktioner, A4-format, 17 sidor. Maxpoäng: 60p TENTAMEN D1/E1/Mek1/Ö1 0900-1300 Hjälpmedel: Häfte" ARM-instruktioner", A4-format, 17 sidor Maxpoäng: Betyg 3 Betyg 4 Betyg 5 60p 24p 36p 48p Frågor under tentamen: Bör j e Delistrand tel. 16 7122 alt.

Läs mer

Introduktion till programmering och Python Grundkurs i programmering med Python

Introduktion till programmering och Python Grundkurs i programmering med Python Introduktion till programmering och Python Hösten 2009 Dagens lektion Vad är programmering? Vad är en dator? Filer Att tala med datorer En första titt på Python 2 Vad är programmering? 3 VAD ÄR PROGRAMMERING?

Läs mer

Lösningsförslag till Tenta i Mikrodator

Lösningsförslag till Tenta i Mikrodator Lösningsförslag till Tenta i Mikrodator 040117 1. Vilka register finns det i processorn och vad används dessa till? D0 till D7: Dataregister som används för beräkningar A0 till A6: Adressregister som används

Läs mer

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl Tentamen TSEA22 Digitalteknik 5 juni, 2015, kl. 08.00-12.00 Tillåtna hjälpmedel: Inga. Ansvarig lärare: Mattias Krysander Visning av skrivningen sker mellan 10.00-10.30 den 22 juni på Datorteknik. Totalt

Läs mer

Avbrottshantering. Övningsuppgifter

Avbrottshantering. Övningsuppgifter Avbrottshantering Övningsuppgifter 2013 Besvara kortfattat följande frågor rörande CPU12. Redogör för vad som händer vid RESET och varför detta sker. Förklara kortfattat vad som händer vid ett IRQ avbrott

Läs mer

Besvara de elektroniska frågorna (se kurshemsidan). Läs kapitel i kursbok

Besvara de elektroniska frågorna (se kurshemsidan). Läs kapitel i kursbok Namn: Laborationen godkänd: Laboration 2. Cacheminne Laborationens syfte I laborationen ska du bekanta dig med cacheminnen. Genom laborationen fås kunskap om hur cacheminnen är konstruerade och hur de

Läs mer

Kort beskrivning av Sveriges första dator BESK

Kort beskrivning av Sveriges första dator BESK Kort beskrivning av Sveriges första dator BESK Bo Einarsson MAI 10 januari 2005 Den första svenska egentliga datorn är BESK, vilket står för Binär Elektronisk SekvensKalkylator. Den var körklar den 6 november

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSEA28 Datorteknik Y (och U) Föreläsning 2 Kent Palmkvist, ISY TSEA28 Datorteknik Y (och U), föreläsning 2, Kent Palmkvist 2017-01-17 2 Dagens föreläsning Kort repetition Större programmeringsexempel Subrutiner

Läs mer

Kapitel 2 o 3. Att skicka signaler på en länk. (Maria Kihl)

Kapitel 2 o 3. Att skicka signaler på en länk. (Maria Kihl) Kapitel 2 o 3 Information och bitar Att skicka signaler på en länk Jens A Andersson (Maria Kihl) Att sända information mellan datorer värd äd 11001000101 värd äd Tåd Två datorer som skall kllkommunicera.

Läs mer

Programmering i maskinspråk (Maskinassemblering)

Programmering i maskinspråk (Maskinassemblering) Ext-15 (2013-08-26) sida 1 Programmering i maskinspråk (Maskinassemblering) Programutveckling i assemblerspråk Begreppet assemblerspråk introduceras i arbetsboken (ARB) kapitlen 14-16. En del korta programavsnitt

Läs mer

Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP.

Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP. Övningsuppgifter Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP. F.2 Ett antal på varandra följande minnesord har

Läs mer