7-Segment Display Nybegynner Arduino Lærerveiledning

Like dokumenter
7-Segment Display. Introduksjon. Steg 1: Finn frem utstyr. Til denne oppgaven trenger du. Skrevet av: Martin Ertsås & Morten Minde Neergaard

Blinkende lysdiode Introduksjon Arduino Lærerveiledning

Steg 1: Installere programvaren

Ultralydsensor. Introduksjon. Litt om ultralydsensorer. Arduino. Skrevet av: Martin Ertsås & Morten Minde Neergaard

Prototyping med Arduino del 2

INF1510: Bruksorientert design

Prototyping med Arduino del 3

Litt mer om Arduino. Roger Antonsen Sten Solli INF januar 2011

Kanter, kanter, mange mangekanter

Bruk av interrupt og Timer i Arduino-program.

ToPlayer. Steg 1: Kom i gang med metodene setup og draw. Gjør dette: Introduksjon:

INF1510: Bruksorientert design

Kanter, kanter, mange mangekanter. Introduksjon: Steg 1: Enkle firkanter. Sjekkliste. Skrevet av: Sigmund Hansen

Det du skal gjøre i denne oppgava er først å sette opp bakgrunnen til spillet og så rett og slett å få firkanter til å falle over skjermen.

WORKSHOP BRUK AV SENSORTEKNOLOGI

Sprettende ball Introduksjon Processing PDF

ToPlayer. Introduksjon: Skrevet av: Ruben Gjerstad Eide og Kine Gjerstad Eide

Verden - Del 2. Steg 0: Oppsummering fra introduksjonsoppgaven. Intro

Tetris. Introduksjon. Skrevet av: Kine Gjerstad Eide. Lag starten på ditt eget tetris spill!

SUPER DISCLAIMER. Vi endrer opplegget litt fra år til år, og vi hører på dere!

Verden. Steg 1: Vinduet. Introduksjon

Sprettende ball. Introduksjon: Steg 1: Vindu. Sjekkliste. Skrevet av: Sigmund Hansen

ARDUINO STUDIELABEN PROGRAMMERING DIGITALE/ANALOGE INNDATA/UTDATA LYSDIODER FRITZING. Roger Antonsen INF januar 2012

Mattespill Nybegynner Python PDF

Ping pong. Steg 1: Sprettende ball. Sjekkliste. Introdusjon:

Arduino med Atmel studio 6.x (6.1)

Uendelig bakke. Introduksjon. Skrevet av: Kine Gjerstad Eide

Tegnespillet. Introduksjon:

Tell sekunder. Steg 0: Hva er forskjellig fra før? Introduksjon. I denne oppgaven skal vi lage vårt eget spill!

Her skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den.

Pseudonym presenterer TEKNISK RAPPORT. Medlemmer: Camilla Christensen, Emma Tvinnereim, Hedda Dyngeland og Maren Berge

Verden. Introduksjon. Skrevet av: Kine Gjerstad Eide og Ruben Gjerstad Eide

EKSAMEN (Del 2, våren 2015) Løsningsforslag

En to-timers oppskrift for å bygge og programmere en Arduino-drevet strikk-

Bygge en pyramide. Introduksjon. Steg 1: Lage en ny mod. Sjekkliste. Skrevet av: Pål G. Solheim

IN1060: Bruksorientert design

INF1510: Bruksorientert design

Python: Input og output

Arduino bilen er en selvgående liten robot. Roboten består av:

Bygge en pyramide. Steg 1: Lage en ny mod. Sjekkliste. Introduksjon

PXT: Det regner mat! Introduksjon. Steg 1: Grunnlag. Sjekkliste. Skrevet av: Helene Isnes

2. La det bli lys Ditt første Arduino program

Steg 1: Piler og knappetrykk

Bruk av interrupt og Timer i Arduino-program.

PXT: Himmelfall. Introduksjon. Skrevet av: Helene Isnes og Julie Revdahl

Snurrige figurer. Steg 1: En snurrig figur. Sjekkliste. Introduksjon

Farger Introduksjon Processing PDF

Sprettball Erfaren ComputerCraft PDF

PXT: Komponer en melodi

PXT: Bjelleklang. Introduksjon. Skrevet av: Kolbjørn Engeland, Julie Revdahl

Tell sekunder. Introduksjon. Skrevet av: Teodor Heggelund. I denne oppgaven skal vi lage vårt eget spill!

Steg 1: Lag bildedeklarasjon

Bygge en kube. Steg 1: Lage en ny mod. Sjekkliste. Introduksjon

INF1510 Oblig #1. Kjetil Heen, februar 2016

Steg 0: Installere Pygame Zero

CSS: Animasjon Nybegynner

