Level 2Python: Lage musikk med micro:bit

Skrevet av: Asta Aker og Tjerand Silde

Kurs: Microbit

Introduksjon

Vi skal lage et lite program hvor vi får micro:biten til å spille musikk dersom vi kobler til hodetelefoner eller en høytaler. I denne veiledningen viser vi hvordan du kan spille melodien "Twinkle twinkle little star", og med dette som utgangspunkt kan du spille av hvilken som helst sang du vil.

Steg 1: Sjekk at du har riktig utstyr

Det er viktig at du har alt utstyr og tilbehør for å kunne gjøre denne oppgaven.

checkSjekkliste

Her ser du et bilde av utstyr du kan bruke:

Bilde av utstyret som trengs

Steg 2: Klargjøre utstyret

Først kobler vi sammen utstyret før vi begynner å programmere.

checkSjekkliste

Her ser du to bilder av hvordan utstyret bør kobles:

Bilde av hvordan feste klemmene Bilde avhvordan feste klemmene på høytaleren

Steg 3: Start å kode

Først starter vi med å skrive kode for å spille toner.

checkSjekkliste

  • from music import *
    
  • play(NYAN)
    

flagTest prosjektet

Steg 4: Lag en tone selv

Det er kulere å lage sin egen tone, enn å bare spille av en innebygget. Det skal vi gjøre nå.

checkSjekkliste

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

flagTest prosjektet

Steg 5: Programmere melodien

Nå skal vi erstatte tonen 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

Nå spilles bare melodinen akkurat når vi overførere den eller trykker restart. Vi legger til en 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 : Legge til egne melodier

Forklaring av koden

Vi pleier alltid importere biblioteket som heter microbit når vi programmer en micro:bit, for at vi skal kunne bruke de forskjellige sensorene som er innebygget i micro:biten. I dette tilfellet bruker vi bibliteket til å sjekke om vi har trykket på knapp A.

Vi må importere biblioteket som heter musikk for at vi skal kunne bruke funksjonen som heter play(), som spiller av musikken vi lager.

Når vi oppretter en tone så har den flere forskjellige deler. Det første man kan se er at vi har to klammeparanteser [ og ]. De bruker vi til å opprette en liste som vi kan ha tonene våre i. Hver tone består av tre deler, først hvilken note vi skal spille og hvilken oktav noten skal være i, og så hvor lenge tonen skal spilles. "C4:4" betyr at vi skal spille en C i oktav fire i fire ticks, som i dette tilfellet er 125 millisekunder.

Sjekk ut dokumentasjonen for å se hvilke muligheter som finnes med musikk-programmering på micro:biten.

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!