Programmering og koding

Lær programmering med elektronikk: velg riktig plattform

micro:bit V2, Raspberry Pi Pico 2 W og Arduino Uno R4 WiFi ved siden av et lite MakeCode-program som får en LED til å blinke

Vil du lære programmering med elektronikk, er det enklest å starte med et kort som viser resultatet med en gang: en lysdiode som blinker, en lyd eller en motor som går. Denne guiden viser hvilken plattform som passer ut fra alder, mål og forkunnskaper, fra micro:bit med blokker til Arduino, Raspberry Pi Pico, ESP32 og Raspberry Pi med Python, og i hvilken rekkefølge du kan ta kodeguidene.

Kort forklartBarn og nybegynnere starter best med micro:bit og MakeCode-blokker. Vil du raskt over til å skrive kode som tekst, er Raspberry Pi Pico eller ESP32 med MicroPython et godt neste steg. Med Arduino lærer du C++ og maskinnær programmering. Raspberry Pi er en fullverdig datamaskin og passer når prosjektet trenger Linux, nettverk, kamera eller lagring. Alle guidene i serien har eksempler på tre nivåer, fra den første blinkende lysdioden til et lite prosjekt.

Hvorfor lære koding med elektronikk?

Kode som styrer noe fysisk, gir rask og tydelig tilbakemelding. Lyser ikke lysdioden, ser du det med en gang, og du lærer å feilsøke både programmet og koblingen. Samtidig lærer du de samme grunnbegrepene som i all programmering: variabler, betingelser, løkker, funksjoner og hendelser. Forskjellen er at verdiene kommer fra knapper og sensorer, og at resultatet er lys, lyd eller bevegelse.

Du trenger ikke mye elektronikk. De første eksemplene bruker bare det som allerede sitter på kortet: lysdioder, knapper og innebygde sensorer. Når du kobler til noe selv, holder det med et koblingsbrett, noen koblingsledninger, en lysdiode og en motstand.

Fem veier inn i programmering

PlattformSpråk og verktøyPasser best forFørste guide
BBC micro:bitMakeCode-blokker, JavaScript og MicroPython i nettleserenBarn fra rundt 8 år, skolen og nybegynnere uten forkunnskaperKom i gang med micro:bit
Raspberry Pi Pico 2 WMicroPython i ThonnyUngdom og voksne som vil skrive Python på en mikrokontrollerPico med MicroPython
ESP32MicroPython, eller C++ med Arduino IDEProsjekter med WiFi, sensorer og skjermESP32 med MicroPython
Arduino Uno R4 WiFiC++ i Arduino IDEMaskinnær elektronikk og programmering, mange ferdige eksemplerArduino for nybegynnere
Raspberry Pi 4 og 5Python med gpiozero på LinuxProsjekter som trenger en fullverdig datamaskin, nettverk eller kameraRaspberry Pi GPIO med Python

En mikrokontroller, for eksempel micro:bit, Pico, ESP32 eller Arduino, kjører ett program, starter på et sekund og bruker lite strøm. Raspberry Pi er en datamaskin med operativsystem. Den kan mer, men må slås av og på som en PC og trenger mer strøm. Guiden Arduino, ESP32 eller Raspberry Pi forklarer forskjellen nærmere.

Hvilken plattform passer for hvem?

Barn og barneskole: micro:bit med blokker

MakeCode for micro:bit kjører i nettleseren og trenger ingen installasjon. Du bygger programmet av blokker som du klikker sammen, og den samme koden kan du vise som JavaScript eller Python. Kortet har 25 lysdioder, to knapper og sensorer for bevegelse, lys og temperatur, så du trenger ingen ledninger til de første oppgavene. Lærere finner oppgaver fra enkle til avanserte i guiden micro:bit i skolen, og i guiden om Cutebot styrer du en robotbil med koden din.

Ungdomsskole og videregående: Python på en mikrokontroller

MicroPython er Python for små kort. Du skriver koden som tekst i Thonny eller en lignende editor og sender den til kortet over USB. Raspberry Pi Pico 2 W er rimelig, godt dokumentert og har WiFi og Bluetooth. ESP32 har WiFi og Bluetooth i selve brikken og finnes i mange ferdige sett med sensorer og skjerm, så det passer godt til prosjekter som skal sende data. Begge bruker de samme grunnbegrepene, så det du lærer på det ene kortet, kan du bruke på det andre.

Voksne og hobbybyggere: Arduino eller ESP32

Med Arduino lærer du C++, pinner, spenninger og tidsstyring på et nivå du har nytte av i alle elektronikkprosjekter. Uno R4 WiFi har i tillegg en innebygd LED-matrise og WiFi. Skal du videre til større prosjekter med flere filer og faste versjoner, finner du verktøyene forklart i guiden Arduino IDE, PlatformIO eller ESP-IDF.

Når prosjektet trenger en datamaskin: Raspberry Pi

Raspberry Pi kjører Linux og vanlig Python. Den passer til en nettside som viser målinger, et kamera, en database eller en tjeneste som skal gå døgnet rundt. Du styrer GPIO-pinnene fra Python med biblioteket gpiozero, og alt er forklart i guiden om GPIO med Python.

Blokker, Python eller C++: den samme oppgaven tre ganger

Den klassiske første oppgaven er å få en lysdiode til å blinke. Slik ser den ut på tre plattformer. Alle tre bygger på de offisielle eksemplene for hver plattform.

