Design vid utveckling av inbyggda system
|
|
- Torbjörn Öberg
- för 9 år sedan
- Visningar:
Transkript
1 Design vid utveckling av inbyggda system Föreläsning i KMM,
2 Innehåll Hårdvarunära design Avbrottsrutiner och huvudloopar Kopplingsschema Designspec
3 Dagens föreläsning Hårdvarunära design - värt att tänka på Avbrottsrutiner och huvudloopar - hantering av gemensamma data Kopplingsschema - Hur och varför Designspec - bra / dåligt / hur / varför / när
4 Hårdvarunära design Innehåll Hårdvarunära design Avbrottsrutiner och huvudloopar Kopplingsschema Designspec
5 Hårdvarunära design Hårdvarunära design Inbyggt system = man ser inget Systemet byggs samtidigt som man programmerar det Man behöver ta *SMÅ* utvecklingssteg Börja med låga hastigheter - öka vid behov Spana framåt - undvik hinder Se bakåt - ingen del av systemet är färdigt förrän hela systemet är klart Var paranoid!
6 Hårdvarunära design Hårdvarunära design Inbyggt system = man ser inget Systemet byggs samtidigt som man programmerar det Man behöver ta *SMÅ* utvecklingssteg Börja med låga hastigheter - öka vid behov Spana framåt - undvik hinder Se bakåt - ingen del av systemet är färdigt förrän hela systemet är klart Var paranoid!
7 Hårdvarunära design Hårdvarunära design Inbyggt system = man ser inget Systemet byggs samtidigt som man programmerar det Man behöver ta *SMÅ* utvecklingssteg Börja med låga hastigheter - öka vid behov Spana framåt - undvik hinder Se bakåt - ingen del av systemet är färdigt förrän hela systemet är klart Var paranoid!
8 Hårdvarunära design Hårdvarunära design Inbyggt system = man ser inget Systemet byggs samtidigt som man programmerar det Man behöver ta *SMÅ* utvecklingssteg Börja med låga hastigheter - öka vid behov Spana framåt - undvik hinder Se bakåt - ingen del av systemet är färdigt förrän hela systemet är klart Var paranoid!
9 Hårdvarunära design Hårdvarunära design Inbyggt system = man ser inget Systemet byggs samtidigt som man programmerar det Man behöver ta *SMÅ* utvecklingssteg Börja med låga hastigheter - öka vid behov Spana framåt - undvik hinder Se bakåt - ingen del av systemet är färdigt förrän hela systemet är klart Var paranoid!
10 Hårdvarunära design Hårdvarunära design Inbyggt system = man ser inget Systemet byggs samtidigt som man programmerar det Man behöver ta *SMÅ* utvecklingssteg Börja med låga hastigheter - öka vid behov Spana framåt - undvik hinder Se bakåt - ingen del av systemet är färdigt förrän hela systemet är klart Var paranoid!
11 Hårdvarunära design Hårdvarunära design Inbyggt system = man ser inget Systemet byggs samtidigt som man programmerar det Man behöver ta *SMÅ* utvecklingssteg Börja med låga hastigheter - öka vid behov Spana framåt - undvik hinder Se bakåt - ingen del av systemet är färdigt förrän hela systemet är klart Var paranoid!
12 Avbrottsrutiner och huvudloopar Innehåll Hårdvarunära design Avbrottsrutiner och huvudloopar Kopplingsschema Designspec
13 Avbrottsrutiner och huvudloopar Avbrottsrutiner och huvudloopar Vilka avbrott skall vi hantera? Vad skall göras i avbrottsrutiner? Vad skall göras i kod som inte är avbrottsrutiner? Vad är lagom mycket att göra i en avbrottsrutin? Hur klarar vi krav på timing? Vilka data delas mellan avbrottsrutiner? Vilka data delas mellan avbrottsrutiner och kod som inte är avbrottsrutiner? Hur delas data? En läser och en skriver, båda läser, båda skriver och läser, etc.
14 Avbrottsrutiner och huvudloopar Antaganden Avbrott är avstängda när avbrottsrutin körs Avbrott som inkommer när avbrottsrutin körs latchas (ett avbrott per vektor) Vissa variabler kan läsas och skrivas atomärt
15 Avbrottsrutiner och huvudloopar Atomär läsning av en variabel vid upprepade tillfällen Gemensam variabel mellan ISR och huvudloop int Direction; Variabeln sätts av ISR
16 Avbrottsrutiner och huvudloopar Atomär läsning av en variabel vid upprepade tillfällen Kod i huvudloop if (Direction > 0) { increase robot speed } else if (Direction < 0) { decrease robot speed } else { do not change robot speed }
17 Avbrottsrutiner och huvudloopar Atomär läsning av en variabel vid ett tillfälle local_direction = Direction; if (local_direction > 0) { increase robot speed } else if (local_direction < 0) { decrease robot speed } else { do not change robot speed }
18 Avbrottsrutiner och huvudloopar Icke-atomär läsning av en variabel DISABLE_INTERRUPTS; local_direction = Direction; ENABLE_INTERRUPTS; if (local_direction > 0) { increase robot speed } else if (local_direction < 0) { decrease robot speed } else { do not change robot speed }
19 Avbrottsrutiner och huvudloopar Andra typer av scenarier - gemensamma data Buffertar - avbrottsrutin skriver, huvudloop läser Buffertar - avbrottsrutin läser, huvudloop skriver Gemensamma datablock - huvudloop läser/skriver hela block med avbrott avstängda (för att säkerställa konsistens av data inom ett block) Dubbelbuffring - huvudloop arbetar med en kopia, avbrottsrutin arbetar med en annan - avbrottsrutin gör swap genom att flytta pekare - huvudloop stänger av avbrott vid läsning av pekare om dessa inte kan läsas atomärt
20 Avbrottsrutiner och huvudloopar Referensmaterial Artikel på Vanheden En artikelserie från embedded.com - Embedded Gurus - The Ganssle Group -
21 Kopplingsschema Innehåll Hårdvarunära design Avbrottsrutiner och huvudloopar Kopplingsschema Designspec
22 Design vid utveckling av inbyggda system Kopplingsschema Kopplingsschema Hur ritar man ett kopplingsschema och varför?
23 Design vid utveckling av inbyggda system Kopplingsschema Kopplingsschema Från kopplingsschema till bygge I Vira in en liten del åt gången I Bocka av virade trådar i schemat
24 Kopplingsschema Kopplingsschema Från kopplingsschema till bygge Ett eller flera virkort...
25 Kopplingsschema Kopplingsschema Från kopplingsschema till bygge Parallella ledare...
26 Kopplingsschema Kopplingsschema Från kopplingsschema till bygge Anslut reset! Utan reset : svår felsökning Utan reset : felaktig programmering
27 Kopplingsschema Kopplingsschema Från kopplingsschema till bygge Anslut reset! Utan reset : svår felsökning Utan reset : felaktig programmering
28 Kopplingsschema Kopplingsschema Från kopplingsschema till bygge Anslut reset! Utan reset : svår felsökning Utan reset : felaktig programmering
29 Kopplingsschema Kopplingsschema Från kopplingsschema till bygge JTAG används för programmering och debugging JTAG-kedja eller inte
30 Innehåll Hårdvarunära design Avbrottsrutiner och huvudloopar Kopplingsschema Designspec
31 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
32 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
33 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
34 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
35 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
36 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
37 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
38 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
39 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
40 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
41 If you like living on the edge... Börja inte i tid Undvik ordentliga virningar Använd någon annans programkod Låt bli att strukturera programkoden Använd inte versionshantering Läs inte databladen Undvik att verifiera en komponents funktion Mät inte Undvik att samarbeta Bygg allt på en gång Man kan lära sig av misstagen - om man får dom i lagom doser
42 Designspec Innehåll Hårdvarunära design Avbrottsrutiner och huvudloopar Kopplingsschema Designspec
43 Designspec Designspec Checklista för designspec => Exempel på designspecar => +Fokus på hårdvaran +Pseudokod som bilaga +Upprepa *INTE* datablad Inlämningstid 5/11 kl 16:00 senast, ska en första version av designspecen vara inlämnad till handledaren. 3 arbetsdagar efter inlämnad version ska handledaren ge återmatning. Godkänd designspec ger tillgång till Muxen
44 Designspec Designspec Checklista för designspec => Exempel på designspecar => +Fokus på hårdvaran +Pseudokod som bilaga +Upprepa *INTE* datablad Inlämningstid 5/11 kl 16:00 senast, ska en första version av designspecen vara inlämnad till handledaren. 3 arbetsdagar efter inlämnad version ska handledaren ge återmatning. Godkänd designspec ger tillgång till Muxen
45 Designspec Designspec Checklista för designspec => Exempel på designspecar => +Fokus på hårdvaran +Pseudokod som bilaga +Upprepa *INTE* datablad Inlämningstid 5/11 kl 16:00 senast, ska en första version av designspecen vara inlämnad till handledaren. 3 arbetsdagar efter inlämnad version ska handledaren ge återmatning. Godkänd designspec ger tillgång till Muxen
46 Designspec Designspec Checklista för designspec => Exempel på designspecar => +Fokus på hårdvaran +Pseudokod som bilaga +Upprepa *INTE* datablad Inlämningstid 5/11 kl 16:00 senast, ska en första version av designspecen vara inlämnad till handledaren. 3 arbetsdagar efter inlämnad version ska handledaren ge återmatning. Godkänd designspec ger tillgång till Muxen
Design av inbyggda system
Design av inbyggda system Innehåll Hårdvarunära design Erfarenhet värd att tänka på Avbrottsrutiner och huvudloopar hantering av gemensamma data Kopplingsschema hur och varför Designspecar bra / dåligt
Design av inbyggda system
Design av inbyggda system Innehåll Hårdvarunära design Erfarenhet/Utmaningar värda att tänka på Avbrottsrutiner och huvudloopar hantering av gemensamma data Kopplingsschema hur och varför Designspecar
Design av inbyggda system
Design av inbyggda system Innehåll Hårdvarunära design Erfarenhet/Utmaningar värda att tänka på Avbrottsrutiner och huvudloopar hantering av gemensamma data Kopplingsschema hur och varför 10 sätt att lyckas
Design av inbyggda system. Innehåll. Hårdvarunära design. Hårdvarunära design. Hårdvarunära design. Hårdvarunära design TDD
Innehåll Design av inbyggda system Erfarenhet/Utmaningar värda att tänka på Avbrottsrutiner och huvudloopar hantering av gemensamma data hur och varför Designspecar bra / dåligt / hur / varför / när Inbyggt
Design av inbyggda system
Design av inbyggda system Innehåll Hårdvarunära design Erfarenhet/Utmaningar värda att tänka på Avbrottsrutiner och huvudloopar hantering av gemensamma data Verkligt parallella processer hantering av gemensamma
Goda råd till de som ska utföra ett liknande projekt (från KMM 2016)
Goda råd till de som ska utföra ett liknande projekt (från KMM 2016) Snöa inte er på lösningar som kanske fungerar, eller som ni bara vill få fungera. Var realistiska och våga byt lösning om den det verkar
Snake. Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola,
Snake Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola, 2015-05-18 Oskar Petersen, I-12 Handledare: Bertil Lindvall Abstract Denna rapport beskriver ett projekt där ett klassiskt
Digitalt lärande och programmering i klassrummet
2016-03-03 Digitalt lärande och programmering i klassrummet Blue-Bot Introduktion Vi kommer i denna övning att bekanta oss med små charmiga robotar som heter Blue-Bots. Dessa robotar är bra för att introducera
Bilen som inte kan krocka
Projektrapport Digitala system EITA15 Bilen som inte kan krocka Gruppmedlemmar: Oscar Skarler, Jonathan Persson, Erik Schiemann och Mohammed Abou Naasa vt 2019 Sammanfattning Inom kursen Digitala system
RemoteBud. Inlämnas: Patrik Johnsson, e01pjo Viktor Karlsson, e01vk
RemoteBud Inlämnas: 2005-02-01 Patrik Johnsson, e01pjo Viktor Karlsson, e01vk Abstract Skulle du också vilja styra dina lampor och rulla ner dina persienner med hjälp av din TV-fjärrkontroll? Remotebud
Digitala Projekt (EITF11)
Digitala Projekt (EITF11) Temperaturgivare med larm Handledare: Bertil Lindvall 2014-05-20 Erik Hellered, I-11 Andreas Sjöblom, I-11 Philip Dahlström, I-11 Table of Contents Inledning... 1 Kravspecifikation...
Flaxande Fågel. Introduktion. Level
Level 2 Flaxande Fågel All Code Clubs must be registered. Registered clubs appear on the map at codeclub.org.uk - if your club is not on the map then visit jumpto.cc/18cplpy to find out what to do. Introduktion
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt
DEPARTMENT OF INFORMATION TECHNOLOGY. Digitala Projekt. Redovisning av Projekt - Grupp 14
DEPARTMENT OF INFORMATION TECHNOLOGY Digitala Projekt Redovisning av Projekt - Grupp 14 Carl Hoffstedt (c03cho@student.lth.se) & Gustaf Lund (d02gl@student.lth.se) 5/19/2007 How can you construct an embedded
Program & programmering
Program & programmering Vad är program? Satser och instruktioner, toggla igenom exempel Program på olika nivåer, för olika maskiner, för olika saker Tolka program; kompilator, intepretator, binärbytekod,
Enchipsdatorer med tillämpningar LABORATION 7, ROBOT
Enchipsdatorer med tillämpningar LABORATION 7, ROBOT Laborationsansvariga: Anders Arvidsson Utskriftsdatum: 2005-05-14 Laboranter: 1 Syfte Denna laboration syftar till att introducera interrupt och watchdog
Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska
Matlab-föreläsning 3 (4), 17 september, 2015 Innehåll Sekvenser (från förra föreläsningen) Upprepning med for-slingor och while-slingor Villkorssatser med if - then -else - Logik Sekvenser - repetion från
Digitala Projekt(EITF40) - Larm
Digitala Projekt(EITF40) - Larm Handledare: Bertil Lindvall Erik Oredsson, I-09 Sara Sellin, I-09 2012-05-08 1. SAMMANFATTNING I denna rapport presenteras vårt projekt att bygga ett huslarm från grunden
Laboration i datateknik
KUNGLIGA TEKNISKA HÖGSKOLAN Laboration i datateknik Felsökning och programmering av LEGO NXT robot Daniel Willén 2012 09 06 dwill@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Syftet med
Hjälpmedel: Appendix A. VHDL-syntax. (bifogas detta prov) Appendix B.2. IEEE-package (bifogas detta prov)
7HQWDPHQL.XQGDQSDVVDGHNUHWVDUI U(P Datum: 991012 Tid: 8.00-13.00 Lokal: E138 Hjälpmedel: Appendix A. VHDL-syntax. (bifogas detta prov) Appendix B.2. IEEE-package (bifogas detta prov) Vid eventuella frågor
PlantPuppy Räddaren för den som inte kan hålla växterna vid liv
Lunds Tekniska Högskola Elektro- och informationsteknik Digitala Projekt PlantPuppy Räddaren för den som inte kan hålla växterna vid liv Gerda Sidwall Thygesen Sofia Sundbom Zoë Wyon ine14gth@student.lu.se
Rapport Digitala Projekt EITF11 Grupp 4 Axel Sundberg, Jakob Wennerström Gille Handledare: Bertil Lindvall
Sammanfattning I denna rapport behandlas ett projekt inom kursen Digitala Projekt, EITF11, vid Lunds Tekniska högskola. Syftet med projektet är att konstruera en enkel digital prototyp samt programmera
TETRIS. LTH, Campus Helsingborg EITA15 Digitala System
TETRIS LTH, Campus Helsingborg EITA15 Digitala System Handledare: Bertil Lindvall Författare: Isak Shamun, Viktor Kulle, Mark Slipac och Dennis Järnåsen Datum: 2019-05-09 Abstract This report concerns
Logik och kontrollstrukturer
Logik och kontrollstrukturer Flödet av instruktioner i ett programmeringsspråk bygger vi upp med hjälp av dess kontrollstrukturer. I C har vi exemplen if, if else, while, do while. Dessutom finns switch
Mekanisk solros, Digitala projekt(edi021) Kristoer Nordvall, Stefan Windfeldt, Inlämmnad: 4 december 2006
Mekanisk solros, Digitala projekt(edi021) Kristoer Nordvall, d03kn@student.lth.se Stefan Windfeldt, d03sw@student.lth.se Inlämmnad: 4 december 2006 Innehåll 1 Problembeskrivning 3 2 Teknisk beskrivning
Bruksanvisning KABA MAS AUDITCON KABA MAS HAMILTON Modell 100, 200, 400, 50 och 52
Bruksanvisning KABA MAS AUDITCON KABA MAS HAMILTON Modell 100, 200, 400, 50 och 52 Snabbinstruktion Mas-Hamilton högsäkerhetslås Modell 100, 200, 400 1. Öppning/stängning av låset 2. Vrid ratten så att
Sphero SPRK+ Appen som används är Sphero Edu. När appen öppnas kommer man till denna bild.
Sphero SPRK+ Appen som används är Sphero Edu När appen öppnas kommer man till denna bild. Klicka på 3D-modeller för att se delarna på Sphero Klicka här för att ansluta Sphero till ipad Programmet för att
Inlämningsuppgifter, EDAF30, 2015
LUNDS TEKNISKA HÖGSKOLA Institutionen för datavetenskap Programmering i C++ Inlämningsuppgifter, EDAF30, 2015 Det finns två deluppgifter som båda ska lösas: 1. skriv ett program för att hantera bankkonton
The Secure Light. Digitala Projekt EITF11. Hanna Tinglöf, I-12 Anna Horvath, I-12 Filippa Österlin, I-12. Handledare: Bertil Lindvall
The Secure Light Digitala Projekt EITF11 Hanna Tinglöf, I-12 Anna Horvath, I-12 Filippa Österlin, I-12 Handledare: Bertil Lindvall Lunds Tekniska Högskola 2015-05-18 ABSTRACT The Secure Light is the new
Digitala projekt rapport
Digitala projekt rapport Alexander Westrup, d04aw@student.lth.se Martin Sandgren, d04ms@student.lth.se 4 december 2007 Innehåll 1 Abstract 1 2 Inledning 1 3 Arbetsgång 1 4 Hårdvara 1 4.1 Processor...............................
Digitala projekt Linjeföljande bil
Digitala projekt Linjeföljande bil EITA15 Elektro- och informationsteknik Handledare: Bertil Lindvall Grupp 17 Hannes Adolfsson Milad Amini Albin Svärd Almir Šaran Emir Zukic EITA 15 - Digitala projekt
Grundläggande programmering med C# 7,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för: TEN1 NGC011 ADAEK17, ASYST17 samt öppen för alla
Grundläggande programmering med C# 7,5 högskolepoäng Provmoment: Ladokkod: Tentamen ges för: TEN1 NGC011 ADAEK17, ASYST17 samt öppen för alla TentamensKod: Tentamensdatum: 180322 Tid: 09.00 13.00 Hjälpmedel:
KUNGLIGA TEKNISKA HÖGSKOLAN. Laboration II1310. Programmera Lego Mindstorm robot i NXC
KUNGLIGA TEKNISKA HÖGSKOLAN Laboration II1310 Programmera Lego Mindstorm robot i NXC Johnny Vu 120904 Jvu@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Vi har genomfört en laboration för
Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p
Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Skriven av Michael Andersson Introduktion Programmering I högnivåspråk fokuserar på själv problemet (algoritmen) istället
Gustaf Backman, Anton Nystedt, Nicholas Peebo Battleships. Lunds tekniska högskola. EITF11 Digitala projekt
Battleships Lunds tekniska högskola EITF11 Digitala projekt Gustaf Backman, Anton Nystedt & Nicholas Peebo 1 1. Inledning 1.1 Bakgrund Digitala projekt (EITF11) är en konstruktionskurs där studenter delas
Extramaterial till Matematik Y
LIBER PROGRAMMERING OCH DIGITAL KOMPETENS Extramaterial till Matematik Y NIVÅ TRE Algebra ELEV Det finns många olika programmeringsspråk. Ett av dem är Python, som du ska få bekanta dig med i den här uppgiften.
Före Kravspecifikationen
projektidé BP0 förstudie BP1 förberedelse BP2 Kravspecifikationen Beskriver VAD som ska utföras i projektet? projektdirektiv beslutspunkter specifikationer planer kunddokument rapporter protokoll M beställarens
Lego Robot [ ] [ ] [ ]
Lego Robot av [ ] [ ] [ ] INNEHÅLLSFÖRTECKNING LABB1 (INFORMATION) # UPPGIFT 1 # UPPGIFT 2 # UPPGIFT 3 # LABB2 (OPERATÖRER) # UPPGIFT 1 # UPPGIFT 2 # UPPGIFT 3 # LABB3 (VARIABLER) # UPPGIFT 1 # UPPGIFT
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
Välkomna till DIT012 IPGO. Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1.
Välkomna till DIT012 IPGO 1 Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1. Lärare och Handledare Kursansvariga, examinatorer, föreläsare och handledare
Whack-a-Witch. Introduktion. Nivå
Nivå 1 Whack-a-Witch All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/ccwreg to register your club. Introduktion
Labb 1: Vad, hur, och varför?
Labb 1: Vad, hur, och varför? jonas.kvarnstrom@liu.se 2017 "En sak i taget": Öva grunder innan det blir mer komplicerat Starkt önskemål från studenter: Prova på kontrollstrukturer Labb 1: Intro till grunder
Programmering med Arduino
Programmering med Arduino Av Staffan Melin och Martin Blom Bild & form-skolan, Masthugget, Göteborg 2015 Staffan Melin, staffan.melin@oscillator.se Martin Blom, martinblomblom@hotmail.com Detta verk är
Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering...
Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering... 4 Bussen (projektförslag)... 5 Bakgrund... 5 Klassen Buss
Välkomna till KMM! KMM. KMM - lärandemål Efter fullgjord kurs ska ni bland annat kunna:
Elektronik Digital tekn. Välkomna till KMM! Datorkonstr. Datorteknik Ca 1000 timmar Kursansvarig: Tomas Svensson Projekt Projektmodell Diverse Handledare Lokaler, utrustning Uppgift Övergripande kursmål:
Välkomna till KMM! KMM. KMM - lärandemål Efter fullgjord kurs ska ni bland annat kunna:
Elektronik Digital tekn. Välkomna till KMM! Datorkonstr. Datorteknik Ca 1000 timmar Kursansvarig: Tomas Svensson Projekt Projektmodell Diverse Handledare Lokaler, utrustning Uppgift Övergripande kursmål:
Programmeringsteknik I
Programmeringsteknik I HT18 Lärare: Johan Öfverstedt (johan.ofverstedt@it.uu.se, rum 2144) och ett stort antal labbhandledare Föreläsning 1: Intro till kursen Registrering och avregistrering Undervisningsformer:
Programmering i C, 7,5 hp
Programmering i C, 7,5 hp Föreläsning 4 VÄLKOMNA! 31 switch-satsen Antag att vi har en heltalsvariabel a som skall styra programflödet Antag vidare att a kan anta tex 5 olika värden 1,2,3,4,5 printf( Mata
Introduk+on +ll programmering i JavaScript
Föreläsning i webbdesign Introduk+on +ll programmering i JavaScript Rune Körnefors Medieteknik 1 2012 Rune Körnefors rune.kornefors@lnu.se Språk Naturliga språk Mänsklig kommunika+on T.ex. Svenska, engelska,
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
Strukturerad problemlösning. Metoder och verktyg för datavetare Ht09
Strukturerad problemlösning Metoder och verktyg för datavetare Ht09 Syfte Syftet med uppgiften är att få kännedom om ett strukturerat arbetssätt för hur ett problem kan angripas i de olika steg som svarar
Programmering robotprogrammering med mbot
Programmering 4-6 -robotprogrammering med mbot Lärarhandledning till Robotprogrammering med mbot 2 o o o o o o o Innehåll Vad är en mbot?... s4 De olika delarna på en mbot.... s5 Blockprogrammering.. s9
String [] argv. Dagens Agenda. Mer om arrayer. Mer om arrayer forts. String [] argv. argv är variabelnamnet. Arrayer och Strängar fortsättning
Dagens Agenda String [] argv String [] argv Arrayer och Strängar fortsättning Booleska operatorer if, for, while satser Introduktion till algoritmer public static void main(string [] argv) argv är variabelnamnet
Fö 5+6 TSEA81. Real-time kernel + Real-time OS
Fö 5+6 TSEA81 Real-time kernel + Real-time OS Stackens användningsområde * JSR / RTS : returadress * Temporärdata (push / pop) void myfunc(void) { int i; // hamnar nog i register int test[10]; // hamnar
Code-Lite tutorial ( /RoJ)
Code-Lite tutorial (2013-03-20/RoJ) Följ dessa anvisningar för att skapa projekt, kompilera/länka och testa dina laborationsuppgifter 3,4. Project Projekt, innehåller bland annat ett antal källtextfiler
Roboten. Sida 1 av 11
EV3 ipad Roboten Fyra output portar A,B,C och D(motorer) Fyra input portar 1,2,3 och 4 (sensorer) USB, Bluetooth, eller Wi-Fi koppling 16 MB flash minne 64 MB RAM SD Card Port: 32 GB Flera inbyggda verktyg
Databaser design och programmering. Transaktionshantering och säkerhet säkerhetsproblem fleranvändarproblem transaktioner låsning
Databaser design och programmering Transaktionshantering och säkerhet säkerhetsproblem fleranvändarproblem transaktioner låsning 2 Säkerhetsproblem Informationen i databasen måste vara pålitlig (inte kunna
Laborationsrapport av robotprogrammering
KUNGLIGA TEKNISKA HÖGSKOLAN Laborationsrapport av robotprogrammering Programmering av LEGO MINDSTORMS robot Rikard Bjärlind 2012-09-07 E-post: bjarlind@kth.se Introduktionskurs i datateknik (H12) II1310
Blockly är en av apparna som används för att styra roboten Dash. Den är väldigt enkel i sin utformning och kan med fördel användas av yngre barn.
Manual till appen Blockly till Dash Blockly är en av apparna som används för att styra roboten Dash. Den är väldigt enkel i sin utformning och kan med fördel användas av yngre barn. Du måste ha en Dashrobot
Vad händer egentligen före en krasch? Svarta lådor och tidsmaskiner sparar pengar för företag
PRESSRELEASE 2003-02-07 Vad händer egentligen före en krasch? Res bakåt i tiden och se hur och varför programmet uppförde sig fel! Svarta lådor och tidsmaskiner sparar pengar för företag Svarta lådor och
Programmering. Scratch - grundövningar
Programmering Scratch - grundövningar Lär känna programmet: Menyer för att växla mellan att arbeta med script, utseende/bakgrund och ljud. Scenen där allting utspelar sig. Här klickar du på bakgrunden
Rapport. Fyra i rad-spel. Rapport Digitala Projekt EITF11 Grupp 9 Emma Rasmusson & Louise Ragnarsson Handledare: Bertil Lindvall
Rapport Digitala Projekt EITF11 2017-05-08 Rapport Fyra i rad-spel Sammanfattning: Detta dokument beskriver arbetsprocessen i det projekt som är en del av kursen Digitala Projekt(EITF11) vid Lunds Tekniska
Micro:bit och servomotorer
Micro:bit och servomotorer Servomotorer som beskrivs här är så kallade micro servos och har beteckningarna: FS90 FS90R En servomotor har tre kablar. En brun som kopplas till GND, en röd som är för strömförsörjning
Översikt Introduktion DST 1. Nicholas Wickström. IDE, Högskolan i Halmstad. N. Wickström
DST 1 Nicholas Wickström IDE, Högskolan i Halmstad 2009 1 Outline 1 Vad är Hårdvara? (Datorsystemmodell; processor m. periferi, IO, Minne) Typiskt för hårdvarunära programmering (datablad, register, datastrukturer,...)
The Intelligent Timer
The Intelligent Timer Linnea Karell och Oscar Bagge, I10 Handledare: Bertil Lindvall 2013-05-20 Abstract The objective of this project was to build a prototype of a digital timer. The product design specification
TDDC74 Programmering: Abstraktion och modellering Dugga 2, kl 8 10, 5 mars 2015
TDDC74 Programmering: Abstraktion och modellering Dugga 2, kl 8 10, 5 mars 2015 Läs alla frågorna först, och bestäm dig för i vilken ordning du vill lösa uppgifterna. Skriv tydligt och läsligt. Använd
Grundläggande programmering med C# 7,5 högskolepoäng
Grundläggande programmering med C# 7,5 högskolepoäng Provmoment: TEN1 Ladokkod: NGC011 Tentamen ges för: Omtentamen DE13, IMIT13 och SYST13 samt öppen för alla (Ifylles av student) (Ifylles av student)
Innehållsförteckning. Figur- och tabellförteckning. Figure 1 Blockschema över hårdvaran...4 Figure 2 Blockschema över programet...
Abstract Syftet var att konstruera en väder station som håller koll på temperaturen. Huvudfunktionen var att få en grafisk visning av temperaturen över ett visst tidsintervall eftersom vi valde den grafiska
Simon Johansson Introduktionskurs Datateknik 1310
KTH KISTA Robot på linje Programmering i NXC Simon Johansson 2013-09-05 simoj@kth.se Introduktionskurs Datateknik 1310 Sammanfattning Laborationens syfte är att tillge mig fördjupande kunskaper om hur
DANCING ROBOT. EITF11, Grupp 10. Kajsa Salomonsson, Hugo Hedin och Petter Mårtensson
DANCING ROBOT EITF11, Grupp 10 Kajsa Salomonsson, Hugo Hedin och Petter Mårtensson Abstract As part of the course Digital Projects EITF11 at the Faculty of Engineering, Lund University, a prototype of
Objektorienterad Programkonstruktion. Föreläsning jan 2017
Objektorienterad Programkonstruktion Föreläsning 15 30 jan 2017 Felsökning Med moderna programmeringsverktyg är rena syntaxfel oftast lätta att åtgärda Fel som kan vara svårare att åtgärda är t.ex: thread
1 Kravspecifikation Snake App
Kravspecifikation Snake App - Kravspecifikation Snake App Utskriven/PDF Export: 2011-09-07 Copyright 2011 Sidan 1 av 7 1 Kravspecifikation Snake App 1.1 Vad är Snake App? Vi skall gör ett Snake Spel för
Planering Programmering grundkurs HI1024 HT 2015 - data
Planering Programmering grundkurs HI1024 HT 2015 - data Föreläsning V36 Föreläsning 1 Programmering Kurs-PM Programmeringsmiljö Hello World! Variabler printf scanf Föreläsning 2 Operatorer Tilldelning
JavaScript Block Editor:
Micro:bit Tärningen Att räkna med slumpen genom t.ex. tärningsslag och föra statistik över antal slag kan vara tidskrävande. Speciellt om man ska gör 100 st eller 1000 st kast. Genom att använda programmering
Pulsmätare med varningsindikatorer
Pulsmätare med varningsindikatorer Elektro- och informationsteknik Projektrapport, EITF11 Digitala Projekt Charlie Hedhav Sofia Johansson Louise Olsson 2016-05-17 Abstract During the course Digitala Projekt
Programmerbara kretsar och VHDL 2. Föreläsning 10 Digitalteknik, TSEA22 Oscar Gustafsson Institutionen för systemteknik
Programmerbara kretsar och VHDL 2 Föreläsning 10 Digitalteknik, TSEA22 Oscar Gustafsson Institutionen för systemteknik 2 Dagens föreläsning Programmerbara kretsar igen Mer om processer Egna typer Använda
Planering Programmering grundkurs HI1024 HT TIDAA
Planering Programmering grundkurs HI1024 HT 2016 - TIDAA Föreläsning V35 Föreläsning 1 Programmering Kurs-PM Programmeringsmiljö Hello World! Variabler printf scanf Föreläsning 2 Operatorer Tilldelning
Snabbstart av Aspen med hjälp av skärmdumpar
Snabbstart av Aspen med hjälp av skärmdumpar Skärmdumparna är inte uppdaterade till senaste version av Aspen. Hitta Aspen! Start / All Programs / AspenTech / Process Modeling V8.0 / Aspen Plus / Aspen
Prestanda och code cleanup
Prestanda och code cleanup Innehåll Generellt... 2 Nya funktioner... 2 Visa arbetstidtransaktioner för operation... 2 Tidreg., frånvaroreg., Ej reg. Tid och återställ öppen transaktion i Personallistan...
Laborationshandledning
Laborationshandledning Utbildning: ED Ämne: TNE094 Digitalteknik och konstruktion Laborationens nummer och titel: Nr 3 Kombinatoriska nät Laborant: E-mail: Medlaboranters namn: Handledarens namn: Kommentarer
Föreläsning 1 & 2 INTRODUKTION
Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga
Kursinformation Grundkurs i programmering med Python
Hösten 2009 Två kurser i en 5DV105 - Programmeringsteknik med Python och MATLAB Programmeringsteori Föreläsningar om Python Färdighetsövning Laborationer i Python 5DV106 - Programmering i Python Praktisk
Design av interaktiv multimedia. Läs i förväg om det som övningarna kommer att beröra. Träna hemma både före och efter övningarna.
Använd olika lager. Döp lagren! Organisera era bibliotek! Design av interaktiv multimedia Ge era symboler instansnamn för att hitta dem med AS. Nytt för denna kurs: Ingen ActionScript-kod i.fla-filen!
Introduktion till programmering D0009E. Föreläsning 5: Fruktbara funktioner
Introduktion till programmering D0009E Föreläsning 5: Fruktbara funktioner 1 Retur-värden Funktioner kan både orsaka en effekt och returnera ett resultat. Hittills har vi ej definierat några egna funktioner
Programmeringsappar. Av Alex
Programmeringsappar Av Alex Omdöme 4/5 40 Kr 10+ År Robot School Robot School kommer från företaget Next is Great I appen Robot School hjälper man roboten R-obbie att nå sitt batteri genom att placera
Programmering B med Visual C++ 2008
Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,
Digitala Projekt VT13. PING-Pong
Digitala Projekt VT13 PING-Pong Författare: Patrik Karlsson I-10, Erik Friberg I-10 Handledare: Bertil Lindvall Projektarbete Institutionen för Elektro- & Informationsteknik 2013-05-20 Abstract The purpose
Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.
Att förstå variabler Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata. Vad är en variabel? En variabel är en plats att lagra information. Precis
Ipad i teknikundervisningen
Ipad i teknikundervisningen Innan vi börjar 1. Anslut till MAUs nätverk 2. Om du har platta: ladda ner appen micro:bit från Appstore eller Google Play 3. Lite material som berör passet: https://tinyurl.com/cetis-malmo
PARALLELL OCH SEKVENTIELL DATABEHANDLING. Innehåll
PARALLELL OCH SEKVENTIELL DATABEHANDLING Innehåll Parallellism i VHDL Delta delays och Simuleringstid VHDLs simuleringscykel Aktivering av Processer Parallella och sekventiella uttryck 1 Controller PARALLELLISM
Laboration i datateknik
KUNGLIGA TEKNISKA HÖGSKOLAN Laboration i datateknik Programmering av LEGO-robot Rickard Eriksson 2012-09-06 rieri@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Denna rapport är till följd
Välkommen till. Datastrukturer, algoritmer och programkonstruktion. eller DOA
Välkommen till Datastrukturer, algoritmer och programkonstruktion eller DOA Jag: Christer Labbassar: Caroline: Johan: Agenda, före lunch Inledning om DOA-kursen Backspegel Mål Syfte Examination Om lärande
EITF11 Digitala Projekt TIC TAC TOE. Lukas Ljungblom & Johan Lyckenvik I-13 Handledare: Bertil Lindvall
EITF11 Digitala Projekt TIC TAC TOE Lukas Ljungblom & Johan Lyckenvik I-13 Handledare: Bertil Lindvall Lunds Tekniska Högskola VT 2016 0 Sammanfattning Rapporten handlar om ett projekt i kursen EITF11
Manual för Autostart Speed Control
Manual för Autostart Speed Control Utrustningen startas genom att man dra ut den röda knappen på instrumentpanelen märkt med Autostart. Utrustningen startar i läget klart för att köra ett startförlopp,
Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod
Föreläsning 3-4 Innehåll Diskutera Vad gör programmet programmet? Föreslå vilka satser vi kan bryta ut till en egen metod. Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer
729G75: Programmering och algoritmiskt tänkande. Tema 1, föreläsning 1 Jody Foo
729G75: Programmering och algoritmiskt tänkande Tema 1, föreläsning 1 Jody Foo Föreläsningsöversikt Kursinfo / Om kursen Algoritmer Objektorienterad programmering i praktiken terminologi använda objekt
EV3 Roboten. Sida 1 av 13
EV3 Roboten Fyra output portar A,B,C och D(motorer) Fyra input portar 1,2,3 och 4 (sensorer) USB, Bluetooth, eller Wi-Fi koppling 16 MB flash minne 64 MB RAM SD Card Port: 32 GB Flera inbyggda verktyg
Logik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter.
TAIU07 Föreläsning 3 Logik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter. 27 januari 2016 Sida 1 / 21 Logiska variabler
Helena Harrysson och Linnéa Wickberg
Snake Ett klassiskt spel i ny tappning Helena Harrysson och Linnéa Wickberg 2013-05-20 Handledare Bertil Lindvall Abstract The course Digitala Projekt, EITF11, focuses on the process of constructing a
Programmering av LEGO NXT robot Laborationsrapport för programering av robot för att följa svartmarkerad linje på maken
KUNGLIGA TEKNISKA HÖGSKOLAN Programmering av LEGO NXT robot Laborationsrapport för programering av robot för att följa svartmarkerad linje på maken Hannes Rabo 2015-08-30 hrabo@kth.se Introduktionskurs