top of page

Heading 2

Kom igang med koding av Micro:bit!

1. Introduksjon

Micro:bit kan kodes ved å bruke ulike kodespråk, men vi skal bruke MakeCode som er et gratis, blokkbasert kodeprogram spesielt utviklet for barn og nybegynnere til koding.

​

Gå til https://makecode.microbit.org/

​

Trykk på "New Project" 

​

OBS: Vi anbefaler at du har MakeCode åpent i en annen fane mens du går gjennom dette introkurset, så du kan prøve å kode selv underveis!

1. Introduksjon til MakeCode

Introduksjon

Til venstre kan vi se en testversjon av Micro:bit'en. Her kan du testekodene du lager, uten å måtte laste koden over på den fysiske Micro:bit'en.

​

Det grå feltet er arbeidsområdet. Her lager vi selve koden.

​

I arbeidsområdet ligger det allerede to blå blokker. En blokk er en kommando som skal fortelle Micro:bit'en hva den skal gjøre. En rekke blokker som settes sammen utgjør en algoritme - et sett instruksjoner. 

​

​

De to blokkene som ligger i arbeidsområdet er blå i fargen. Dette betyr at de hører til i det blå menyvalget i "bilblioteket": "Basic".

I dette menyvalget ligger blokker som vi bruker ofte.

​

On start blokken:

Med denne kommandoen sier vi at noe skal skje med Micro:bit'en når vi slår den på.

​

Forever blokken:

Med denne kommandoen sier vi at noe skal gjenta seg for alltid.

Ved å trykke på menyvalget "Basic" (blå) i biblioteket, får vi opp en rekke blokker. Vi kan trykke på en blokk og dra den ut i arbeidsområdet.

​

La oss si vi ønsker å vise et smiletegn med led-lysene på forsiden av Micro:bit'en. Da kan vi velge "show leds", og dra denne ut i arbeidsområdet. Hvis vi drar blokken "show leds" inn i blokken "forever" så sier vi til Micro:bit'en at den skal vise de led-lysene vi velger for alltid.

Vi kan tegne det vi ønsker å vise på Micro:bit-"skjermen" ved å trykke på de led-lysene vi ønsker at skal lyse. Her har vi tegnet et smilefjes, og vi kan se at test-Micro:bit'en til venstre viser et lysende smilefjes.

​

Nå har vi laget en kode!

