В RP2350
Микроконтроллер RP2350 содержит встроенный 12-битный АЦП с несколькими входными каналами. Это даёт 4 096 различимых уровней для представления напряжений от 0 В до 3,3 В. При опорном напряжении 3,3 В (ADC_AVDD) шаг квантования составляет около 0,806 мВ. Подробнее см. на странице 1066 даташита: даташит RP2350
В чипе RP2350 для АЦП используется вывод ADC_AVDD. Он питает АЦП и одновременно служит опорным напряжением для преобразований. Значение на этом выводе задаёт максимальное напряжение, которое АЦП может измерить. На практике ADC_AVDD обычно подключают к 3,3 В. Поскольку АЦП чувствителен к малым изменениям напряжения, это питание должно быть чистым и стабильным, чтобы показания были надёжными.
На плате Raspberry Pi Pico 2 это уже сделано за вас. Плата подводит питание 3,3 В к выводу ADC_AVDD RP2350 через небольшой фильтр из резистора и конденсатора. Это помогает снизить шумы и улучшает работу АЦП.
Pico 2 также выводит этот отфильтрованный опорный сигнал на контакт с подписью ADC_VREF (физический контакт 35). По умолчанию трогать его не нужно: АЦП можно использовать как есть. Для более сложных задач этот вывод позволяет подать внешнее прецизионное опорное напряжение, если нужна большая точность. Это необязательно и не требуется для проектов для начинающих.
Пока достаточно запомнить: АЦП RP2350 — 12-битный, измеряет напряжения до своего опорного напряжения, а плата Pico 2 уже обеспечивает безопасную и стабильную настройку по умолчанию.
Каналы АЦП и соответствие GPIO на Raspberry Pi Pico 2
У АЦП RP2350 несколько внутренних каналов. На Raspberry Pi Pico 2 четыре из них подключены к выводам GPIO, которые можно использовать как аналоговые входы.
| Вывод GPIO | Канал ADC | Назначение |
|---|---|---|
| GPIO26 | ADC0 | Можно использовать для чтения напряжения с периферии. |
| GPIO27 | ADC1 | Можно использовать для чтения напряжения с периферии. |
| GPIO28 | ADC2 | Можно использовать для чтения напряжения с периферии. |
| GPIO29 | ADC3 | Измеряет напряжение питания VSYS на плате. |