Om du allerede kjenner Scratch og har en Scratchbruker kan du gå videre til Steg 1.

Bygg et Hus. Steg 1: Prøv selv først. Sjekkliste. Introduksjon. Prøv selv

Verden - Del 2. Intro. Skrevet av: Kine Gjerstad Eide

Breakout. Introduksjon. Oversikt over prosjektet. Skrevet av: Geir Arne Hjelle og Martin Lie

Bursdag i Antarktis Nybegynner Scratch PDF

består av 7 sider inklusiv denne forsiden og vedlegg. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene.

Farger. Introduksjon. Skrevet av: Sigmund Hansen

Hvor i All Verden? Del 2 Erfaren Scratch PDF

Steg 1: Hvordan styre figurer med piltastene

FORDYPNINGSEMNE 2012

Hangman. Steg 1: Velg et ord. Steg 2: Gjett en bokstav. Sjekkliste. Sjekkliste. Introduksjon

Bygge en kube. Introduksjon. Steg 1: Lage en ny mod. Skrevet av: Pål G. Solheim

Hvor i All Verden? Del 3 Erfaren Scratch PDF

Høgskoleni østfold EKSAMEN. Oppgavesettet består av 8 sider inklusiv denne forsiden og vedlegg.

Ping pong. Introdusjon: Steg 1: Sprettende ball. Sjekkliste. Skrevet av: Torbjørn Vik Lunde

Hvor i All Verden? Del 2. Introduksjon. Steg 0: Forrige gang. Skrevet av: Geir Arne Hjelle

PXT: Tikkende bombe. Introduksjon. Steg 1: Vi starter spillet. Skrevet av: Kolbjørn Engeland

1. Arduino Bluetooth 2 HC-05 modul

Hemmelige koder. Kodeklubb-koden. Steg 1: Alfabetet. Sjekkliste. Introduksjon

Donkey Kong. Introduksjon. Oversikt over prosjektet. Skrevet av: Geir Arne Hjelle

Arduino bilen er en selvgående liten robot. Roboten består av:

PXT: Hermegåsa. Steg 1: Sjekk at du har riktig utstyr. Sjekkliste. Introduksjon

Vi skal nå programmere et romskip som flyr rundt på skjermen. For å ha kontroll på bevegelsen vil vi bruke to variable, fartx og

Repetisjon Novice Videregående Python PDF

Emnenavn: Datateknikk. Eksamenstid: 3 timer. Faglærere: Robert Roppestad. Hele oppgavesettet består av 8 oppgaver, samt 1 vedlegg.

Hva er maskinvaren Arduino

for nybegynnere Innføring i grunnleggende elektronikk Av Torgeir Bull

King Kong Erfaren Scratch PDF

Program brusautomat Eksempel på en tilstandsmaskin

Steg 1: Animasjons-attributtet

Snøballkrig Ekspert Scratch Lærerveiledning

Rosetta og Philae. Steg 1: Skilpadden blir et romskip. Sjekkliste. Introduksjon

EKSAMEN. Informasjon om eksamen. Emnekode og -navn: ITD13012 Datateknikk. Dato og tid: timer. Fagansvarlig: Robert Roppestad

PXT: Flasketuten peker på

1. Arduino Bluetooth 4.0 Low Energy (BLE)

Bygg et Hus. Introduksjon. Steg 1: Prøv selv først. Skrevet av: Geir Arne Hjelle

PXT: Det regnar mat! Introduksjon. Steg 1: Grunnlag. Sjekkliste. Skrevet av: Helene Isnes. Oversatt av: Stein Olav Romslo

Løpende strekmann Erfaren Videregående Python PDF

ARDUINO STUDIELABEN. Roger Antonsen INF februar 2012

Teknisk Rapport. Effektivisering av natteravnene i Oslos ressurser. Kristine Lokke Lotte Stubdal Renate Farberg Ane Marthe Ness Anna Helgestad

Visuell Programmering: Kom i gang med Processing

BRUKERMANUAL. Isolasjonsvakt MEG-1000

Kan micro:biten vår brukes som et termometer? Ja, den har faktisk en temperatursensor!

Transkript:

7-Segment Display Nybegynner Arduino Lærerveiledning Introduksjon La oss se på å få ett display til å telle. Steg 1: Finn frem utstyr Til denne oppgaven trenger du 1 Arduino Uno 1 breadboard 2 motstander 1k Ohm (Fargekode: brun-svart-rød-gull) 11 ledninger 1 7-segment display Steg 2: Utforskning Før vi får displayet til å vise tall, er det nyttig å utforske displayet for å se hvilke pinner som lyser opp hvilken del av displayet. Sjekkliste

