Skip to content

Latest commit

 

History

History
66 lines (44 loc) · 2.08 KB

machine.ADC.rst

File metadata and controls

66 lines (44 loc) · 2.08 KB
.. currentmodule:: machine

class ADC -- analog to digital conversion

The ADC class provides an interface to analog-to-digital converters, and represents a single endpoint that can sample a continuous voltage and convert it to a discretised value.

For extra control over ADC sampling see :ref:`machine.ADCBlock <machine.ADCBlock>`.

Example usage:

from machine import ADC

adc = ADC(pin)        # create an ADC object acting on a pin
val = adc.read_u16()  # read a raw analog value in the range 0-65535
val = adc.read_uv()   # read an analog value in microvolts

Constructors

Methods

.. method:: ADC.init(*, sample_ns, atten)

   Apply the given settings to the ADC.  Only those arguments that are
   specified will be changed.  See the ADC constructor above for what the
   arguments are.

.. method:: ADC.block()

   Return the :ref:`ADCBlock <machine.ADCBlock>` instance associated with
   this ADC object.

   This method only exists if the port supports the
   :ref:`ADCBlock <machine.ADCBlock>` class.

.. method:: ADC.read_u16()

   Take an analog reading and return an integer in the range 0-65535.
   The return value represents the raw reading taken by the ADC, scaled
   such that the minimum value is 0 and the maximum value is 65535.

.. method:: ADC.read_uv()

   Take an analog reading and return an integer value with units of
   microvolts.  It is up to the particular port whether or not this value
   is calibrated, and how calibration is done.