6.1.2. GPIO控制

您的OpenMV具有9个(OpenMV M4)到10个(OpenMV M7)板载通用I / O引脚, 用于与现实世界交谈。我们可能会保持这个数量,以保持OpenMV Cam微小。

无论如何,有几种方法可以使用GPIO引脚。

6.1.2.1. 作为输入

要使用GPIO引脚作为输入,只需要:

import pyb

p = pyb.Pin("P0", pyb.Pin.IN)
p.value() # Returns 0 or 1.

pyb.Pin() 构造函数创建一个pin对象,您将用它来控制你的OpenMV的I / O引脚。 你传递给OpenMV凸轮该字符串应该是 P ,然后OpenMV M4为 0-8 和 OpenMV M7为 0-9

一旦你创建了GPIO引脚,使用该 pyb.Pin.value() 方法来获得IO引脚的状态。

最后,如果需要上拉或下拉IO引脚, 传递 pyb.Pin.PULL_UPpyb.Pin.PULL_DOWN 作为 pyb.Pin() 构造函数的附加参数:

p = pyb.Pin("P0", pyb.Pin.IN, pyb.Pin.PULL_UP)

6.1.2.2. 作为输出

现在,要使用GPIO引脚作为输出,只需要:

import pyb

p = pyb.Pin("P0", pyb.Pin.OUT_PP)
p.high() # or p.value(1) to make the pin high (3.3V)
p.low() # or p.value(0) to make the pin low (0V)

就这么简单!然而,如果你想设置开漏输出呢?这样做:

p = pyb.Pin("P0", pyb.Pin.OUT_OD)

现在 pyb.Pin.high() 将引起引脚拉高,同时 pyb.Pin.low() 将引脚拉低。如果你需要一个引脚上的上拉电阻只需添加:

p = pyb.Pin("P0", pyb.Pin.OUT_OD, pyb.Pin.PULL_UP)

… 到构造函数。