2.1. Kennismaking met de micro:bit
Bij de start van deze week werden we aangewezen op de website www.microbit.org, waarmee we door middel van zogenaamde "blokken" digitaal een apparaatje instructies geven om uit te voeren. We kregen ook in de les een micro:bit apparaat voor ons waarop we ook onze instructies konden uitvoeren (zie Afb 1).
In dit onderdeel kregen we geen opdracht, maar waren we gevraagd om zonder te veel onderzoek met de micro:bit allerlei dingen te proberen en te zien wat ze doen.
Afb 1: Een micro:bit
2.2. In- en outputs van de micro:bit
Dit onderdeel ging over de micro:bit en de inputs en outputs dat het heeft. We leerden dat inputs de instructies zijn die we aanleveren aan het apparaat en dat outputs de uitvoering van de geprogrammeerde instructies zijn, bijvoorbeeld als ik een knop in druk is dat een input, als output geeft de micro:bit op het LED-scherm een smiley.
We volgen eerst een simpele opdracht waar we instructies moesten volgen om op het micro:bit een hartje die aan en uit knippert te tonen wanneer het apparaat aan stond. Hierna kregen we de taak om op te zoeken wat voor input en output elementen de microbit bevat.
Als inputs bevat de micro:bit:
- Een A en B knop.
- Een lichtsensor.
- Een temperatuursensor.
- Een accelerometer om beweging te kunnen detecteren.
- Een kompas.
- Pins waarmee de micro:bit instructies kan ontvangen worden van aangesloten input-apparaten.
De v2 versie heeft wat extra inputs, zoals:
- Een ingebouwde microfoon.
- Een input sensor op het logo.
Als outputs bevat de micro:bit:
- Een LED-scherm.
- Een radio om met andere micro:bits te kunnen communiceren.
- Pins waarmee de micro:bit instructies kan sturen naar andere output-apparaten.
De v2 versie heeft ook een ingebouwde speaker.
Hierna kregen we de taak om te brainstormen voor mogelijke spellen die op de micro:bit kunnen gemaakt worden. Hier kwamen we op een reactiesnelheids-spel, een rekenspel en een ritme spel
2.3. I hartje Dice
In deze wat kortere onderdeel kregen we de taak om een simpel dobbelspel te maken. Wanneer de micro:bit wordt geschud, toont het een nummer die kan gerold worden met een dobbelsteen. Hierna kregen we de opdracht om het spel aan te passen zodat het een nummer geeft die je met twee dobbelstenen kan gooien. Dit deden we door de "pick random" blok een waarde te geven van 2 tot en met 12 (zie Afb 2).
Afb 2: micro:bit instructies om een willekeurig getal te kiezen van 2 tot en met 12
2.4. Loops
Deze onderdeel ging over blokken die zich herhalen, oftewel loops, en de verschillende soorten loops. We leerden dat met loops er veel minder code hoeft geschreven worden.
Er zijn aardig wat verschillende loops, zoals:
- De for-loop, die met gebruik van een index een loop een gekozen aantal keer herhaalt.
- De while-loop, die herhaalt zolang een bepaalde conditie waar is.
- De repeat-loop, die een vast aantal keer herhaalt zonder gebruik te maken van een index
- De foreach-loop, die zich herhaalt voor ieder onderdeel van een array.
- De everyInterval-loop, die eindeloos lang herhaalt met een pauze van een gegeven tijd tussen in.
2.5. Wat als...
In deze onderdeel hadden we geleerd over de if-blokken en de if-else-blokken. Deze zorgen ervoor dat als een stelling wel (of niet) waar is dat het dan pas de bijhorende instructies uitvoert. De if-else-blokken zijn voor als de eerste stelling niet klopt dat er nogsteeds code kan uitgevoerd worden. We hadden deze blokken gebruikt om een micro:bit een willekeurig getal tussen 1 en 10 te kiezen en een vergelijking te maken tussen dit getal en het nummer zes om te kijken of het willekeurig getal groter dan zes is. Zo ja, toont het een vinkje op het LED-scherm (zie Afb 3).
Daarbij kregen we kort te weten over variabelen en constanten, die waardes vasthouden om te kunnen gebruiken met het instructies uitvoeren. Het verschil tussen variabelen en constanten is dat variabelen kunnen veranderd worden in andere waardes en constanten altijd hetzelfde waarde blijven.
Naast de if-, if-else-statements, variabelen en constanten leerden we ook over Booleaanse logica, specifiek over de and- en or-blokken. De and-blok is een vergelijking waarbij beide if- en/of if-else-blokken waar zijn. De or-blok is een vergelijking waarbij de een, de ander of allebei de if- en/of if-else-blokken waar moeten zijn. Pas als de vergelijkingen waar zijn voert het apparaat de bijhorende instructies uit.
Met de geleerde informatie over Booleaanse logica hadden we bij het eerdere spel nog meer uitkomsten gemaakt. Nu wanneer een willekeurig getal werd gekozen was er een vergelijking gemaakt of het getal hoger of gelijk is aan 8, hoger dan 6 maar lager dan 8 en lager dan 6. Als het getal hoger of gelijk aan 8 was toont het een hartje op het LED-scherm en als het lager dan 6 was toont het een droevige emoji op het LED-scherm.
Afb 3: micro:bit met op het LED-scherm een vinkje met de instructies voor de vergelijking ernaast
2.6. Website
Bij deze onderdeel moesten we ieder een website maken met pagina's die over de informatie die we hebben geleerd en toegepast in de bijhorende deelopdrachten. Hierbij heb ik erop gelet om de juiste manier van een html bestand opmaak te houden (header, main, footer, nav en je hebt divisions gebruikt), Om klasses met zinvolle en duidelijke benamingen te maken en om de code op de juiste manier genest houden (parent-child). Het resultaat is de website die je nu voor je ziet!