发报机模块/Transmitter

拥有一个按钮,可以使用按钮敲击莫尔斯码。

读取最新字符

Transmitter.get_char()
使用该函数可得到最近一次收到的莫尔斯解码内容
返回:最新的通信内容,如果没有内容返回空格字符串 ‘ ‘
返回类型:str

Examples

# 显示模块解析的莫尔斯码对应的字符
from wonderbits import Transmitter,Display

display1 = Display()
transmitter1 = Transmitter()

while True:
    display1.print(1, 1, transmitter1.get_char())

设置指示灯是否开启

Transmitter.set_led(state=True)
参数:state (bool) –

参数:

False: 关闭指示灯
True: 开启指示灯

Examples

# 通过按钮控制发报机指示灯
from wonderbits import Transmitter,Control

control1 = Control()
transmitter1 = Transmitter()

# 在按下SW2后发报机指示灯不会亮起,按下SW1则恢复指示灯功能
while True:
    if control1.is_sw1_pressed():
        transmitter1.set_led(True)

    if control1.is_sw2_pressed():
        transmitter1.set_led(False)

设置指示灯是否开启

Transmitter.set_buzzer(state=True)
参数:state (bool) –

参数:

False: 关闭蜂鸣器
True: 开启指示灯

Examples

# 通过按钮控制发报机蜂鸣器
from wonderbits import Transmitter,Control

control1 = Control()
transmitter1 = Transmitter()

# 在按下SW2后发报机蜂鸣器会静音,按下SW1则恢复蜂鸣器功能
while True:
    if control1.is_sw1_pressed():
        transmitter1.set_buzzer(True)

    if control1.is_sw2_pressed():
        transmitter1.set_buzzer(False)

设置摩斯码速度

Transmitter.set_speed(speed=50)
调用此函数设置莫尔斯码的速度,速度越快 ‘.’,’_’按下时间越短
参数:speed (int) – 莫尔斯码速度, 范围 0~100

Examples

# 设置莫尔斯码按键速度
from wonderbits import Transmitter,Control,Display

control1 = Control()
display1 = Display()
transmitter1 = Transmitter()

while True:
    display1.print(1, 1, transmitter1.get_char())
    display1.print(2, 1, control1.get_sw4())

    if control1.is_sw3_at_1():
        transmitter1.set_speed(control1.get_sw4())

当解码新信息

Transmitter.when_msg_decoded()
当解析到新的莫尔斯码时,执行被修饰的函数

Examples

# 当transmitter1解析正确的莫尔斯码会在display1模块中显示对应的字符

from wonderbits import Transmitter,Display

display1 = Display()
transmitter1 = Transmitter()

@transmitter1.when_msg_decoded()
def run1(val):
    display1.print(1, 1, val)

while True:
    pass

当按键松开

Transmitter.when_key_released()
当松开发报机按键时,执行被修饰的函数

Examples

# 当transmitter1的按键被松开会在display1模块中显示按键按下的时间

from wonderbits import Transmitter,Display

display1 = Display()
transmitter1 = Transmitter()

@transmitter1.when_key_released()
def run1(val):
    display1.print(1, 1, val)

while True:
    pass

事件源

Transmitter.Transmitter.source_msg

msg事件源

Transmitter.Transmitter.source_press_time

press_time事件源