信号塔#

信号塔命令只能与 CTE 信号塔一起使用。

初始化 SignalTower 类#

使用以下构造函数创建信号塔:

SignalTower(port)

此构造函数使用一个参数:

范围

描述

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() 方法返回从信号塔接收到的最后一个状态包的时间戳。

**返回:**最后接收的状态包的时间戳(以毫秒为单位)。