summaryrefslogtreecommitdiff
path: root/docs/library/machine.ADCWiPy.rst
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2019-09-04 15:05:03 +1000
committerDamien George <damien.p.george@gmail.com>2019-09-04 15:05:03 +1000
commit8a237237a3889036e1a612237b0e585fa0713a66 (patch)
tree3a926cf33f3c18053fd26757ae7dafae4028fd16 /docs/library/machine.ADCWiPy.rst
parent06661890de479ac1846772567f341f0707b339a7 (diff)
docs: Rename machine.ADC docs to machine.ADCWiPy.
To signify that this ADC documentation is specific to the WiPy, and to make way for a standardised ADC documentation.
Diffstat (limited to 'docs/library/machine.ADCWiPy.rst')
-rw-r--r--docs/library/machine.ADCWiPy.rst81
1 files changed, 81 insertions, 0 deletions
diff --git a/docs/library/machine.ADCWiPy.rst b/docs/library/machine.ADCWiPy.rst
new file mode 100644
index 000000000..4a4f0524c
--- /dev/null
+++ b/docs/library/machine.ADCWiPy.rst
@@ -0,0 +1,81 @@
+.. currentmodule:: machine
+.. _machine.ADCWiPy:
+
+class ADCWiPy -- analog to digital conversion
+=============================================
+
+.. note::
+
+ This class is a non-standard ADC implementation for the WiPy.
+ It is available simply as ``machine.ADC`` on the WiPy but is named in the
+ documentation below as ``machine.ADCWiPy`` to distinguish it from the
+ more general :ref:`machine.ADC <machine.ADC>` class.
+
+Usage::
+
+ import machine
+
+ adc = machine.ADC() # create an ADC object
+ apin = adc.channel(pin='GP3') # create an analog pin on GP3
+ val = apin() # read an analog value
+
+Constructors
+------------
+
+.. class:: ADCWiPy(id=0, \*, bits=12)
+
+ Create an ADC object associated with the given pin.
+ This allows you to then read analog values on that pin.
+ For more info check the `pinout and alternate functions
+ table. <https://raw.githubusercontent.com/wipy/wipy/master/docs/PinOUT.png>`_
+
+ .. warning::
+
+ ADC pin input range is 0-1.4V (being 1.8V the absolute maximum that it
+ can withstand). When GP2, GP3, GP4 or GP5 are remapped to the
+ ADC block, 1.8 V is the maximum. If these pins are used in digital mode,
+ then the maximum allowed input is 3.6V.
+
+Methods
+-------
+
+.. method:: ADCWiPy.channel(id, \*, pin)
+
+ Create an analog pin. If only channel ID is given, the correct pin will
+ be selected. Alternatively, only the pin can be passed and the correct
+ channel will be selected. Examples::
+
+ # all of these are equivalent and enable ADC channel 1 on GP3
+ apin = adc.channel(1)
+ apin = adc.channel(pin='GP3')
+ apin = adc.channel(id=1, pin='GP3')
+
+.. method:: ADCWiPy.init()
+
+ Enable the ADC block.
+
+.. method:: ADCWiPy.deinit()
+
+ Disable the ADC block.
+
+class ADCChannel --- read analog values from internal or external sources
+=========================================================================
+
+ADC channels can be connected to internal points of the MCU or to GPIO pins.
+ADC channels are created using the ADC.channel method.
+
+.. method:: adcchannel()
+
+ Fast method to read the channel value.
+
+.. method:: adcchannel.value()
+
+ Read the channel value.
+
+.. method:: adcchannel.init()
+
+ Re-init (and effectively enable) the ADC channel.
+
+.. method:: adcchannel.deinit()
+
+ Disable the ADC channel.