Level 2Python: Lage musikk med micro:bit

Skrevet av: Asta Aker og Tjerand Silde

Oversatt av: Stein Olav Romslo

Kurs: Microbit
Tema: Elektronikk, Tekstbasert, Lyd
Fag: Programmering, Musikk, Naturfag
Klassetrinn: 5.-7. klasse, 8.-10. klasse, Videregående skole
Bilde av BokmålPå Bokmål

Introduksjon

Me skal lage eit lite program der me får micro:bit-en til å spele musikk viss me koplar til hovudtelefonar eller ein høgtalar. I denne rettleiinga viser me korleis du kan spele melodien "Twinkle twinkle little star", og med dette som utgangspunkt kan du spele av kva song du vil.

Steg 1: Sjekk at du har riktig utstyr

Det er viktig at du har alt utstyr og tilbehør for å kunne gjere denne oppgåva.

checkSjekkliste

Her ser du eit bilete av utstyr du kan bruke:

Bilete av utstyret som trengst

Steg 2: Klargjere utstyret

Fyrst koplar me saman utstyret, så skal me programmere.

checkSjekkliste

Her ser du to bilete av korleis utstyret bør koplast:

Bilete av korleis feste klemmene Bilete avkorleis feste klemmene på høgtalaren

Steg 3: Start å kode

Fyrst startar me med å skrive kode for å spele toner.

checkSjekkliste

  • from music import *
    
  • play(NYAN)
    

flagTest prosjektet

Steg 4: Lag ei tone sjølv

Det er kulare å lage si eiga tone enn å berre spele av ein innebygd ein. Det skal me gjere no.

checkSjekkliste

  • tone = []
    
  • tone = ["C4:4"]
    
  • play(tone)
    

flagTest prosjektet

Steg 5: Programmere melodien

No skal me erstatte tona vår med melodien til "Twinkle twinkle little star".

  • from music import *
    
    melodi = ["C4:4", "C", "G", "G", "A", "A", "G:8", "F:4", "F", "E", "E", "D", "D", "C:8",
    "G:4", "G", "F", "F", "E", "E", "D:8", "G:4", "G", "F", "F", "E", "E", "D:8", "C4:4",
    "C", "G", "G", "A", "A", "G:8", "F:4", "F", "E", "E", "D", "D","C:8"]
    
    play(melodi)
    

flagTest prosjektet

Steg 5: Legg til knapp for å styre musikken

No vert melodien spelt av akkurat når me overfører den eller trykkar på restart. Me legg til ein knapp for å styre musikken.

checkSjekkliste

  • from microbit import *
    
  • from microbit import *
    from music import*
    
    melodi = ["C4:4", "C", "G", "G", "A", "A", "G:8", "F:4", "F", "E", "E", "D", "D", "C:8",
    "G:4", "G", "F", "F", "E", "E", "D:8", "G:4", "G", "F", "F", "E", "E", "D:8", "C4:4",
    "C", "G", "G", "A", "A", "G:8", "F:4", "F", "E", "E", "D", "D","C:8"]
    
    while True:
      if button_a.is_pressed():
        play(melodi)
    

flagTest prosjektet

Utfordring: Leggje til eigne melodiar

Forklaring av koden

Me brukar alltid å importere biblioteket som heiter microbit når me programmerer ein micro:bit, slik at me kan bruke dei ulike sensorane som er innebygd i micro:bit-en. I dette tilfellet brukar me biblioteket til å sjekke om me har trykt på knapp A.

Me må importere biblioteket som heiter musikk for at me skal kunne bruke funksjonen som heiter play() som speler av musikken me lagar.

Når me opprettar ei tone har den fleire ulike delar. Det fyrste du kan sjå er at me har to klammeparentesar ([ og ]). Dei brukar me til å opprette ei liste som me kan ha tonene våre i. Kvar tone består av tre delar, fyrst kva note som skal spelast, så kva oktav nota skal vere i, og til slutt kor lenge tona skal spelast av. Til dømes tyder "C4:4" at me skal spele ein C i oktav fire i fire ticks, som altså er 125 millisekund.

Sjekk ut dokumentasjonen for å sjå kva moglegheiter som finst for musikk-programmering på micro:bit-en.

Lisens: CC BY-SA 4.0

Forbedre denne siden

Funnet en feil? Kunne noe vært bedre?
Hvis ja, vennligst gi oss tilbakemelding ved å lage en sak på Github eller fiks feilen selv om du kan. Vi er takknemlige for enhver tilbakemelding!