信号塔#
信号塔命令只能与 CTE 信号塔一起使用。
初始化 SignalTower 类#
使用以下构造函数创建信号塔:
SignalTower(port)
此构造函数使用一个参数:
范围 |
描述 |
---|---|
|
SignalTower 连接到的有效 智能端口。 |
# Construct a Signal Tower "signaltower_1" with the
# SignalTower class.
signaltower_1 = SignalTower(Ports.Port1)
当引用 SignalTower 类方法时,此 signaltower_1
对象将在本 API 文档的所有后续示例中使用。
类方法#
set_color()#
set_color(color, state)
方法用于无限期地设置信号塔的颜色和状态,或直到再次使用该方法。
范围 |
描述 |
---|---|
颜色 |
有效的 SignalTowerColorType。 |
状态 |
有效的 SignalTowerColorType。 |
**返回:**无
# Set the Signal Tower to start blinking the blue LED.
signaltower_1.set_color(signal_tower.BLUE, signal_tower.BLINK)
set_colors()#
set_colors(r, y, g, b, w)
方法打开或关闭信号塔上的所有 LED。
范围 |
描述 |
---|---|
r |
有效的 SignalTowerColorType,用于将 LED 设置为红色。 |
y |
有效的 SignalTowerColorType,用于将 LED 设置为黄色。 |
克 |
有效的 SignalTowerColorType,用于将 LED 设置为绿色。 |
b |
有效的 SignalTowerColorType,用于将 LED 设置为蓝色。 |
西 |
有效的 SignalTowerColorType,用于设置白色 LED。 |
**返回:**无
# Turn on all LEDs.
signaltower_1.set_color(signal_tower.ON, signal_tower.ON, signal_tower.ON, signal_tower.ON, signal_tower.ON)
# Turn on just the red LED.
signaltower_1.set_color(signal_tower.ON, signal_tower.OFF, signal_tower.OFF, signal_tower.OFF, signal_tower.OFF)
pressing()#
pressing()
方法返回信号塔的按钮当前是否被按下。
返回: 如果信号塔的按钮当前被按下,则返回 True
。否则,返回 False
。
pressed()#
pressed(callback, arg)
方法注册一个当按下信号塔按钮时要调用的函数。
范围 |
描述 |
---|---|
打回来 |
按下按钮时调用的函数 |
arg |
**可选。**用于向回调函数传递参数的元组 |
**返回:**事件类的一个实例。
# Define a function tower_button_pressed().
def tower_button_pressed():
# Print that the Signal Tower's button was pressed to
# the Brain's screen.
brain.screen.print("button pressed")
# Run tower_button_pressed when the Signal Tower's button
# is pressed.
signaltower_1.pressed(tower_button_pressed)
released()#
released(callback, arg)
方法注册一个在信号塔按钮被释放时调用的函数。
范围 |
描述 |
---|---|
打回来 |
释放按钮时调用的函数 |
arg |
**可选。**用于向回调函数传递参数的元组 |
返回: Event 类的一个实例
# Define a function tower_button_released().
def tower_button_released():
# Print that the Signal Tower's button was released
# to the Brain's screen.
brain.screen.print("button released")
# Run tower_button_released when the Signal Tower's button
# is released.
signaltower_1.released(tower_button_released)
installed()#
installed()
方法检查设备连接。
返回: 如果设备已连接,则返回 True
。如果未连接,则返回 False
。
timestamp()#
timestamp()
方法返回从信号塔接收到的最后一个状态包的时间戳。
**返回:**最后接收的状态包的时间戳(以毫秒为单位)。