class Pin – control I/O pins¶
A pin is the basic object to control I/O pins (also known as GPIO - general-purpose input/output). It has methods to set the mode of the pin (input, output, etc) and methods to get and set the digital logic level. For analog control of a pin, see the ADC class.
Usage Model:
Constructors¶
-
class
machine.
Pin
(id, ...)¶ Create a new Pin object associated with the id. If additional arguments are given, they are used to initialise the pin. See
Pin.init()
.
Methods¶
-
Pin.
value
([value])¶ Get or set the digital logic level of the pin:
- With no argument, return 0 or 1 depending on the logic level of the pin.
- With
value
given, set the logic level of the pin.value
can be anything that converts to a boolean. If it converts toTrue
, the pin is set high, otherwise it is set low.
-
Pin.
__call__
([value])¶ Pin objects are callable. The call method provides a (fast) shortcut to set and get the value of the pin. See
Pin.value()
for more details.
-
Pin.
alt_list
()¶ Returns a list of the alternate functions supported by the pin. List items are a tuple of the form:
('ALT_FUN_NAME', ALT_FUN_INDEX)
Availability: WiPy.
Attributes¶
-
class
Pin.
board
¶ Contains all
Pin
objects supported by the board. Examples:Pin.board.GP25 led = Pin(Pin.board.GP25, mode=Pin.OUT) Pin.board.GP2.alt_list()
Availability: WiPy.
Constants¶
The following constants are used to configure the pin objects. Note that not all constants are available on all ports.