summaryrefslogtreecommitdiffstatshomepage
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/library/machine.Pin.rst113
1 files changed, 79 insertions, 34 deletions
diff --git a/docs/library/machine.Pin.rst b/docs/library/machine.Pin.rst
index 6fa2b170e8..a2e97c87c2 100644
--- a/docs/library/machine.Pin.rst
+++ b/docs/library/machine.Pin.rst
@@ -39,6 +39,21 @@ Usage Model:
All pin objects go through the pin mapper to come up with one of the
gpio pins.
+.. only:: port_esp8266
+
+ ::
+
+ from machine import Pin
+
+ # create an output pin on GPIO0
+ p0 = Pin(0, Pin.OUT)
+ p0.value(0)
+ p0.value(1)
+
+ # create an input pin on GPIO2
+ p2 = Pin(2, Pin.IN, Pin.PULL_UP)
+ print(p2.value())
+
Constructors
------------
@@ -86,6 +101,25 @@ Methods
Get the pin id.
+.. only:: port_esp8266
+
+ .. method:: pin.init(mode, pull=None, \*, value)
+
+ Initialise the pin:
+
+ - `mode` can be one of:
+
+ - ``Pin.IN`` - input pin.
+ - ``Pin.OUT`` - output pin in push-pull mode.
+
+ - `pull` can be one of:
+
+ - ``None`` - no pull up or down resistor.
+ - ``Pin.PULL_UP`` - pull up resistor enabled.
+
+ - if `value` is given then it is the output value to set the pin
+ if it is in output mode.
+
.. method:: pin.value([value])
Get or set the digital logic level of the pin:
@@ -95,17 +129,19 @@ Methods
anything that converts to a boolean. If it converts to ``True``, the pin
is set high, otherwise it is set low.
+.. method:: pin([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.
+
.. method:: 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)``
-.. only:: port_wipy
-
- .. method:: pin([value])
+ Availability: WiPy.
- 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.
+.. only:: port_wipy
.. method:: pin.toggle()
@@ -155,6 +191,23 @@ Methods
Returns a callback object.
+.. only:: port_esp8266
+
+ .. method:: pin.irq(\*, trigger, handler=None)
+
+ Create a callback to be triggered when the input level at the pin changes.
+
+ - ``trigger`` configures the pin level which can generate an interrupt. Possible values are:
+
+ - ``Pin.IRQ_FALLING`` interrupt on falling edge.
+ - ``Pin.IRQ_RISING`` interrupt on rising edge.
+
+ The values can be OR'ed together to trigger on multiple events.
+
+ - ``handler`` is an optional function to be called when the interrupt triggers.
+
+ Returns a callback object.
+
Attributes
----------
@@ -166,44 +219,36 @@ Attributes
led = Pin(Pin.board.GP25, mode=Pin.OUT)
Pin.board.GP2.alt_list()
+ Availability: WiPy.
Constants
---------
-.. only:: port_wipy
-
- .. data:: Pin.IN
-
- .. data:: Pin.OUT
-
- .. data:: Pin.OPEN_DRAIN
-
- .. data:: Pin.ALT
-
- .. data:: Pin.ALT_OPEN_DRAIN
-
- Selects the pin mode.
-
- .. data:: Pin.PULL_UP
-
- .. data:: Pin.PULL_DOWN
-
- Selectes the wether there's pull up/down resistor.
-
- .. data:: Pin.LOW_POWER
+The following constants are used to configure the pin objects. Note that
+not all constants are available on all ports.
- .. data:: Pin.MED_POWER
+.. data:: IN
+ OUT
+ OPEN_DRAIN
+ ALT
+ ALT_OPEN_DRAIN
- .. data:: Pin.HIGH_POWER
+ Selects the pin mode.
- Selects the drive strength.
+.. data:: PULL_UP
+ PULL_DOWN
- .. data:: Pin.IRQ_FALLING
+ Selects the whether there is a pull up/down resistor.
- .. data:: Pin.IRQ_RISING
+.. data:: LOW_POWER
+ MED_POWER
+ HIGH_POWER
- .. data:: Pin.IRQ_LOW_LEVEL
+ Selects the pin drive strength.
- .. data:: Pin.IRQ_HIGH_LEVEL
+.. data:: IRQ_FALLING
+ IRQ_RISING
+ IRQ_LOW_LEVEL
+ IRQ_HIGH_LEVEL
- Selects the IRQ trigger type.
+ Selects the IRQ trigger type.