跳至内容

LedControl (UORB 消息)

LED 控制:控制单个或多个 LED'。这些是外部可见的 LED',而不是电路板上的 LED's

源文件

c
# LED 控制:控制单个或多个 LED's.
# 这些是外部可见的 LED';而不是电路板上的 LED's

uint64 timestamp # 自系统启动以来的时间(微秒)

# 颜色
uint8 COLOR_OFF = 0 # 仅在驱动程序中使用
uint8 COLOR_RED = 1
uint8 COLOR_GREEN = 2
uint8 COLOR_BLUE = 3
uint8 COLOR_YELLOW = 4
uint8 COLOR_PURPLE = 5
uint8 COLOR_AMBER = 6
uint8 COLOR_CYAN = 7
uint8 COLOR_WHITE = 8

# LED 模式定义
uint8 MODE_OFF = 0 # 关闭 LED
uint8 MODE_ON = 1 # 打开 LED
uint8 MODE_DISABLED = 2 # 禁用此优先级(切换到较低的优先级设置)
uint8 MODE_BLINK_SLOW = 3
uint8 MODE_BLINK_NORMAL = 4
uint8 MODE_BLINK_FAST = 5
uint8 MODE_BREATHE = 6 # 持续增加采样率;降低亮度(如果驱动程序不支持,则为纯色)。
uint8 MODE_FLASH = 7 # 快速闪烁两次(开/关),时间与 MODE_BLINK_FAST 相同,然后关闭一段时间

uint8 MAX_PRIORITY = 2 # 最大优先级(最小为 0)


uint8 led_mask # 要控制哪个 LED 的位掩码,全部设置为 0xff
uint8 color # 参见 COLOR_*
uint8 模式 # 参见 MODE_*
uint8 num_blinks # 闪烁次数(如果模式为 MODE_BLINK_* 之一,则开关周期数)。设置为 0 表示无限次
                 # 在 MODE_FLASH 中为周期数。最大闪烁次数: 122122 和最大闪光周期数:20
uint8 priority # 优先级:优先级较高的事件将优先于当前优先级较低的事件(参见 MAX_PRIORITY)。

uint8 ORB_QUEUE_LENGTH = 8 # 需要与 BOARD_MAX_LEDS 匹配