Motstand fra de to midterste pinnene på displayet. Ledning fra andre enden av motstandene til ground. Ledning fra pin 13 på Arduino til pinnen nederst til høyre på displayet. int pin = 13; void setup() { pinmode(pin, OUTPUT); void loop() { pinmode(pin, HIGH); pinmode(pin, LOW); Flytt så rundt på ledningen som står i breadboardet for å se hvilke pinner på displayet som får hvilken del av segmentet til å blinke. Steg 3: Få displayet til å telle oppover Før vi skriver kode for å få displayet til å telle oppover, er vi nødt til å lage den fulle kretsen.

Sjekkliste Motstand fra de to midterste pinnene på displayet. Ledning fra andre enden av motstandene til ground. Koble resten av ledningene som vist på bildet over. Skriv kode void blank_ut_display() { for (int led = 6; led <= 13; ++led) { digitalwrite(led, LOW); void tegn_0() { digitalwrite(7, HIGH); digitalwrite(8, HIGH); digitalwrite(12, HIGH); digitalwrite(11, HIGH); digitalwrite(10, HIGH); void tegn_1() { digitalwrite(12, HIGH); void tegn_2() { digitalwrite(8, HIGH); digitalwrite(6, HIGH); digitalwrite(10, HIGH); digitalwrite(11, HIGH); void tegn_3() { digitalwrite(8, HIGH); digitalwrite(6, HIGH); digitalwrite(12, HIGH); digitalwrite(11, HIGH); void setup() { for (int led = 6; led <= 13; ++led) { pinmode(led, OUTPUT); void loop() { tegn_0(); tegn_1(); tegn_2(); tegn_3();

Om funksjoner I denne oppgaven har vi introdusert void blank_ut_display(), void tegn_0(), void tegn_1(), void tegn_2() og void tegn_3(). Disse kaller vi funksjoner, og er en måte å gruppere kode på. Når vi i void loop() sier tegn_0(); gjør vi et funksjonskall til void tegn_0(), og koden inni den funksjonen kjøres. Hvis du ser på void setup() og void loop() er dette også funksjoner, hvor void setup() kalles ved oppstart av programmet, og void loop() kalles på nytt og på nytt. Utfordringer Klarer du å få displayet til å telle fra 0 til 9? Klarer du å få punktumet til å blinke mens vi teller? Klarer du å få punktumet til å blinke dobbelt så fort som vi teller? Steg 4: Bruk en knapp for å telle oppover Til denne delen trenger du i tillegg 2 ledninger. 1 trykkknapp. Koble opp som vist på bildet over. Eneste forskjellen her er knappen. Endre kode

... int tall = 0; int knapp = 4; void setup() { for (int led = 6; led <= 13; ++led) { pinmode(led, OUTPUT); pinmode(knapp, INPUT_PULLUP); tegn_0(); void loop() { if (digitalread(knapp) == LOW) { tall += 1; switch (tall) { case 1: tegn_1(); case 2: tegn_2(); case 3: tegn_3(); default: tall = 0; tegn_0(); delay(300); Om switch Her har vi introdusert switch. Denne kan minne om en if, hvor switch (tall) sjekker verdien av tall, og finner riktig verdi i case kallene under. Så når tallet er 2 vil vi gå til case 2: og eksekvere koden under dette. break vil si at vi er ferdige med casen. Dersom en case mangler break, vil koden som er under kjøre. Altså neste case. Dette kalles å falle gjennom, eller fall through på engelsk. Dette er en ganske vanlig feil, så om man faktisk mener at neste case skal kjøres, legger man ofte på en kommentar: switch (tall) { case 0: kode_her(); // fall gjennom case 1: mer_kode_her(); default:... Dersom tall == 0 vil koden i både case 0 og case 1 kjøres, altså faller den gjennom fra case 0 til case 1. Dersom tall == 1 kjøres kun koden i case 1. Dersom tall!= 0 && tall!= 1 kjøres koden i default. Hvis verdien av tall ikke matcher noen case linjene vil vi eksekvere koden i default. Så i vår kode, når tall er 4 vil vi treffe default, sette tall til 0 og så tegne 0. Dette er grunnen til at vi begynner på igjen på 0 etter vi har telt til 3.

Utfordringer Klarer du å utvide til å telle til '9'? Klarer du å hindre at vi "går rundt" i tellingen, slik at å trykke på knappen når du allerede er på '9' ikke gjør noe? Klarer du å få punktumet til å lyse når du trykker inn knappen? Klarer du å legge til en ekstra knapp som teller nedover, så én knapp teller oppover, og den andre nedover? Lisens: CC BY-SA 4.0 Forfatter: Martin Ertsås & Morten Minde Neergaard