import machine import utime externeLED = machine.Pin(15, machine.Pin.OUT) Piepsi = machine.Pin(14, machine.Pin.OUT) # https://en.wikipedia.org/wiki/Morse_code # International Morse code is composed of five elements: # short mark, dot or dit: "dit duration" is one time unit long # long mark, dash or dah: three time units long # inter-element gap between the dits and dahs within a character: one dot duration or one unit long # short gap (between letters): three time units long # medium gap (between words): seven time units long # A .- # B -... # C -.-. # D -.. # E . # F ..-. # G --. # H .... # I .. # J .--- # K -.- # L .-.. # M -- # N -. # O --- # P .--. # Q --.- # R .-. # S ... # T - # U ..- # V ...- # W .-- # X -..- # Y -.-- # Z --.. # 0 ----- # 1 .---- # 2 ..--- # 3 ...-- # 4 ....- # 5 ..... # 6 -.... # 7 --... # 8 ---.. # 9 ----. Faktor = 0.1 dit = 1 * Faktor dah = 3 * Faktor PauzwiZei = 1 * Faktor # Theorie: 1 PauzwiBu = 5 * Faktor # Theorie: 3 PauzwiWo = 9 * Faktor # Theorie: 7 Wort = input("Bitte Wort eingeben: ") Länge = len(Wort) print("Wortlänge: ",Länge) Zähler = 0 while Zähler < Länge: print(Wort[Zähler]) if (Wort[Zähler]) == "a": #.- #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "b": #-... #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "c": #-.-. #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "d": #-.. #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "e": #. #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "f": #..-. #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "g": #--. #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "h": #.... #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "i": #.. #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "j": #.--- #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) elif (Wort[Zähler]) == "k": #-.- #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "l": #.-.. #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "m": #-- #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "n": #-. #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "o": #--- #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "p": #.--. #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "q": #--.- #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "r": #.-. #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "s": #... #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz elif (Wort[Zähler]) == "t": #- #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "u": #..- #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "v": #...- #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "w": #.-- #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "x": #-..- #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "y": #-.-- #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang elif (Wort[Zähler]) == "z": #z: --.. #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #lang Piepsi.value(1) utime.sleep(dah) Piepsi.value(0) #ende lang utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz utime.sleep(PauzwiZei) #kurz Piepsi.value(1) utime.sleep(dit) Piepsi.value(0) #ende kurz else: utime.sleep(PauzwiWo) utime.sleep(PauzwiBu) Zähler = Zähler + 1