让 LED 闪烁莫尔斯的点或破折号
Let LED blink for dot or dash in morse
使用带 python 的 ESP32,这是我的脚本。它的作用是您可以填写一些文本,它会将其转换为摩尔斯电码并显示出来。但我也希望 LED 在它是破折号时闪烁一秒,在它是点时闪烁 0.25 秒。
使用下面显示的脚本,我眨了眨眼。我认为这是因为 pattern.match
。我尝试了 find()
和 findall
但后来我得到了这些输出
import morse
Enter sentence: hi
.... ..
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "morse.py", line 82, in <module>
AttributeError: 'ure' object has no attribute 'findall'
和
import morse
Enter sentence: hi
.... ..
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "morse.py", line 82, in <module>
AttributeError: 'ure' object has no attribute 'find'
脚本本身
import time
from machine import Pin
led=Pin(5,Pin.OUT)
BRate=0.25
import re
def morse_dash():
led.value(1)
time.sleep(4*BRate)
led.value(0)
time.sleep(BRate)
def morse_dot():
led.value(1)
time.sleep(BRate)
led.value(0)
time.sleep(BRate)
CODE = {' ': '_',
"'": '.----.',
'(': '-.--.-',
')': '-.--.-',
',': '--..--',
'-': '-....-',
'.': '.-.-.-',
'/': '-..-.',
'0': '-----',
'1': '.----',
'2': '..---',
'3': '...--',
'4': '....-',
'5': '.....',
'6': '-....',
'7': '--...',
'8': '---..',
'9': '----.',
':': '---...',
';': '-.-.-.',
'?': '..--..',
'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': '--..',
'_': '..--.-'}
def convertToMorseCode(sentence):
sentence = sentence.upper()
encodedSentence = ""
for character in sentence:
encodedSentence += CODE[character] + " "
return encodedSentence
while True:
sentence = input("Enter sentence: ")
encodedSentence = convertToMorseCode(sentence)
print(encodedSentence)
pattern = re.compile('.')
if pattern.match(encodedSentence):
[morse_dot() for _ in range(1)]
else:
[morse_dash() for _ in range(1)]
你不需要正则表达式
import time
from machine import Pin
led=Pin(5,Pin.OUT)
BRate=0.25
def morse_dash():
led.value(1)
time.sleep(4*BRate)
led.value(0)
time.sleep(BRate)
def morse_pause():
time.sleep(BRate)
def morse_dot():
led.value(1)
time.sleep(BRate)
led.value(0)
time.sleep(BRate)
CODE = {' ': '_',
"'": '.----.',
'(': '-.--.-',
')': '-.--.-',
',': '--..--',
'-': '-....-',
'.': '.-.-.-',
'/': '-..-.',
'0': '-----',
'1': '.----',
'2': '..---',
'3': '...--',
'4': '....-',
'5': '.....',
'6': '-....',
'7': '--...',
'8': '---..',
'9': '----.',
':': '---...',
';': '-.-.-.',
'?': '..--..',
'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': '--..',
'_': '..--.-'}
def convertToMorseCode(sentence):
sentence = sentence.upper()
encodedSentence = ""
for character in sentence:
encodedSentence += CODE[character] + " "
return encodedSentence
while True:
sentence = input("Enter sentence: ")
encodedSentence = convertToMorseCode(sentence)
print(encodedSentence)
for i in encodedSentence:
if i == ".":
morse_dot()
elif i == "-":
morse_dash()
else:
morse_pause()
使用带 python 的 ESP32,这是我的脚本。它的作用是您可以填写一些文本,它会将其转换为摩尔斯电码并显示出来。但我也希望 LED 在它是破折号时闪烁一秒,在它是点时闪烁 0.25 秒。
使用下面显示的脚本,我眨了眨眼。我认为这是因为 pattern.match
。我尝试了 find()
和 findall
但后来我得到了这些输出
import morse
Enter sentence: hi
.... ..
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "morse.py", line 82, in <module>
AttributeError: 'ure' object has no attribute 'findall'
和
import morse
Enter sentence: hi
.... ..
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "morse.py", line 82, in <module>
AttributeError: 'ure' object has no attribute 'find'
脚本本身
import time
from machine import Pin
led=Pin(5,Pin.OUT)
BRate=0.25
import re
def morse_dash():
led.value(1)
time.sleep(4*BRate)
led.value(0)
time.sleep(BRate)
def morse_dot():
led.value(1)
time.sleep(BRate)
led.value(0)
time.sleep(BRate)
CODE = {' ': '_',
"'": '.----.',
'(': '-.--.-',
')': '-.--.-',
',': '--..--',
'-': '-....-',
'.': '.-.-.-',
'/': '-..-.',
'0': '-----',
'1': '.----',
'2': '..---',
'3': '...--',
'4': '....-',
'5': '.....',
'6': '-....',
'7': '--...',
'8': '---..',
'9': '----.',
':': '---...',
';': '-.-.-.',
'?': '..--..',
'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': '--..',
'_': '..--.-'}
def convertToMorseCode(sentence):
sentence = sentence.upper()
encodedSentence = ""
for character in sentence:
encodedSentence += CODE[character] + " "
return encodedSentence
while True:
sentence = input("Enter sentence: ")
encodedSentence = convertToMorseCode(sentence)
print(encodedSentence)
pattern = re.compile('.')
if pattern.match(encodedSentence):
[morse_dot() for _ in range(1)]
else:
[morse_dash() for _ in range(1)]
你不需要正则表达式
import time
from machine import Pin
led=Pin(5,Pin.OUT)
BRate=0.25
def morse_dash():
led.value(1)
time.sleep(4*BRate)
led.value(0)
time.sleep(BRate)
def morse_pause():
time.sleep(BRate)
def morse_dot():
led.value(1)
time.sleep(BRate)
led.value(0)
time.sleep(BRate)
CODE = {' ': '_',
"'": '.----.',
'(': '-.--.-',
')': '-.--.-',
',': '--..--',
'-': '-....-',
'.': '.-.-.-',
'/': '-..-.',
'0': '-----',
'1': '.----',
'2': '..---',
'3': '...--',
'4': '....-',
'5': '.....',
'6': '-....',
'7': '--...',
'8': '---..',
'9': '----.',
':': '---...',
';': '-.-.-.',
'?': '..--..',
'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': '--..',
'_': '..--.-'}
def convertToMorseCode(sentence):
sentence = sentence.upper()
encodedSentence = ""
for character in sentence:
encodedSentence += CODE[character] + " "
return encodedSentence
while True:
sentence = input("Enter sentence: ")
encodedSentence = convertToMorseCode(sentence)
print(encodedSentence)
for i in encodedSentence:
if i == ".":
morse_dot()
elif i == "-":
morse_dash()
else:
morse_pause()