micro:bit (MakeCode JavaScript): den midterste lysdioden på skjermen blinker hvert halve sekund.

basic.forever(function () {
    led.plot(2, 2)
    basic.pause(500)
    led.unplot(2, 2)
    basic.pause(500)
})

Raspberry Pi Pico 2 W (MicroPython): den innebygde lysdioden skifter mellom av og på.

from machine import Pin
import time

led = Pin("LED", Pin.OUT)

while True:
    led.toggle()
    time.sleep(0.5)

Arduino (C++): den innebygde lysdioden lyser i ett sekund og er av i ett sekund.

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}

Mønsteret er det samme overalt: noe settes opp én gang, og en løkke gjentar arbeidet. I MakeCode går oppsettet i blokken «on start» og løkken i «forever». I MicroPython står oppsettet før while True, og Arduino deler programmet i setup() og loop(). Når du har forstått dette, er det mye lettere å bytte plattform senere.

Læringsstien: fra blinkende lysdiode til eget prosjekt

Alle kodeguidene i serien er bygd opp på samme måte, slik at du alltid vet hvor du er:

Nivå 1: nybegynner. Bare det som sitter på kortet, eller én lysdiode med motstand. Målet er at programmet kjører og at du forstår hver linje.
Nivå 2: viderekommen. Knapper, sensorer og verdier som endrer seg. Du lærer variabler, betingelser og å lese målinger riktig.
Nivå 3: avansert. Et lite prosjekt med nettverk, radio eller motorer, der hver del av koden er forklart.

Hvert eksempel har koblingsskjema og tegning der det trengs, koden med en kopieringsknapp, en forklaring, forslag under «Prøv selv» og en liste over vanlige feil. Begynn med nivå 1 selv om du har programmert før: det tar bare noen minutter, og du ser med en gang om driveren, kabelen og verktøyene virker.

Hva trenger du for å komme i gang?

PlattformStart medMerk
micro:bitEt BBC micro:bit 2 GO, senere et eksperimentsett eller et oppfinnersett med Grove-modulerEksperiment- og oppfinnersettene trenger et micro:bit-kort i tillegg
Raspberry Pi PicoRaspberry Pi Pico 2 W, koblingsbrett, koblingsledninger og en lysdiode med motstand, eller et Pico W-startsett med alt detteMicroUSB-kabel som overfører data. Pico 2 W trenger pinnelister; Pico-guiden viser lodding og alternativet med ferdig påloddede pinner
ESP32ESP32-startsett med sensorer og OLED-skjermKoblingsbrett, koblingsledninger hann-hann og hunn-hunn, LED-er, motstander, sensorer, skjerm og microUSB-kabel i ett sett. ESP32-guiden forklarer hvilken skjerm koden er skrevet for
ArduinoArduino Uno R4 WiFi eller et utvidet startsettUSB-C-kabel som overfører data. Startsettet har kabelen, koblingsbrett, koblingsledninger hann-hann og deler til de første oppgavene
Raspberry PiEt Raspberry Pi 5-startsett og prototypesett for GPIOOffisiell strømforsyning og minnekort med Raspberry Pi OS følger med startsettet. Prototypesettet har koblingsbrett og koblingsledninger hann-hann, hann-hunn og hunn-hunn
Tips for skole og hjem: Velg én plattform og bli trygg på den før dere bytter. Lag en fast mappe for prosjektene, gi filene beskrivende navn og lagre en kopi før dere endrer noe som virker.

Vanlige spørsmål

Hvilket kort er best for barn?

For de fleste barn er micro:bit det beste startpunktet. MakeCode kjører i nettleseren, blokkene gjør det vanskelig å lage syntaksfeil, og kortet har innebygde lys, knapper og sensorer. Senere kan barna se den samme koden som JavaScript eller Python.

Må jeg kunne programmere fra før?

Nei. Nivå 1 i hver guide forutsetter ingen erfaring. Du lærer begrepene i den rekkefølgen du trenger dem, og hvert eksempel forklarer koden linje for linje.

Er MicroPython ekte Python?

MicroPython følger språket Python 3, men har et mindre standardbibliotek og egne moduler for maskinvare, som machine for pinner. Det du lærer om variabler, løkker og funksjoner, gjelder også i vanlig Python på en datamaskin.

Arduino eller MicroPython?

MicroPython er raskere å komme i gang med og lettere å lese. Arduino-kode i C++ gir mer kontroll over tidsstyring og minne, og det finnes svært mange eksempler. Mange starter med MicroPython og lærer Arduino senere, eller omvendt. Guiden Slik programmerer du ESP32 og M5Stack viser forskjellene i praksis.

Må jeg lodde?

Ikke for å komme i gang. Med et koblingsbrett og ferdige koblingsledninger kobler du opp kretsen uten lodding. Noen kort leveres uten påloddede pinner; da står det i guiden hva du trenger.

Oppsummering

Start med den plattformen som passer til målet ditt: micro:bit for barn og skole, Pico eller ESP32 for Python på en mikrokontroller, Arduino for C++ og elektronikk, og Raspberry Pi når prosjektet trenger en datamaskin. Følg guidene fra nivå 1 til nivå 3, og bruk det du lærer på det ene kortet videre på det neste. Den første lysdioden som blinker, er starten på alt det andre.

Alle guider

Produkter omtalt i denne guiden

Produktene som brukes og sammenlignes i guiden, med pris og lagerstatus.