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 valuegiven, set the logic level of the pin.valuecan 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 - Pinobjects 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.