from microbit import * import random import music # indentations in text are important # Morse Code - letters # this is not efficient code by any means - you can do better! # speaker / headphones go between P0 and 0V (GND) # set morse speed 120 is slow 200 is fast music.set_tempo (bpm=180) while True: # chose a randome number between 0 and 25 answer = random.randrange(25) if answer == 0: # C5 is pitch of note, the 1 in C5:1 is the duration 1 = . dot (dit), 3 = - dash (dah) # R:1 is a pause equiv to a dot . music.play(["C5:1", "R:1", "C5:3"]) sleep(1000) display.show("A") if answer == 1: music.play(["C5:3", "R:1", "C5:1", "R:1", "C5:1", "R:1", "C5:1"]) sleep(1000) display.show("B") if answer == 2: music.play(["C5:3", "R:1", "C5:1", "R:1", "C5:3", "R:1", "C5:1"]) sleep(1000) display.show("C") if answer == 3: music.play(["C5:3", "R:1", "C5:1", "R:1", "C5:1"]) sleep(1000) display.show("D") if answer == 4: music.play(["C5:1"]) sleep(1000) display.show("E") if answer == 5: music.play(["C5:1", "R:1", "C5:1", "R:1", "C5:3", "R:1", "C5:1"]) sleep(1000) display.show("F") if answer == 6: music.play(["C5:3", "R:1", "C5:3", "R:1", "C5:1"]) sleep(1000) display.show("G") if answer == 7: music.play(["C5:1", "R:1", "C5:1", "R:1", "C5:1", "R:1", "C5:1"]) sleep(1000) display.show("H") if answer == 8: music.play(["C5:1", "R:1", "C5:1"]) sleep(1000) display.show("I") if answer == 9: music.play(["C5:1", "R:1", "C5:3", "R:1", "C5:3", "R:1", "C5:3"]) sleep(1000) display.show("J") if answer == 10: music.play(["C5:3", "R:1", "C5:1", "R:1", "C5:3"]) sleep(1000) display.show("K") if answer == 11: music.play(["C5:1", "R:1", "C5:3", "R:1", "C5:1", "R:1", "C5:1"]) sleep(1000) display.show("L") if answer == 12: music.play(["C5:3", "R:1", "C5:3"]) sleep(1000) display.show("M") if answer == 13: music.play(["C5:3", "R:1", "C5:1"]) sleep(1000) display.show("N") if answer == 14: music.play(["C5:3", "R:1", "C5:3", "R:1", "C5:3"]) sleep(1000) display.show("O") if answer == 15: music.play(["C5:1", "R:1", "C5:3", "R:1", "C5:3", "R:1", "C5:1"]) sleep(1000) display.show("P") if answer == 16: music.play(["C5:3", "R:1", "C5:3", "R:1", "C5:1", "R:1", "C5:3"]) sleep(1000) display.show("Q") if answer == 17: music.play(["C5:1", "R:1", "C5:3", "R:1", "C5:1"]) sleep(1000) display.show("R") if answer == 18: music.play(["C5:1", "R:1", "C5:1", "R:1", "C5:1"]) sleep(1000) display.show("S") if answer == 19: music.play(["C5:3"]) sleep(1000) display.show("T") if answer == 20: music.play(["C5:1", "R:1", "C5:1", "R:1", "C5:3"]) sleep(1000) display.show("U") if answer == 21: music.play(["C5:1", "R:1", "C5:1", "R:1", "C5:1", "R:1", "C5:3"]) sleep(1000) display.show("V") if answer == 22: music.play(["C5:1", "R:1", "C5:3", "R:1", "C5:3"]) sleep(1000) display.show("W") if answer == 23: music.play(["C5:3", "R:1", "C5:1", "R:1", "C5:1", "R:1", "C5:3"]) sleep(1000) display.show("X") if answer == 24: music.play(["C5:3", "R:1", "C5:1", "R:1", "C5:3", "R:1", "C5:3"]) sleep(1000) display.show("Y") if answer == 25: music.play(["C5:3", "R:1", "C5:3", "R:1", "C5:1", "R:1", "C5:1"]) sleep(1000) display.show("Z") sleep(2000) display.clear() sleep(1000)