• sales

    +86-0755-88291180

【MicroPython】machine.ADC Function

  • 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.

TAG: ESP32 S3 Development Board 1.85 inch Round LCD Display 360×360 QMI8658 Sensor / MIC / SD /MP3 Audio /Battery Port LVGL/HMI For Arduino CH340 driver Luckfox Pico plus Pi5 Jetson 1.5inch LCD ESP32-S3 Smart 86 Box Development Board with 4 inch 480x480 Display Touch Screen For AI and DeepSeek Raspberry Pi 5 Power Raspberry Pi 1.54inch LCD Bookworm-Desktop Display and Touch Raspberry-Pi-A7670E-GSM-GPRS-GNSS-LTE-Cat-1-2G-A-User-Guide Modbus-Protocol-Specification User Guide Raspberry Pi ST7789 ESP32 S3 Development Board 2.8 inch B LCD 2.8inch Display 480x640 TouchScreen QMI8658 Sensor / Battery Port LVGL/HMI For Arduino SpotPear Raspberry Pi LCD Capacitive TouchScreen Display HDMI 6.25inch 720x1560 Raspberry Pi 5 PCIe to M.2 NVMe SSD Adapter Board C HAT Pi5-PCIe-2280-2242-2230 ESP32-S3 LCD Driver Board RGB/SPI N8R8 For 2.1/2.8/4inch Captive TouchScreen Display Round Raspberry Pi Pico 2 RP2350 Core2350B Core Board PSRAM Raspberry Pi 5 PCIe to SATA Expansion Board with EEPROM HAT+ ESP32-C6 WiFi 6 Development Board ESP32-C6-MINI-1Support WiFi6 Bluetooth5 Zigbee Thread PCB800099