Rapport Øving 1 TDT4258 Mikrokontroller Systemdesign
|
|
- Bjørn-Erik Mikalsen
- 7 år siden
- Visninger:
Transkript
1 Rapport Øving 1 TDT4258 Mikrokontroller Systemdesign Thomas L Falch Torgeir Alstad 21. februar
2 Sammendrag Oppgaven i denne øvingen var å skrive et assemblyprogramm for å få knappene til å styre lysdiodene på et utviklingskort [3]. Mer presist skulle to knapper brukes til å styre hvilken av diodene som skulle lyse. Ved å trykke på den ene eller andre knappen skal lyset flytte seg til høyre eller venstre. Vi har i tillegg, utover det som er beskrevet i oppgaveteksten, implementert en løsning som gjør det mulig å få samme resultat ved en kontinuerlig nedpressing av knappene, som ved mange gjentatte trykk. Vi har løst dette ved å skrive et program som reagerer på avbrudd generert av knappene, og som, når disse intreffer, oppdaterer informasjon om hvilke knapper som er trykkt ned. I programmets hovedløkke brukes denne informasjonen til å styre hvilke dioder som skal lyse. Programmet oppfyller alle kravene i øvingen, og implementerer også den ekstra funkjsonaliteten som ønsket. 2
3 Innhold 1 Innledning 4 2 Løsningsbeskrivelse Initialisering I/O-enheter Avbrudd Hovedløkke Avbruddsrutine Resultat Testing GDB Kjøring Evaluering 11 5 Konklusjon 11 Referanser 11 3
4 1 Innledning Vi brukte et STK1000 utvikligskort med en AT32AP7000 mikrokontroller fra Atmel [2] [1]. STK1000 har åtte lysdioder plassert i en rekke, og åtte trykknapper plassert under disse. Oppgaven, beskrevet i øvingsheftet [3], gikk ut på å bruke to av knappene til å styre lysdiodene. Ved start skulle en diode være tent. Ved å trykke på den ene eller andre knappen skulle den tente dioden slukke, og dioden til høyere eller venstre for denne bli tent. Hvis den tente dioden var den lengst til venstere, skulle ikke det å trykke på knappen for å flytte lyset til venstere ha noen effekt. Tilsvarende hvis den tente dioden var den lengst til høyere. Vi har i tillegg til dette laget en løsning som gjør det mulig å få samme effekt som ved gjentatte knappetrykk når man holder knappen vedvarende nede. Altså: hvis man holder en av knappene nede vedvarende, vil lyset flytte segbortover,påsammemåtesomommanhaddetrykketmangegangerraskt etterhverandre. For å løse denne oppgaven skrev vi et assemblyprogram. Vi brukte avbrudd for å håndtere input fra knappene. Når knappene blir trykket ned eller opp blir et avbrudd generert. Dette sørger for at en rutine blir kjørt, som oppdaterer informasjon om hvilke knapper som er trykt ned. Denne informasjonen blir brukt i programmets hovedløkke for å styre hvilke dioder som skal tennes. 2 Løsningsbeskrivelse Oppgaven er løst med et program skrevet i assembly. Programet består av tre hoveddeler. I den første delen foregår ulik initialisering, særlig av I/O-enhetene og avbrudskontrolleren. Den andre delen er programmets hovedløkke. Her brukes informasjon samlet inn i avbruddsrutinen for å avgjøre hvilke knapper som er nede, dette brukes for å oppdatere hvilke lysdioder som skal tennes. Den siste delen er avbrudsrutinen. Her sjekkes det om knappene er trykket opp eller ned, slik at denne informasjonen kan overføres til hovedløkken. 2.1 Initialisering I/O-enheter AT32AP7000 har en I/O-kontroller, kalt PIO [2] [3]. Denne har flere porter, som hver kan kobles til ulike enheter, både inn- og utenheter. Hver port 4
5 har 32 I/O-linjer. For å kunne kommunisere med disse enhetene må PIO kontrolleren først initialiseres. Kommunikasjon med PIO foregår ved å skrive dennes registere. Disse er lageravbildet, så man skriver og leser i praksis til og fra bestemte adresser i minnet. I dette tilfellet var lysdiodene koblet til PIOens port C, mens knappene var koblet til PIOens port B [3]. For å initialisere lysdiodene ble først den aktuelle PIO portens PER(PIO Enable Register) satt til 1 for de aktuelle linjene, for å la PIOen styre dem. Vidrere ble OER (Output Enable Register) satt til 1 for de aktuelle linjene, for å bruke porten som en outputport. For knappene ble PER og PUER (Pull-Up Enable Register) satt til 1, det siste for å kunne lese knappestatus Avbrudd For å kunne reagere på input fra knappene må disse settes opp slik at de kan gi avbrudd. Dette ble gjort ved å sette de relevante bittene i knappenes PIO-ports IER (Interrupt Enable Register) til 1, for å aktivere avbrudd fra knappene. Videre ble prosessoren og avbruddskontrolleren satt opp slik de kan finne den riktige avbrudsrutinen for avbrudd fra knappene. Prosessoren regner ut adressen til denne ved å legge sammen sit EVBA(Exception Vector Base Addres) register og en delvis adresse den får fra avbrudskontrolleren. EVBA ble satt til 0, og adressen til rutinen ble lagt inn i avbruddskontrollerens register for avbrudd fra knappene. Til slutt ble avbrudd aktivert globalt. 2.2 Hovedløkke Figur 1 viser programflyten i programets hovedløkke. Hvike lysdioder som skal lyse eller ikke blir styrt av innholdet i et register. Hver av de åtte nederste bitene representerer en diode, og er satt til 1 hvis dioden skal lyse. Ved å shifte dette registeret til høyere eller venstere kan man endre hvilken diode som skal lyse. Man må i tillegg sjekke at den dioden som lyser ikke er den lengst til høyere eller venstere før man shifter. Hvorvidt de to aktuelle knappene (SW0 og SW2) er trykket ned eller ikke lagres i to registere, et for hver knapp. Når knappene er nede er registerene satt til 1, når de er oppe er de satt til 0. Registerene blir satt i avbruddsrutinen, når kanappestatusen endres. Hvis ingen avbrudd genereres vil det samme skje i hver iterasjon, enten vil den samme dioden forbli tent, eller lyset vil bevege seg mot høyere eller venstere til det når kanten, hvor det vil stoppe. 5
6 Slår av alle dioder SW0 Oppe SW2 Nede Nede På høyere ende På venstre ende Oppe Nei Nei Ja Shift til venstre Ja Shift til høyere Slår på dioder Vent Figur 1: Flytdiagram for hovedløkken. SW2 og SW0 er venstere og høyere knapp, respektivt. I hovedløkken blir ikke disse sjekket direkte, man sjekker registere som holder deres status. Siden SW0 blir sjekket først, vil det å trykke ned begge kanppene få samme effekt som å bare trykke ned SW0, uavhengig av hvilken knapp som ble trykket ned først. 6
7 For å hindre at lyset beveger seg for raskt når en knapp holdes nede er det lagt inn en ventepause i hovedløkken. Denne er impementert som en løkke som teller ned et stort tall, som vist i figur 2. reg = STORT_TALL reg = reg - 1 FALSE reg == 0 TRUE Ferdig Figur 2: Flytdiagram som viser venting. 2.3 Avbruddsrutine Avbruddsrutinen blir kallt hver gang knappene endrer status, dvs både når de går opp og ned. Dermed er det lett å til en hver tid å ha oversikt over hvilke knapper som er nedtrykt. Vi har et register for de to knappene vi er interessert i. Hver gang knappene endrer status, med andre ord hver gang avbrudsrutinene blir kallt, oppdateres verdiene i registerene, avhengig av hvilke kanpper som er nedtrykt. I et større program vil det være naturlig å lagre disse verdiene i minnet, ikke i registere, særlig hvis man skal ha overskit over mange knapper. I dette enkle programmet valgte vi i steden å dedikere to registere til oppgaven. Dette gjør det svært enkelt å kommunisere mellom hovedløkken og avbruddsrutinen. Figur 3 viser flytdiagrammet for avbruddsrutinen. Det første som ble gjort var å lagre alle registerene i bruk på stakken. Dette gjør det mulig å bruke registerene til andre ting i avbruddsrutinen, uten at verdiene går tapt. I vår løsning har vi bare lagret de registerene som er i bruk på stakken. Naturlig nokk er ikke registrene som holder statusen til kanppene lagret (jf. diskusjonen over). Etter dette ble det kompenseret for bouncing. Dette er et fenomen som skyldes at knappenes kontakter spretter opp og ned noen ganger etter 7
8 Pusher på stakk Debouncing Leser statusregister og nedtrykkte knapper Sjekker nedtrykte knapper SW2 nede SW0 nede Set reg for venstere Set reg for høyere Ellers Popper fra stakk Returnerer Figur 3: Flytdiagram for avbruddsrutinen. SW2 og SW0 er venstere og høyere knapp, respektivt 8
9 nedslag, og derfor kan gi forvirrende signaler [3]. Ved å vente en kort stund, ved hjelp av samme teknikk som i hovedløkken, ble dette problemet ungåt. Videre ble kanppenes PIO ports ISR (Interrupt Status Register) register lest. Dette gir enheten beskjed om at avbruddet er håndtert. Videre ble PDSR(Pin Data Status Register) lest, som inneholder informasjon om hvilke knapper som er nedtrykt. Denne informasjonen ble så brukt til å sette verdien i registerene som holder informasjon om knappenes status. Deretter ble verdien til registerene hentet fra stakken, og til slutt returnerer man. 3 Resultat Programet som ble skrevet løser oppgaven, og lar brukeren kontrollere knappene som beskrevet i 1. I tillegg ble det implementeret ekstra funksjonalitet, (også beskrevet i 1) som også virket som planlagt. 3.1 Testing For å sikre at programmet fungerte som ønsket ble det testet. To typer testing ble gjennomført. I den ene ble GDB brukt. I den andre programmet kjørt, og knappene trykket på GDB Avlusingsverktøyet GDB [3] ble brukt til å sjekke at programmet oppførte seg slik vi hadde tenkt. Det ble satt to breakpoints inne i hovedløkken, et helt i begynnelsen, og et før ventingen. I tilleg ble det satt et breakpoint inne i avbruddsrutinen. Testingen og resultatene er i korte trekk gjengitt i tabell 1. Som vi ser gir knappene avbrudd både når de går opp og ned, og dette fører til at avbruddsrutinen blir kjørt. Videre ser vi at kontinuerlig nedpressing fører til at indeksen på den tente dioden øker, uten nye abvrudd. Etter at knappen er sluppet opp, forblir den samme dioden tent. En utskrift fra kjøringen, som detaljert viser oppførselen er vedlagt Kjøring Programmet ble også testet ved å kjøre det. Resultatet er gjengitt i tabell 2. 9
10 Test 1 Test 2 Br1, LED:0 Br1, LED:0 SW2 ned SW2 ned Br2 Br2 Br1 Br1 Br3 Br3 Br1, LED:1 Br1, LED:1 SW2 opp Br3 Br2 Br1, LED:2 Br1 Br3 Br1, LED:1 Tabell 1: Testresultater. Hver kolonne er en test, og leses nedover. Br1 og Br3 er breakpointene i hovedløkka (Br1 linje 85, Br2 linje 61), Br2 i avbruddsrutinen. Mellom hver celle ble GDB kommandoen cont kjørt. Knappene ble holdt nede helt fra SWx ned til SWx opp. Starttilstand Input Effekt LED:0 SW0 kort LED:0 LED:0 SW2 kort LED:1 LED:0 SW3 kort LED:0 LED:0 SW2 lang LED: LED:7 SW0 kort LED:6 LED:7 SW5 kort LED:7 LED:7 SW0 lang LED: Tabell 2: Testresultater. Tabellen viser hvilke dioder som lyste ved start, hvilke knapper som ble trykt ned, og resultatet. Notasjonen x y angir at diode x lyste en kort stund, før den ble slukket, og diode y tent. Betegnelsene kort og lang er kvalitative 10
11 Som det fremgår av testresultatene virker programet slik det er tenkt. 4 Evaluering Vi synes oppgaven var spennende og utfordrende, men ikke uoverkommelig vanskelig. Vi synes øvingsheftet og det utleverte rammeverket fungerte bra, menmednoenunntak.brukenavlddpc,ogikkeminstgrunnentilbrukenav denne burde vært nevnt i øvingsheftet. Videre burde det ikke vært utlevert noen makefile. Å bli tvunget til å lage denne selv ville vært mer lærerikt. 5 Konklusjon Vi lagde et program som lot brukeren kontrolere lysdiodene på utviklingskortet, slik at to av knappene kunne brukes til å styre hvilken lysdiode som skulle lyse. Vi implementerte også ekstra funksjonalitet slik at det å holde en knapp lenge inne tilsvarte mange gjentatte knappetrykk. Vi implementerte løsningen med et assemblyprogram. I dette blir hvilke knapper som til en hver tid er nedtykt oppdatert i en rutine som kalles når knappene genererer avbrudd. I programets hovedløkke brukes denne informasjonen til å avgjøre hvilke dioder som skal tennes. Utover at det var mye nytt materiale å sette seg inn i (assemblykodesyntaks, detaljene rundt I/O-håndtering) i begynnelsen presenterte denne øvingen ingen store vanskeligheter. Referanser [1] Atmel. Atmel corporation - avr solutions - tools card. Aksessert [2] Atmel. AT32AP7000 Datasheet, resources/prod_documents/doc32003.pdf. Aksessert [3] IDI Datamaskingruppa. Øvingshefte i TDT4258 Mikrokontroller systemdesing. NTNU,
Rapport Øving 2 TDT4258 Mikrokontroller Systemdesign
Rapport Øving 2 TDT4258 Mikrokontroller Systemdesign Thomas L Falch Torgeir Alstad 19. mars 2010 1 Sammendrag Oppgaven i denne øvingen var å skrive et program for å generere lyd på et utviklingskort [4].
DetaljerRapport Øving 3 TDT4258 Mikrokontroller Systemdesign. Thomas L Falch, Torgeir Alstad
Rapport Øving 3 TDT4258 Mikrokontroller Systemdesign Thomas L Falch, Torgeir Alstad 26. april 2010 Sammendrag Oppgaven i denne øvingen var todelt. Den ene delen gikk ut på å skrive drivere for knappene
DetaljerForelesning Instruksjonstyper Kap 5.5
TDT4160 Datamaskiner Grunnkurs Forelesning 22.11 Instruksjonstyper Kap 5.5 Dagens tema Instruksjonstyper (5.5) Datatransport Datamanipulering Betingede hoppinstruksjoner Prosedyrekall Løkker I/O Eksempler
DetaljerE K S A M E N FAKULTET FOR TEKNOLGI OG REALFAG. Emnekode: ELE217 Emnenavn: Mikrokontrollere og styresystemer.
FAKULTET FOR TEKNOLGI OG REALFAG E K S A M E N Emnekode: ELE217 Emnenavn: Mikrokontrollere og styresystemer. Dato: 9. desember 2016 Varighet: 0900-1200 Antall sider inkl. forside: 22 Tillatte hjelpemidler:
DetaljerTDT4258 Eksamen vår 2013
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 8 TDT4258 Eksamen vår 2013 Løsningsforslag Oppgave 1 Flervalgsoppgave (16 poeng) Du får 2 poeng
DetaljerPXT: Himmelfall. Introduksjon. Skrevet av: Helene Isnes og Julie Revdahl
PXT: Himmelfall Skrevet av: Helene Isnes og Julie Revdahl Kurs: Microbit Tema: Elektronikk, Blokkbasert, Spill Fag: Programmering, Matematikk Klassetrinn: 5.-7. klasse, 8.-10. klasse, Videregående skole
DetaljerINF1400 Kap4rest Kombinatorisk Logikk
INF4 Kap4rest Kombinatorisk Logikk Hovedpunkter Komparator Dekoder/enkoder MUX/DEMUX Kombinert adder/subtraktor ALU FIFO Stack En minimal RISC - CPU Komparator Komparator sammenligner to tall A og B 3
DetaljerForelesning 5. Diverse komponenter/større system
Forelesning 5 Diverse komponenter/større system Hovedpunkter Komparator Dekoder/enkoder MUX/DEMUX Kombinert adder/subtraktor ALU En minimal RISC - CPU 2 Komparator Komparator sammenligner to 4 bits tall
DetaljerIntro til Atmel Studio Bits&bytes
Intro til Atmel Studio 6.1 - Bits&bytes Vi har nå vært igjennom et bittelite prosjekt med en LED og en knapp, husker du at vi måtte gjøre noe spessielt med PORTB i loopen vår så den skulle fortsette å
DetaljerC:\web\service-elektronikk\fagprover\Anders\flashlite_program_Anders.pas Page 1
C:\web\service-elektronikk\fagprover\Anders\flashlite_program_Anders.pas Page 1 { F A G P R Ø V E N V Å R E N 1 9 9 9 Universitetet i Bergen Institutt for den Faste Jords Fysikk A D - K O R T P R O G R
DetaljerINF2270. Input / Output (I/O)
INF2270 Input / Output (I/O) Hovedpunkter Innledning til Input / Output Ulike typer I/O I/O internt i datamaskinen I/O eksternt Omid Mirmotahari 3 Input / Output En datamaskin kommuniserer med omverdenen
DetaljerInnlevering 2b i INF2810, vår 2017
Innlevering 2b i INF2810, vår 2017 Dette er del to av den andre obligatoriske oppgaven i INF2810. Man kan oppnå 10 poeng for oppgavene i 2b, og man må ha minst 12 poeng tilsammen for 2a + 2b for å få godkjent.
DetaljerINF2270. Input / Output (I/O)
INF2270 Input / Output (I/O) Hovedpunkter Innledning til Input / Output Ulike typer I/O I/O internt i datamaskinen I/O eksternt Omid Mirmotahari 3 Input / Output En datamaskin kommuniserer med omverdenen
DetaljerPLS PC-øving nr. 3 Global Label og Local Label, flagg og CJ
PLS PC-øving nr. 3 Global Label og Local Label, flagg og CJ Utgave: 1.02 Utarbeidet av: AH Dato: 10.10.12 Revidert av: AH Dato: 270114 Tema i oppgaven Oppgaven går ut på å lære seg å ta i bruk listene
DetaljerTDT4102 Prosedyre og Objektorientert programmering Vår 2014
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Øving 10 Frist: 2014-04-11 Mål for denne øvinga:
DetaljerSUPER DISCLAIMER. Vi endrer opplegget litt fra år til år, og vi hører på dere!
ARDUINO BASISKUNNSKAP ELEKTRISITET SIKKERHET PRAKSIS INSTALLASJON PROGRAMMERING GRUNNLEGGENDE TEORI ÅPEN SONE FOR EKSPERIMENTELL INFORMATIKK STUDIELABEN Roger Antonsen INF1510 23. januar 2012 SUPER DISCLAIMER
DetaljerAVSLUTTENDE EKSAMEN I. TDT4160 Datamaskiner Grunnkurs. Torsdag 29. November 2007 Kl. 09.00 13.00
Side 1 av 11 NTNU Norges teknisk-naturvitenskapelige universitet BOKMÅL Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap AVSLUTTENDE EKSAMEN
DetaljerEksamensoppgave i TDT4258 Energieffektive datamaskinsystemer
Institutt for datateknikk og informasjonsvitenskap Eksamensoppgave i TDT4258 Energieffektive datamaskinsystemer Faglig kontakt under eksamen: Asbjørn Djupdal Tlf.: 909 39452 Eksamensdato: 29. mai 2013
Detaljer! Ytelsen til I/O- systemer avhenger av flere faktorer: ! De to viktigste parametrene for ytelse til I/O er:
Dagens temaer! Ulike kategorier input/output! Programmert! Avbruddstyrt! med polling.! Direct Memory Access (DMA)! Asynkrone vs synkrone busser! Med! Fordi! -enheter menes de enheter og mekanismer som
DetaljerFys 3270/4270 høsten Laboppgave 2: Grunnleggende VHDL programmering. Styring av testkortets IO enheter.
Fys 3270/4270 høsten 2004 Laboppgave 2: Grunnleggende VHDL programmering. Styring av testkortets IO enheter. Innledning. Målet med denne laboppgaven er at dere skal lære å lage enkle hardware beskrivelser
DetaljerKanter, kanter, mange mangekanter. Introduksjon: Steg 1: Enkle firkanter. Sjekkliste. Skrevet av: Sigmund Hansen
Kanter, kanter, mange mangekanter Skrevet av: Sigmund Hansen Kurs: Processing Tema: Tekstbasert, Animasjon Fag: Matematikk, Programmering, Kunst og håndverk Klassetrinn: 8.-10. klasse, Videregående skole
DetaljerDebugging. Tore Berg Hansen, TISIP
Debugging Tore Berg Hansen, TISIP Innhold Innledning... 1 Å kompilere og bygge et program for debugging... 1 Når debugger er i gang... 2 Symbolene i verktøylinjen... 3 Start på nytt... 3 Stopp debugging...
DetaljerTDT4100 Objektorientert programmering
Eksamensoppgave i TDT4100 Objektorientert programmering Tirsdag 2. juni 2009, kl. 09:00-13:00 Oppgaven er utarbeidet av faglærer Hallvard Trætteberg og kvalitetssikrer Trond Aalberg. Kontaktperson under
DetaljerTDT4160 AUGUST, 2008, 09:00 13:00
Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering The Department of Computer and Information Science TDT4160 DATAMASKINER GRUNNKURS
DetaljerTDT4160 OG IT2201 DATAMASKINER GRUNNKURS EKSAMEN
Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering The Department of Computer and Information Science TDT4160 OG IT2201 DATAMASKINER
DetaljerSnøballkrig. Introduksjon. Steg 1: En snøballkaster. Skrevet av: Geir Arne Hjelle
Snøballkrig Skrevet av: Geir Arne Hjelle Kurs: Scratch Tema: Blokkbasert, Spill, Animasjon Fag: Matematikk, Programmering, Kunst og håndverk Klassetrinn: 5.-7. klasse, 8.-10. klasse Introduksjon I denne
Detaljeroppgavesett 4 INF1060 H15 Øystein Dale Hans Petter Taugbøl Kragset September 22, 2015 Institutt for informatikk, UiO
oppgavesett 4 INF1060 H15 Øystein Dale Hans Petter Taugbøl Kragset September 22, 2015 Institutt for informatikk, UiO oppgave 1 Hvorfor har vi operativsystemer? Portable programmer Enklere å programmere
DetaljerINF1510 Oblig #1. Kjetil Heen, februar 2016
INF1510 Oblig #1 Kjetil Heen, februar 2016 1 2 Etch-a-sketch Det ferdige sluttproduktet skal simulere en klassisk leke, Etch-a-sketch, et tegnebrett, hvor man tegner på en flate ved å skru på 2 hjul, og
DetaljerTestrapport. Aker Surveillance. Gruppe 26. Hovedprosjekt ved Høgskolen i Oslo og Akershus. Oslo, 24.5.2013. Public 2013 Aker Solutions Page 1 of 5
Testrapport Aker Surveillance Gruppe 26 Hovedprosjekt ved Høgskolen i Oslo og Akershus Oslo, 24.5.2013 Public 2013 Aker Solutions Page 1 of 5 Innledning I denne rapporten vil vi skrive om testingen som
DetaljerØvingsforelesning 5 Python (TDT4110)
Øvingsforelesning 5 Python (TDT4110) Repetisjon av løkker og funksjoner Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av Øving 3 Repetisjon 2 Praktisk info Prosjekter i PyCharm må startes med
DetaljerDagens temaer. Sekvensiell logikk: Kretser med minne. D-flipflop: Forbedring av RS-latch
Dagens temaer Sekvensiell logikk: Kretser med minne RS-latch: Enkleste minnekrets D-flipflop: Forbedring av RS-latch Presentasjon av obligatorisk oppgave (se også oppgaveteksten på hjemmesiden). 9.9.3
DetaljerInf109 Programmering for realister Uke 5. I denne leksjonen skal vi se på hvordan vi kan lage våre egne vinduer og hvordan vi bruker disse.
Inf109 Programmering for realister Uke 5 I denne leksjonen skal vi se på hvordan vi kan lage våre egne vinduer og hvordan vi bruker disse. Før du starter må du kopiere filen graphics.py fra http://www.ii.uib.no/~matthew/inf1092014
DetaljerIN1000 Obligatorisk innlevering 7
IN1000 Obligatorisk innlevering 7 Frist for innlevering: 23.10. kl 12:00 Introduksjon I denne innleveringen skal du lage et program som simulerer cellers liv og død. Dette skal du gjøre ved hjelp av en
DetaljerSnøballkrig Ekspert Scratch Lærerveiledning
Snøballkrig Ekspert Scratch Lærerveiledning Introduksjon I denne oppgaven vil vi lage et spill hvor det er om å gjøre å jage bort de slemme guttene ved å kaste snøball på dem. Underveis vil vi lære hvordan
DetaljerØvingsforelesning 5 Python (TDT4110)
Øvingsforelesning 5 Python (TDT4110) Repetisjon av løkker og funksjoner Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av Øving 3 Repetisjon 2 Praktisk info Prosjekter i PyCharm må startes med
DetaljerOm du allerede kjenner Scratch og har en Scratchbruker kan du gå videre til Steg 1.
Pingviner på tur Skrevet av: Geir Arne Hjelle Kurs: Scratch Tema: Blokkbasert, Spill Fag: Programmering Klassetrinn: 1.-4. klasse, 5.-7. klasse, 8.-10. klasse Introduksjon Velkommen til Scratch. Vi skal
DetaljerAntall vedlegg O Tillatte hjelpemidler:
~ Emne: Mekatronikk Emnekode. SO504M Faglig ansvarlig Gruppe(r): 3MM pato: 16.12.03 Eksamenstid 0900-1400 Eksamensoppgaven består av Anta]] sider: 5 Antall oppgaver: 4 Antall vedlegg O Tillatte hjelpemidler:
DetaljerConcurrency. Lars Vidar Magnusson. September 20, Lars Vidar Magnusson () Forelesning i Operativsystemer September 20, / 17
Concurrency Lars Vidar Magnusson September 20, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 20.09.2011 September 20, 2011 1 / 17 Oversikt Concurrency 1 Concurrency Beskrivelse Prinsipper
DetaljerAvdeling for ingeniørutdanning Elektrogrunnlagslaboratoriet DIGITALE SYSTEMER
Avdeling for ingeniørutdanning Elektrogrunnlagslaboratoriet DIGITALE SYSTEMER Oppgavens navn: Styring av stepmotor Lab. oppgave nr.: M3 Dato utført: Klasse: Protokoll skriver : Gruppe: Øvrige gruppedeltagere
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 29: Kompleksitetsteori Roger Antonsen Institutt for informatikk, Universitetet i Oslo 13. mai 2009 (Sist oppdatert: 2009-05-17 22:38) Forelesning 29: Kompleksitetsteori
DetaljerForelesning 29: Kompleksitetsteori
MAT1030 Diskret Matematikk Forelesning 29: Kompleksitetsteori Roger Antonsen Institutt for informatikk, Universitetet i Oslo Forelesning 29: Kompleksitetsteori 13. mai 2009 (Sist oppdatert: 2009-05-17
DetaljerCodevisionAVR. Start CodevisionAVR. Velg Settings Terminal og sett opp kommunikasjonsparametrene som figur 1 viser. avrlab07a.doc HVE RI Arnfinn Lunde
AVR-LAB 07 Echo: Seriell I/O side 1 av 5 Hensikt I denne øvelsen benytter vi RS-232 overføring av data mellom STK-200 og vår PC. Programmet Terminalprogrammet på CodevisionAVR benyttes på PC. Karakterer
Detaljeroppgavesett 4 INF1060 H16 Hans Petter Taugbøl Kragset Øystein Dale Christian Resell 27. september 2016 Institutt for informatikk, UiO
oppgavesett 4 INF1060 H16 Hans Petter Taugbøl Kragset Øystein Dale Christian Resell 27. september 2016 Institutt for informatikk, UiO oppgave 1 Hvorfor har vi operativsystemer? 1 oppgave 1 Hvorfor har
DetaljerSprettball Erfaren ComputerCraft PDF
Sprettball Erfaren ComputerCraft PDF Introduksjon Nå skal vi lære hvordan vi kan koble en skjerm til datamaskinen. Med en ekstra skjerm kan vi bruke datamaskinen til å kommunisere med verden rundt oss.
DetaljerArduino med Atmel studio 6.x (6.1)
Arduino med Atmel studio 6.x (6.1) Etter å ha sett meg grenseløs lei av Arduinos IDE har jeg i lenge tid brukt Atmels eget AS6.1 Tenkte derfor lage en liten hvordan sette den opp til å virke med arduino.
DetaljerInnholdsfortegnelse. 1. Testing Feiltesting av koden Funksjonstesting: Kilder.10
1 Innholdsfortegnelse 1. Testing... 3 1.1 Feiltesting av koden... 3 1.2 Funksjonstesting:... 7 2. Kilder.10 2 1. Testing Testing av et system er nødvendig for å finne ut om systemet fungere slik det skal
DetaljerTDT4110 IT Grunnkurs Høst 2015
TDT4110 IT Grunnkurs Høst 2015 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Løsningsforlag Auditorieøving 1 1 Teori Løsning er skrevet med uthevet tekst
DetaljerIN1060: Bruksorientert design
ashwinsr karinpa jessickg sauravp IN1060: Bruksorientert design Sluttvurdering - teknisk dokumentasjon m/ video av prototype ECOTEKO Vår 2019 Side 1 / 9 Innholdsfortegnelse 1. Introduksjon 2 2. Mål og
Detaljer;Hvis avsluttningskrets_a er brutt, hopp over neste kom. ;Kretsen er hel, hopp derfor til casea_ferdig
.Include"m16def.inc" LDI r16,0xff OUT spl,r16 ;setter stack RCALL Definisjoner RCALL Config Reset_knapp: RCALL Reset Start_knapp: RCALL Startknapp Lys: RCALL Trafikklys Test_hovedkrets: RCALL Hovedtest_A
Detaljerpublic static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren
Prosedyrer Hensikten med en prosedyre Hensikten med en prosedyre er, logisk sett, å representere en jobb eller en funksjonalitet i et eller flere programmer. Bruk av entall er viktig: vi har generelt en
DetaljerVeiledning til regnearksmalen
Veiledning til regnearksmalen Regnearksmal for FORT 2011 SSB har laget en ny regnearksmal med integrerte feilkontroller. Denne løsningen er for rappoteringen i første kvartal 2011 klar for å testes. Forhåpentligvis
DetaljerHer skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den.
PXT: Stein, saks, papir Skrevet av: Bjørn Hamre Kurs: Microbit Introduksjon Her skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den. Steg 1: Velge tilfeldig
DetaljerScheduling og prosesshåndtering
Scheduling og prosesshåndtering Håndtering av prosesser i et OS OS må kontrollere og holde oversikt over alle prosessene som kjører på systemet samtidig Prosesshåndteringen må være: Korrekt Robust Feiltolerant
DetaljerProgrammering Høst 2017
Programmering Høst 2017 Tommy Abelsen Ingeniørfag - Data Innledning Dette er et dokument med litt informasjon og eksempler om kontrollstrukturer, samt oppgaver til forskjellige kontrollstrukturer. Spør
DetaljerOblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000 v2008
Oblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000 v2008 Leveringsfrist Oppgaven må løses individuelt og leveres senest fredag 22. februar 2008 kl 16.00 via Joly. Viktig: les slutten av oppgaven for
DetaljerHvordan en prosessor arbeider, del 1
Hvordan en prosessor arbeider, del 1 Læringsmål Kompilator, interpret og maskinkode CPU, registre Enkle instruksjoner: de fire regnearter Mer informasjon om temaet Internett Lokalnett (LAN) Mitt program
DetaljerDigitalstyring sammendrag
Digitalstyring sammendrag Boolsk algebra A + A = 1 AA = 0 A + A = A AA = A A + 0 = A A 1 = A A + 1 = 1 A 0 = 0 (A ) = A A + B = B + A AB = BA A + (B + C) = (A + B) + C A(BC) = (AB)C A(B + C) = AB + AC
DetaljerBygge en kube. Introduksjon. Steg 1: Lage en ny mod. Skrevet av: Pål G. Solheim
Bygge en kube Skrevet av: Pål G. Solheim Kurs: Learntomod Tema: Blokkbasert, Minecraft Fag: Programmering, Teknologi Klassetrinn: 1.-4. klasse, 5.-7. klasse, 8.-10. klasse Introduksjon Vi skal bygge en
DetaljerELE610 Prosjekter i robotteknikk, vår 2017.
Stavanger, 30. november 2016 Det teknisknaturvitenskapelige fakultet ELE610 Prosjekter i robotteknikk, vår 2017. RobotStudio-del, oppgave 3. For denne tredje RobotStudio oppgaven skal dere etter hvert
DetaljerBruk av interrupt og Timer i Arduino-program.
1 Bruk av interrupt og Timer i Arduino-program. Når vi skal utføre handlinger som kan inntreffe tilfeldig (ikke forutsigbare hendelser), slik som å håndtere alarmer, at IO ønsker service etc kan vi benytte
DetaljerLøsningsforslag til eksamen i INF2270
Løsningsforslag til eksamen i INF227 Oppgave 9 Omid Mirmotahari Oppgave 6 Dag Langmyhr. juni 24 Eksamen INF227 Sensorveiledning Oppgave 2 Kretsforenkling Hva er funksjonsuttrykket for Output gitt av A
DetaljerKjenner du alle funksjonene på tastaturet?
Kjenner du alle funksjonene på tastaturet? Guide: Tastaturet Av Bjørn André Hagen 30. Januar 2008 17:45 Kilde: Tastatur layout Et tastatur har mange knapper man ikke bruker hver dag, vi skal prøve å forklare
DetaljerBRUKERMANUAL. Isolasjonsvakt MEG-1000
BRUKERMANUAL Isolasjonsvakt MEG-1000 SCANDINAVIAN ELECTRIC AS TLF. 55 50 60 70 JANAFLATEN 28 FAKS. 55 50 60 99 POSTBOKS 80 GODVIK E-POST se.mail@scel.no 5882 BERGEN Hjemmeside http://www.scel.no Org.no.
DetaljerTDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose
1 TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose Anders Christensen (anders@ntnu.no) Rune Sætre (satre@ntnu.no) TDT4105 IT Grunnkurs
DetaljerMarine Propulsion Control Systems 9000 Series Processor Feilsøking
Marine Propulsion Control Systems 9000 Series Processor Feilsøking System Components Sections B1-2 & B3 Processor(er) Kontroll Spak(er) Push-Pull kabler Elektriske kabler og kontakter Spenning De sju spørsmålene
DetaljerGruppe(r): 2EY 30.05.02. Eksamenstid, fra-til: 09 00-14 00 Eksamensoppgaven består av. Antall sider: 4 (Inkludert denne)
HØGSKOLEN I OSLO Avdeling for ingeniørutdanning EKSAMENSOPPGAVE Fag: ELEKTRONIKK II Fagnr: SO313E Faglig veileder: K. H. Nygård, V. Tyssø Gruppe(r): 2EY Dato: 30.05.02 Eksamenstid, fra-til: 09 00-14 00
DetaljerOblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000 h2006
Oblig2 - obligatorisk oppgave nr 2 (av 4) i INF1000 h2006 Leveringsfrist Oppgaven må leveres senest fredag 30 september kl 1600 Viktig: les slutten av oppgaven for detaljerte leveringskrav Formål Formålet
DetaljerBreakout. Introduksjon. Oversikt over prosjektet. Skrevet av: Geir Arne Hjelle og Martin Lie
Breakout Skrevet av: Geir Arne Hjelle og Martin Lie Kurs: Scratch Tema: Blokkbasert, Spill Fag: Matematikk, Programmering, Kunst og håndverk Klassetrinn: 5.-7. klasse, 8.-10. klasse Introduksjon Breakout
DetaljerOblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000
Oblig2 - obligatorisk oppgave nr 2 (av 4) i INF1000 Leveringsfrist Oppgaven må leveres senest fredag 29 september kl 1600 Viktig: les slutten av oppgaven for detaljerte leveringskrav Formål Formålet med
DetaljerOblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000 v2009
Oblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000 v2009 Leveringsfrist Oppgaven må løses individuelt og leveres senest fredag 20. februar kl 16.00 via Joly. Viktig: les slutten av oppgaven for detaljerte
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Plenumsregning 1: Kapittel 1 Mathias Barra Matematisk institutt, Universitetet i Oslo 16. januar 2009 (Sist oppdatert: 2009-02-02 14:21) Plenumsregning 1 MAT1030 Diskret Matematikk
DetaljerGruppe KTN2 innlevering. Endringer gjort siden KTN1:
Gruppe 210 - KTN2 innlevering Endringer gjort siden KTN1: - Sekvensdiagram forenklet. Fjernet en del unødvendige sekvenser med portnr. Nå viser det veldig enkelt og greit gangen i tilkobling, sending av
Detaljerpublic static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren
Prosedyrer Hensikten med en prosedyre Hensikten med en prosedyre er, logisk sett, å representere en jobb eller en funksjonalitet i et eller flere programmer. Bruk av entall er viktig: vi har generelt en
DetaljerPlenumsregning 1. Kapittel 1. Roger Antonsen januar Velkommen til plenumsregning for MAT1030. Repetisjon: Algoritmer og pseudokode
Plenumsregning 1 Kapittel 1 Roger Antonsen - 17. januar 2008 Velkommen til plenumsregning for MAT1030 Torsdager 10:15 12:00 Gjennomgang av ukeoppgaver Gjennomgang av eksempler fra boka Litt repetisjon
DetaljerN-dronningproblemet Obligatorisk oppgave 1 I120, H-2000
N-dronningproblemet Obligatorisk oppgave 1 I120, H-2000 Innleveringsfrist : Mandag, 2. Oktober, kl.10:00 Besvarelsen legges i arkivskapet på UA i skuff merket I120 Innhold: utskrift av godt dokumentert
DetaljerNorsk informatikkolympiade runde
Norsk informatikkolympiade 2017 2018 1. runde Sponset av Uke 46, 2017 Tid: 90 minutter Tillatte hjelpemidler: Kun skrivesaker. Det er ikke tillatt med kalkulator eller trykte eller håndskrevne hjelpemidler.
DetaljerMamut Business Software. Introduksjon. Mamut Enterprise Abonnementsfakturering
Mamut Business Software Introduksjon Mamut Enterprise Abonnementsfakturering Dokumentasjon for utvidelser av Mamut Enterprise System Mamut Enterprise Abonnementsfakturering Versjon: 11.1 i MAMUT ENTERPRISE
DetaljerObligatorisk oppgave 1 INF1020 h2005
Obligatorisk oppgave 1 INF1020 h2005 Frist: fredag 7. oktober Oppgaven skal løses individuelt, og må være godkjent for å kunne gå opp til eksamen. Før innlevering må retningslinjene Krav til innleverte
DetaljerReiseregning - brukerveiledning. Visma - Expense
Reiseregning - brukerveiledning Visma - Expense Innholdsfortegnelse Visma Expens reiseregning... 3 Pålogging til Visma Expense reiseregning... 4 Utenfor kontorløsningen... 4 Innenfor kontorløsningen...
DetaljerKom i gang med. Åpne nettleseren, gå til: Velg «New Project».
Kom i gang med micro:bit er en mikrokontroller, en liten datamaskin som kan programmeres til å fungere sammen med knapper, motorer, sensorer, høgtalere, lysdioder, osv. Åpne nettleseren, gå til: https://makecode.microbit.org
DetaljerTDT4110 IT Grunnkurs Høst 2012
TDT4110 IT Grunnkurs Høst 2012 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Auditorieøving 2 Navn: Linje: Brukernavn: Oppgavesettet inneholder 5 oppgaver.
DetaljerUNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : INF 101 - Grunnkurs i objektorientert programmering Eksamensdag : Tirsdag 4. juni 2002 Tid for eksamen : 09.00-15.00 Oppgavesettet
DetaljerNoen innebygde funksjoner - Vektorisering
1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Uke 41: «Matlab programs» (kapittel 6) Amanuensis Terje Rydland Kontor: ITV-021 i IT-bygget vest (Gløshaugen) Epost: terjery@idi.ntnu.no
DetaljerTDT4110 IT Grunnkurs Høst 2016
TDT4110 IT Grunnkurs Høst 2016 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Auditorieøving 1 Vennligst fyll ut følgende informasjon i blokkbokstaver
DetaljerTDT4110 Informasjonsteknologi grunnkurs: Eksempler. Mangekanter
1 TDT4110 Informasjonsteknologi grunnkurs: Eksempler Kunnskap for en bedre verden Amanuensis Terje Rydland Kontor: ITV-021 i IT-bygget vest (Gløshaugen) Epost: terjery@idi.ntnu.no Tlf: 735 91845 TDT4105
Detaljer12 - Karakterer. Karakterregistrering. Registrering av eksamenskarakter
12 - Karakterer Karakterregistrering Registrering av karakterer (evaluering) kan i M-STAS registreres i karaktertabell knyttet til eksamensavvikling, eller karaktertabell knyttet til emneavvikling. Den
DetaljerHØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL
HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15. mai 2003 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LO116D Programmering i Visual Basic FU Studiepoeng:
DetaljerLæringsmål for forelesningen
Læringsmål for forelesningen Objektorientering Regler for oppførsel Java-programmering JUnit-testing Eclipse Opprette JUnit-test og kjøre den 1 Pensum Testing dekkes ikke av Liang! Er en viktig del av
DetaljerNoen innebygde funksjoner - Vektorisering
1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Uke 41: «Matlab programs» (kapittel 6) Amanuensis Terje Rydland Kontor: ITV-021 i IT-bygget vest (Gløshaugen) Epost: terjery@idi.ntnu.no
DetaljerTDT4110 IT Grunnkurs Høst 2012
TDT4110 IT Grunnkurs Høst 2012 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Øving 7 Denne øvingen er en fellesøving laget i samarbeid med emnet TMA4100
DetaljerSoloball. Introduksjon. Steg 1: En roterende katt. Sjekkliste. Skrevet av: Geir Arne Hjelle
Soloball Skrevet av: Geir Arne Hjelle Kurs: Scratch Tema: Blokkbasert, Spill Fag: Matematikk, Programmering Klassetrinn: 1.-4. klasse, 5.-7. klasse, 8.-10. klasse Introduksjon Vi skal nå lære hvordan vi
DetaljerBrukerdokumentasjon. Webservices og webklient for kodeverk/ kodeverdi verifisering
Brukerdokumentasjon Webservices og webklient for kodeverk/ kodeverdi verifisering Innholdsfortegnelse... 3... 3... 3... 3... 4... 4... 4... 4... 8... 9... 10!... 10 "... 11 # $... 11 1. Om systemet 1.1.
DetaljerTDT DESEMBER, 2008, 09:00 13:00
Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering The Department of Computer and Information Science TDT4160 DATAMASKINER GRUNNKURS
DetaljerLøsningsforslag eksamen TDT4160 høsten 2005
Løsningsforslag eksamen TDT4160 høsten 005 NB! Ved en feil er summen av prosentvektene for alle oppgavene 90 % og ikke 100 %. For å korrigere dette, ble alle resultater delt på 0,9. Oppgave 1 Alternativ
DetaljerEKSAMEN I TDT4160 DATAMASKINER GRUNNKURS
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 12 Faglig kontakt under eksamen: Magnus Jahre (952 22 309) EKSAMEN I TDT4160 DATAMASKINER GRUNNKURS
DetaljerI denne oppgåva skal me lage eit enkelt spel der pingvinane har rømt frå akvariet i Bergen. Det er din (spelaren) sin jobb å hjelpe dei heim att.
Pingviner på tur Skrevet av: Geir Arne Hjelle Oversatt av: Stein Olav Romslo Kurs: Scratch Tema: Blokkbasert, Spill Fag: Programmering Klassetrinn: 1.-4. klasse, 5.-7. klasse, 8.-10. klasse Introduksjon
DetaljerOppgaver til kodegenerering etc. INF-5110, 12. mai, 2015
Oppgaver til kodegenerering etc. INF-5110, 12. mai, 2015 Oppgave 1: Vi skal se på koden generert av TA-instruksjonene til høyre i figur 9.10 i det utdelte notatet, side 539 a) (repetisjon fra forelesningene)
DetaljerTDT4110 IT Grunnkurs Høst 2014
TDT4110 IT Grunnkurs Høst 2014 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Auditorieøving 1 Navn: Linje: Brukernavn (blokkbokstaver): Oppgavesettet
Detaljer1 Innledning. 2 Virkemåte for kortet. Bli kjent med USB I/O kort K8055. NB! Ta med multimeter og lite skrujern!
D:\Per\Fag\Styresys\Oppgavebok\K8055LV_12\Øving 1\K8055_LV2012_SANN1_2014.wpd Fag SO507E Styresystemer HIST-AFT jan 14 PHv Dataøving 1 SANNTID MED LABVIEW Bli kjent med USB I/O kort K8055. NB! Ta med multimeter
Detaljer