microbit 为什么闪烁的 LED 灯这么慢?

microbit why blinking leds is so slow?

使用来自 microbit 的基本示例代码,blinking heart,我尝试使用 pause 参数更改闪烁的延迟。但是,无论我输入什么值,最小实际闪烁频率都在 500 毫秒左右。

你知道为什么吗,以及如何使用 LED 模式(如 show_iconshow_leds 功能)实现更快的闪烁。

def on_forever():
    basic.show_icon(IconNames.HEART)
    basic.pause(50)
    basic.show_icon(IconNames.SMALL_HEART)
    basic.pause(50)
basic.forever(on_forever)

谢谢。

您已将其标记为 micropython,但我认为您使用的不是这个。我认为你是 运行 MakeCode 编辑器中的 Python。

查看 MakeCode show_icon 的帮助页面,它说它是通过以下方式调用的:

def basic.show_icon(icon: IconNames, interval: null): None

有关 interval 的以下详细信息:

interval (optional), the time to display in milliseconds. default is 600.

由于您没有为 interval 设置值,它默认为 600 毫秒,这意味着您的代码在每个图标之间设置了 650 毫秒延迟。

我能够通过以下方式改变图标显示的持续时间:

def on_forever():
    basic.show_icon(IconNames.HEART, 100)
    basic.show_icon(IconNames.SMALL_HEART, 400)
    basic.show_icon(IconNames.HEART, 100)
    basic.show_icon(IconNames.SMALL_HEART, 800)

basic.forever(on_forever)