Denne koden kan lastes over til datamaskinen (Micro:bit'en) og fortelle den at den skal vise et smilefjes.

​

Se her for hvordan laste koden over til Micro:bit'en, avhengig av om du bruker pc, mac, tablet eller mobiltelefon.

​

​

Oppgave: Lag et blinkende hjerte på led-skjermen!

​

For å få et hjerte til å blinke, må vi vise et hjerte og en tom skjerm i en løkke

​

En løkke er en serie hendelser (en sekvens) som gjentar seg et visst antall ganger. Vi kan også velge at sekvensen skal gjenta seg for alltid. Da bruker vi blokken "forever".

​

​

Prøv i MakeCode!

​

​

​

​

Blinkende hjerte

2. Blinkende hjerte: Løkker

Løsning:

​

  • Velg blokken "show leds" fra "basic" i menyen.

  • Dra og slipp inni blokken "forever" på arbeidsbordet.

  • Kopier blokken "show leds" og lim inn/plasser under den første "show leds"-blokken. (Kopier: høyreklikk på blokken)

  • Tegn et hjerte i den øverste av "show leds" blokkene.

​

Micro:biten vil nå lese koden i rekkefolge fra øverst til nederst: 

Vis for alltid: et hjerte, deretter en blank skjerm, et hjerte, deretter en blank skjerm, osv. osv. Dette er løkke.

​

Utforsk videre:

​

​En løkke kan også gi en instruks om at noe skal gjenta et visst antall ganger.

​

1. Se menypunktet "loops" ("løkker") i menyen. Se om du kan gjenta det blinkende hjertet 3 ganger?

​

2. Hva tror du skjer hvis du flytter de to "show leds"-blokkene inn i "on start" blokken?

​

Løsning:

​

1. Velg blokken "repeat x times do". Denne sier at vi skal gjenta noe x antall ganger. Men vi må også definere når dette skal skje. I eksempelet til høyre har vi valgt at dette skal skje ved start ("on start").  Legg merke til at hvis vi kun drar "repeat..." blokken ut i arbeidsområdet blir den grå. Dette indikerer at den ikke vil fungere uten å putte den inni en annen blokk. Det er først når blokkene får farge at de vil fungere.

 

Vi kan endre antallet ganger ved å skrive antallet vi ønsker i den hvite rundingen.

​

2. Uten en løkke ("loop"), vil Micro:bit'en kun lese og følge sekvensen én gang. Vi får med andre ord kun et blink av hjertet, før skjermen blir blank!

​

Navneskilt

3. Navneskilt: tekst

​

I tillegg til bilder/ ikoner, kan også skjermen på micro:bit vise tekst.

​

"Vis tekst"-blokken heter "Show string" og du finner den i menyvalget "basic".

​

Der det er et hvitt felt kan du alltid skrive inn din egen tekst eller tall.

​

Prøv å lage ditt eget navneskilt!

​

Smiley knapp

4. Smiley knapp: inndata/ input

​

Micro:bit kan med alle sine innebygde sensorer reagere på inndata - dvs. et signal som kommer inn til micro:bit'en. Vi kan velge at micro:bit skal utføre en handling- gi utdata- basert på hvilke inndata den mottar. Se mer om inndata i "hva er en micro:bit"-kurset.

​

En slik inndata er knappetrykk. Vi har to knapper på forsiden av micro:bit'en: knapp A og knapp B.

​

Oppgave:

​

På menyvalget "input" finner vi blokker for å kode ulike inndata.

​

La oss prøve å kode knapp A og B!

​

Kan du kode at 

​

1. Skjermen på micro:bit viser et smiletegn når vi trykker knapp A?

​

2. Skjermen på micro:bit viser et surt fjes når vi trykker på knapp B?

​

Løsning:

​

​

Vi velger blokken "on button A pressed" I menyvalget "input".

​

Når du ser en liten hvit pil ved siden av A'en betyr dette at det skjuler seg flere valg inni blokken! 

​

Prøv å trykke på pilen. Her finner du både knapp A, knapp B og knapp A+B!

​

Husk at her kan du velge å bruke blokken "show icon", eller tegne et ansikt selv i blokken"show leds" for å vise surt ansikt eller smileansikt.

​

Utforsk videre:

​

Hva vil du at skal skje når vi trykker på knappene?

Her er det nesten bare fantasien som setter grenser! 

​

Bruk noen minutter på å utforske de ulike utdata micro:bit'en kan gi på skjermen sin, med de 25 små led-lysene.

​

Hint: test de ulike blokkene som ligger i menypunktet "basic".

​

Vi har vært gjennom noen av de allerede!

​

5. Musikk/ lyd

​

la oss utforske en annen form for utdata.

​

Som vi så i kurset "Hva er en Micro:bit"

så finnes det ulike utdata:

​

  • Led-lys på skjermen til micro:bit, som vi allerede har gått gjennom

  • Signaler til ulike elektriske digser som kobles til micro:bit via pins

  • Bluetooth/ radiosignal

​

Musikk

Det er mange ulike "ekstra-deler" som kan kobles til micro:bit via pins. En av disse delene er en høyttaler.

​

Kobler vi til en høyttaler, kan vi spille av lyder fra micro:bit'en.

​

Selvom vi ikke har en høyttaler i virkeligheten, så kan vi teste dette i MakeCode! Vi kan kode at micro:bit skal spille musikk, og så vil vi høre resultatet via høyttaleren på pc'en vår (eller nettbrett/mobiltelefon hvis det er dét vi bruker for å kode).

​

La oss teste!

I menyvalget "Music" finner vi blant annet en blokk som heter "start melody...". Her ser du at du kan velge blant et gitt utvalg melodier, og du har noen valg om gjentakelse av melodien.

​

Prøv da vel!

​

(husk å skru på lyd på pc'en/ nettbrettet ditt!)

Test ut noen av de andre blokkene i menyvalget "Music"!

​

Prøv for eksempel blokken "play tone..."

​

Her kan du velge både tone og takt selv!

... slik kan du lage din helt egen melodi ved å sette sammen en rekke "play tone..." blokker!

Legg merke til at test-micro:bit'en på skjermen din nå får en tegning av to ledninger, en fra pin'en GND ("ground" eller på norsk "jording") og en fra pin 0.

​

Dette indikerer at dersom du skal ha lyd ut av micro:bit'en i virkeligheten må du koble til en høyttaler.

Terning: innom matematikk

6. Terning: innom mattematikk

​

Oppgave: få micro:bit'en til å fungere som en terning!

​

Her må vi tenke på hvordan en terning egentlig fungerer..

​

1. En terning ristes og så kastes for at et tilfeldig tall skal bli vagt.

​

2. En terning har tallene 1-6 

​

​

Løsning:

​

oppgaven vår er altså at micro:bit skal vise et tilfeldig tall fra 1-6 når den ristes!

​

Hvis vi går på menyvalget "input" så finner vi en blokk som heter "on shake".

​

Vi kan også legge merke til her at det er en hvit pil ved siden av ordet "shake". Trykker vi på den hvite pilen, ser vi at vi har mange valg for hva micro:bit'en skal reagere på! dette er kjekt å vite til en annen gang!

​

​

... men, denne gangen skal vi bruke "shake", som betyr ristes på norsk.

​

Vi vil si til micro:bit'en at når den ristes, skal den vise et tall på skjermen.

​

Da kan vi bruke blokken "show number".

​

... men, vi må velge hva slags tall som skal vises når vi rister micro:bit'en. (Hvis vi ikke gjør noe mer nå, hvilket tall vil vises på skjermen da?)

​

Vi vet at vi vil at micro:bit'en skal velge et tilfeldig tall mellom 1 og 6!

​

For at det skal velges et tall tilfeldig, må vi innom menyvalget "Math" (matematikk). Hvis vi blar litt nedover blant blokkene på "Math", finner vi blokken som heter "pick random...".

​

Vi ser at den runde formen på blokken "pick random.." passer inn I den runde formen på "show number". Slik kan vi se at blokkene passer sammen (akkurat som et puslespill!)

​

I den lilla "pick random.."-blokken ser vi at det er to hvite rundinger. Dette betyr at vi selv kan skrive inn de tallene vi ønsker i de hvite rundingene. Vi skal ha 1 til 6!

​

​

Legg merke til at det har kommet fram en ekstra "knapp" på test-micro:bit'en som heter "shake". Trykk på denne for å teste hva som skjer hvis du rister micro:bit'en!

​

​

​

Dette er et godt tidspunkt for å teste koden "live" på en ekte micro:bit!

​

Begynn med å gi koden din et navn (f.eks. "terning", og trykk på "Download" nederst til venstre i MakeCode.  

 

Se her for hvordan laste koden over til Micro:bit'en, avhengig av om du bruker pc, mac, tablet eller mobiltelefon.

​

​

Lysnivå: logikk

7. Lysnivå: logikk

​

En av de mange former for inndata som micro:bit'en kan motta er lysnivå.

​

Ved hjelp av led-lysene på fremsiden av micro:bit, kan den registrere hvor lyst eller mørkt det er i rommet den befinner seg i. Micro:bit'en måler lysstyrke i en skal fra 0 til 255, hvor 0 er helt mørkt.

​

Ta en titt gjennom de ulike blokkene du finner i menypunktet "input". Bla litt nedover så finner du blokken "light level"!

​

​

Legg merke til at når vi drar blokken "light level" ut i arbeidsområdet, dukker det opp en ekstra "knapp" øverst til venstre på test-micro:bit'en. Denne gjør at vi kan teste koden vår som inneholder lysnivå!

​

​

​

​

Oppgave: Få skjermen til å vise oss at det er mørkt med et "sovefjes".

​

Her sier oppgaven oss at skjermen viser sovefjes hvis lysnivå er lavt.

​

Løsning: Her kommer det inn noe som heter logikk. Logikk betyr at det finnes et sett med regler om at hvis ... skjer skal ... skje. På engelsk heter dette if ... then

​

Trykk på menypunktet "Logic" (logikk), og velg blokken "if true then".

​

​

​

​

Vi vil at micro:bit'en hele tiden skal lese av lysnivået i rommet, så vi drar "if true then"-blokken inn i en "forever"-blokk.

​

Lysnivået leses av micro:bit som et tall mellom 0 og 255. For å finne ut om det er lyst eller mørkt må vi sammenligne det avleste tallet med noe.

​

For sammenligning trenger vi en ny blokk fra "Logic" menypunktet. Bla deg ned til blokken hvor det står "0 = 0". Dette er en sammenlignings-blokk!

​

Legg merke til at formen på denen blokken passer inn i formen der det står "true" i "if true then"-blokken. Dette er et nyttig hint om hvor den passer inn.

​

​

Nå skal vi sammenligne "light level" med noe. Vi drar "light level" blokken inn i det første hvite feltet hvor det står "0". Foreløpig kan vi la det stå "0" i feltet vi sammenligner med. Vi vet jo at 0 = helt mørkt.

​

Nå har vi gitt micro:bit en kommando om at dette skal skje for alltid: hvis lysnivået er lik 0 skal ... skje.

Nå må vi bare gi kommandoen om hva som skal skje når det er mørkt! Vi har fått i oppgave at skjermen skal vise "sovefjes". Dette har vi lært hvordan vi får til!

​

Vi drar en "show icon" inn i "if-- then.."-blokka, og velg sovefjes.

​

Nå har vi gitt en kommando til micro:bit om at:

​

dette skal skje for alltid: hvis lysnivået er lik 0 skal ikonet "sovefjes" vises.

Videre uforskning:

​

Oppgave: 

1. Kan du vise sovefjes når det er ganske mørkt- ikke kun når det er bekmørkt?

​

2. Kan du vise våkent fjes (smil) når det er lyst? :)

Løsning:

​

Her må vi først finne ut hvor lavt lysnivå det er når det er bare litt mørkt. Hint: prøv først med lysnivå 50. Test, og tilpass som du selv ønsker.

​

1. Nå må vi gi beskjed om at sovefjes skal vises hvis "light level" er mindre enn 50. Tegnet for mindre enn finner du ved å trykke på den hvite pila ved siden av = tegnet. (Tegnet har spissen mot det som er minst av de to som blir sammenlignet)

​

2. For å vise smilefjes når lysnivået er høyere enn 50, bruker vi "else" feltet. "Else" betyr "ellers" og denne får du opp ved å trykke på pluss-tegnet nederst i "if... then.." blokka. 

Nå har vi gitt kommandoen til micro:bit at:

​

Dette skal skje for alltid: hvis lysnivå er lavere enn 50, så vis sovefjes.

Ellers: vis smilefjes.

​

Nå kan du teste på test-micro:bit'en ved å dra det gule lysnivået opp og ned mellom 0 og 255! (Øverst til venstre på micro:bit'en). ser du at den får sovefjes når vi kommer under 50 på lysnivå?

​

Nå kan du laste ned koden til din virkelige micro:bit, og teste i et mørkt rom!

Skritteller: variabler

8. Skritteller: variabler

​

Oppgave: få micro:bit'en til å telle hvert skritt du går ved å registrere skritt når micro:bit ristes. Vise antall skritt gått på skjermen.

​

For å løse denne oppgaven må vi innom noe som heter variabler.

​

En variabel kan forstås som en "boks" som vi putter data oppi. Innholdet i boksen kan varieres (man kan "ta ut" data av boksen, og "legge oppi" nye data i boksen.)

​

Du kan kalle variabelen ("boksen") akkurat det du selv vil! Det som er viktig er at navnet du gir variabelen, gjør at du selv forstår hva den skal brukes til - hva slags data som skal legges oppi.

​

Her har vi kalt variabelen "Skritt gått". Denne skal samle opp antall skritt.

Løsning:

​

Trykk på menypunktet "variables" (variabler). Trykk så på "Make a variable". Her kan vi altså velge navn fritt, vi kaller variablen denne gangen for "Skritt gått".

​

​

​

Nå ser du at det kommer opp 3 helt nye blokker, som alle dreier seg om variabelen du har laget, "Skritt gått"!

​

​

​

Vi velger først blokken "set skritt gått to 0", og drar den inn i en "on start" blokk. Dette fordi vi alltid skal starte en skritteller med 0 skritt gått!

​

Det kan også være praktisk at vi viser antallet skritt gått når vi starter micro:bit'en (skrittelleren). Da velger vi blokken "show number.." og drar denne inn under "set skritt gått to .."-blokken.

 

Tallet vi vil vise på skjermen er jo nettopp antall skritt gått!

Det er variabelen "Skritt gått" som inneholder riktig antall skritt gått. Vi velger derfor blokken "Skritt gått", og drar denne inn i "show number"-blokken.

​

Nå skal vi få micro:bit'en til å telle hvert skritt vi går!

​

Vi kan bruke blokken "on shake" for å gi beskjed til micro:bit'en om at det blir gått et skritt. (Hvis vi fester micro:bit'en på beinet vårt, vil den riste ved hvert skritt vi går).

