【MicroPython】machine.ADC Function

From Waveshare Wiki
Jump to: navigation, search
  • machine.ADC(id):
    • ADC object constructor, and initialize the corresponding channel.
    • id: can be a GPIO object or an ADC channel;

The ADC object constructor is used to initialize the corresponding ADC channel. The parameter ID is the ADC channel used. You can use the Pin object or directly specify the ADC channel.

When using the Pin object, the specified GPIO needs to support the ADC function, namely GPIO26-29;

Use the specified ADC channel, channel 0-3 corresponds to GPIO26-29, channel number 4 corresponds to the internal temperature sensor.

  • ADC.read_u16():
    • Read the ADC value of the corresponding channel

The read_u16 function reads the corresponding channel ADC and returns the read value;

It should be noted here that the return value of this function does not directly return the value read by the ADC, but the processed value, and its value range is 0-65535;

Therefore, the ADC voltage calculation formula should be:

Vin =\frac{3.3*ReadData}{65535}Vin=655353.3∗ReadData​
The ADC read voltage is 3.3 times the return value divided by 65535 in V
This article is only for RP2040 MicroPython firmware, and the source code shall prevail. This article is written according to the official source code at the time of writing, which is used to provide convenience for beginners and is for reference only. Those who are capable are recommended to refer to MicroPython.