输入输出

沿着 BBC micro:bit 的底部边缘有金属条,使它看起来好像设备有牙齿。这些是输入/输出引脚(或简称 I/O 引脚)。

../_images/blue-microbit.png

有些别针比其他别针大,因此可以将鳄鱼夹连接到它们上。这些是标记为 0、1、2、3V 和 GND 的那些(计算机总是从零开始计数)。如果您将边缘连接器板连接到设备,则可以插入连接到其他(较小)引脚的电线。

BBC micro:bit 上的每个引脚都由一个名为 where是引脚编号的对象表示。因此,例如,要使用标有 0(零)的引脚执行操作,请使用名为 的对象。pinN where N pin0.

简单的!

根据特定引脚的功能,这些对象具有与其关联的各种方法。

怕痒的蟒蛇

通过引脚输入的最简单示例是检查它们是否被触摸。所以,你可以挠你的设备让它像这样笑:

from microbit import *

while True:
    if pin0.is_touched():
        display.show(Image.HAPPY)
    else:
        display.show(Image.SAD)

用一只手握住设备的 GND 引脚。然后,用另一只手触摸(或挠痒痒)0(零)针脚。您应该看到显示从脾气暴躁变为高兴!

这是一种非常基本的输入测量形式。然而,当您通过引脚插入电路和其他设备时,乐趣才真正开始。

哔哔声和哔哔声

我们可以连接到设备的最简单的东西是压电蜂鸣器。有两种类型的压电蜂鸣器。使用最简单的类型称为有源蜂鸣器。有源蜂鸣器包含一个振荡器,当电流通过它们时,它会以预定的音调产生音调。无源蜂鸣器需要振荡电流通过它们以产生振荡频率的音调。简而言之,有源蜂鸣器使用简单,但只能产生一种音调,而无源蜂鸣器使用起来稍微复杂一些,但可以产生多种音调。

../_images/piezo_buzzer.jpg

我们将使用有源压电蜂鸣器进行输出。要将一个连接到您的 BBC micro:bit,您应该将鳄鱼夹连接到引脚 0 和 GND(如下所示)。

../_images/pin0-gnd.png

引脚 0 的电线应连接到蜂鸣器上的正极连接器,以及从 GND 连接到负极连接器的电线。

以下程序将使蜂鸣器发出声音:

from microbit import *

pin0.write_digital(1)

这很有趣大约 5 秒钟,然后你会想要停止可怕的吱吱声。让我们改进我们的示例并使设备发出哔哔声:

from microbit import *

while True:
    pin0.write_digital(1)
    sleep(20)
    pin0.write_digital(0)
    sleep(480)

你能弄清楚这个脚本是如何工作的吗?请记住, 在数字世界中,它1是“开”和0关”的。

设备进入无限循环并立即打开引脚 0。这会导致蜂鸣器发出哔哔声。当蜂鸣器发出哔哔声时,设备会休眠 20 毫秒,然后关闭引脚 0。这会产生短暂的哔哔声效果。最后,设备在循环返回并重新开始之前休眠 480 毫秒。这意味着您每秒会听到两次哔哔声(每 500 毫秒一次)。

我们制作了一个非常简单的节拍器!