​

Hvis vi nå velger blokken "Change skritt gått by 1", og setter denne inn i "on shake"-blokken, har vi gitt kommando til micro:bit om at vi vil endre antallet skritt som et talt i "Skritt gått"-variabelen ("boksen") med 1 for hver gang micro:bit'en ristes.

​

Det legges altså til 1 skritt til summen av skritt hver gang micro:bit'en ristes.

​

Til slutt må vi sørge for at antall skritt gått hele tiden vises på skjermen. Dette gjør vi ved å bruke "show number"-blokken igjen, med variabelen "Skritt gått" som det tallet som skal vises.

​

Nå kan du teste koden på test-micro:bit'en ved å trykke på knappen "shake" øverst til høyre!

​

Ser du at tallet endrer seg for hver gang du "rister"?

​

På tide å prøve koden på den virkelige micro:bit'en! 

​

​

​

​

Veien videre

​

Nå har du lært en hel masse som du kan utforske videre på egenhånd, og som du kan lage masse nye oppfinnelser med! Bra jobba!

​

Hvis du vil lære mer, kan vi anbefale at du kommer på et av Minimakers kurs, hvor vi ikke bare koder, men også lager virkelige fysiske ting og oppfinnelser- som for eksempel roboter, leker, eller spill! Vi bygger videre på det du nå har lært, og utforsker nye sensorer, nye dingser og verktøy, og nye kreative måter å kode på!

​

Se alle kurs her.

​

​

bottom of page