from machine import Pin
from utime import sleep
import time
time.sleep(0.1)
b1 = Pin(16, Pin.IN, Pin.PULL_UP) #next sentence
b2 = Pin(17, Pin.IN, Pin.PULL_UP) #repeat sentence
led1 = Pin(1, Pin.OUT)
led2 = Pin(2, Pin.OUT)
led3 = Pin(3, Pin.OUT)
led4 = Pin(4, Pin.OUT)
led5 = Pin(5, Pin.OUT)
led6 = Pin(6, Pin.OUT)
string = "" #initial string default
def abc(): #braille translation function
a=0 #reset string count
for x in string: #for loop of braile convertion
if (string[a] == "a") or (string[a] == "A"):
led1.toggle()
sleep(tl)
led1.toggle()
sleep(sod)
elif (string[a] == "b") or (string[a] == "B"):
led1.toggle()
led3.toggle()
sleep(tl)
led1.toggle()
led3.toggle()
sleep(sod)
elif (string[a] == "c") or (string[a] == "C"):
led1.toggle()
led2.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
sleep(sod)
elif (string[a] == "d") or (string[a] == "D"):
led1.toggle()
led2.toggle()
led4.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
led4.toggle()
sleep(sod)
elif (string[a] == "e") or (string[a] == "E"):
led1.toggle()
led4.toggle()
sleep(tl)
led1.toggle()
led4.toggle()
sleep(sod)
elif (string[a] == "f") or (string[a] == "F"):
led1.toggle()
led2.toggle()
led3.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
led3.toggle()
sleep(sod)
elif (string[a] == "g") or (string[a] == "G"):
led1.toggle()
led2.toggle()
led3.toggle()
led4.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
led3.toggle()
led4.toggle()
sleep(sod)
elif (string[a] == "h") or (string[a] == "H"):
led1.toggle()
led3.toggle()
led4.toggle()
sleep(tl)
led1.toggle()
led3.toggle()
led4.toggle()
sleep(sod)
elif (string[a] == "i") or (string[a] == "I"):
led2.toggle()
led3.toggle()
sleep(tl)
led2.toggle()
led3.toggle()
sleep(sod)
elif (string[a] == "j") or (string[a] == "J"):
led2.toggle()
led3.toggle()
led4.toggle()
sleep(tl)
led2.toggle()
led3.toggle()
led4.toggle()
sleep(sod)
elif (string[a] == "k") or (string[a] == "K"):
led1.toggle()
led5.toggle()
sleep(tl)
led1.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "l") or (string[a] == "L"):
led1.toggle()
led3.toggle()
led5.toggle()
sleep(tl)
led1.toggle()
led3.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "m") or (string[a] == "M"):
led1.toggle()
led2.toggle()
led5.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "n") or (string[a] == "N"):
led1.toggle()
led2.toggle()
led4.toggle()
led5.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
led4.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "o") or (string[a] == "O"):
led1.toggle()
led4.toggle()
led5.toggle()
sleep(tl)
led1.toggle()
led4.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "p") or (string[a] == "P"):
led1.toggle()
led2.toggle()
led3.toggle()
led5.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
led3.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "q") or (string[a] == "Q"):
led1.toggle()
led2.toggle()
led3.toggle()
led4.toggle()
led5.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
led3.toggle()
led4.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "r") or (string[a] == "R"):
led1.toggle()
led3.toggle()
led4.toggle()
led5.toggle()
sleep(tl)
led1.toggle()
led3.toggle()
led4.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "s") or (string[a] == "S"):
led2.toggle()
led3.toggle()
led5.toggle()
sleep(tl)
led2.toggle()
led3.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "t") or (string[a] == "T"):
led2.toggle()
led3.toggle()
led4.toggle()
led5.toggle()
sleep(tl)
led2.toggle()
led3.toggle()
led4.toggle()
led5.toggle()
sleep(sod)
elif (string[a] == "u") or (string[a] == "U"):
led1.toggle()
led5.toggle()
led6.toggle()
sleep(tl)
led1.toggle()
led5.toggle()
led6.toggle()
sleep(sod)
elif (string[a] == "v") or (string[a] == "V"):
led1.toggle()
led3.toggle()
led5.toggle()
led6.toggle()
sleep(tl)
led1.toggle()
led3.toggle()
led5.toggle()
led6.toggle()
sleep(sod)
elif (string[a] == "w") or (string[a] == "W"):
led2.toggle()
led3.toggle()
led4.toggle()
led6.toggle()
sleep(tl)
led2.toggle()
led3.toggle()
led4.toggle()
led6.toggle()
sleep(sod)
elif (string[a] == "x") or (string[a] == "X"):
led1.toggle()
led2.toggle()
led5.toggle()
led6.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
led5.toggle()
led6.toggle()
sleep(sod)
elif (string[a] == "y") or (string[a] == "Y"):
led1.toggle()
led2.toggle()
led4.toggle()
led5.toggle()
led6.toggle()
sleep(tl)
led1.toggle()
led2.toggle()
led4.toggle()
led5.toggle()
led6.toggle()
sleep(sod)
elif (string[a] == "z") or (string[a] == "Z"):
led1.toggle()
led4.toggle()
led5.toggle()
led6.toggle()
sleep(tl)
led1.toggle()
led4.toggle()
led5.toggle()
led6.toggle()
sleep(sod)
a=a+1 #inc for loop
pause = 0
pause1 = 0
sleep(0.2)
tl= 1 #duration of on and off of LED
sod = 0.5 #speed of delay between letter
z=0
pause=0 #prevent from multiple clicks of button
pause1=0 #same function as above for different button
while True:#constantly running
if z == 0:#for restart default condition
led1.off()
led2.off()
led3.off()
led4.off()
led5.off()
led6.off()
if b2.value() == 0: #button for repeat sentence
pause1 = 1
if pause1 == 1:
abc()
else:
pause1 = 0 #same function as below
if b1.value() == 0:#if button is pressed
pause = 1
if pause == 1:
string = str(input("input: ")) #input string to convert
abc()
else: #return default
pause = 0