Add morsekode/main.py
This commit is contained in:
72
morsekode/main.py
Normal file
72
morsekode/main.py
Normal file
@@ -0,0 +1,72 @@
|
||||
from microbit import *
|
||||
|
||||
alfabet = {
|
||||
"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": "--..", "Æ": ".-.-", "Ø": "---.",
|
||||
"Å": ".--.-",
|
||||
"1": ".----", "2": "..---", "3": "...--", "4": "....-",
|
||||
"5": ".....", "6": "-....", "7": "--...", "8": "---..",
|
||||
"9": "----.", "0": "-----"
|
||||
}
|
||||
|
||||
morse = {
|
||||
".-": "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", ".-.-": "Æ", "---.": "Ø",
|
||||
".--.-": "Å",
|
||||
".----": "1", "..---": "2", "...--": "3", "....-": "4",
|
||||
".....": "5", "-....": "6", "--...": "7", "---..": "8",
|
||||
"----.": "9", "-----": "0"
|
||||
}
|
||||
|
||||
tegn_skiller = "/"
|
||||
ord_skiller = "//"
|
||||
|
||||
prik = 200 # tid, i millisekunder
|
||||
streg = prik * 3 # 600 millisekunder
|
||||
bogstav = streg # 600 millisekunder pause
|
||||
ord = prik * 7 # 1.4 sekund pause
|
||||
|
||||
test_ord = "coding pirates rules"
|
||||
|
||||
running = True
|
||||
|
||||
def alfa_2_morse(tegn):
|
||||
return alfabet[tegn.upper()]
|
||||
|
||||
def morse_2_alfa(kode):
|
||||
return morse[kode]
|
||||
|
||||
def vis_prik():
|
||||
display.set_pixel(2, 2, 9)
|
||||
sleep(prik)
|
||||
display.clear()
|
||||
|
||||
def vis_streg():
|
||||
display.set_pixel(2, 2, 9)
|
||||
sleep(streg)
|
||||
display.clear()
|
||||
|
||||
# Code in a 'while True:' loop repeats forever
|
||||
while running:
|
||||
for t in test_ord:
|
||||
if t == " ":
|
||||
sleep(ord)
|
||||
continue
|
||||
mors = alfa_2_morse(t)
|
||||
for k in mors:
|
||||
if k == ".":
|
||||
vis_prik()
|
||||
elif k == "-":
|
||||
vis_streg()
|
||||
sleep(bogstav)
|
||||
running = False
|
Reference in New Issue
Block a user