Indietro

Leggere Sensori Analogici su Raspberry Pi Pico con Velxio

Introduzione

Benvenuto in un altro tutorial pratico sul blog di Velxio! Oggi esploreremo l’ADC (Convertitore Analogico-Digitale) del Raspberry Pi Pico. Il Pico è una scheda piccola ma potente, e una delle sue caratteristiche più interessanti è la capacità di leggere tensioni analogiche, perfetta per sensori, potenziometri e altro. In questo esempio, leggeremo tre segnali analogici esterni da potenziometri e acquisiremo anche il valore del sensore di temperatura interno. Il tutto funziona direttamente nel tuo browser con la simulazione SPICE-accurata di Velxio.

Schema circuitale di pico-adc-read sul canvas del simulatore Velxio

Spiegazione del Circuito

Diamo un’occhiata al circuito. Abbiamo un Raspberry Pi Pico (la variante Nano RP2040 in Velxio) collegato a due potenziometri e un LED.

Componenti

Dettagli del Cablaggio

Nota: I pin ADC del Pico tollerano 3.3V, quindi utilizziamo l’alimentazione a 3.3V. I potenziometri agiscono come partitori di tensione, fornendo una tensione variabile da 0 a 3.3V al loro cursore.

Spiegazione del Codice

Ora esaminiamo il codice. È scritto in C++ in stile Arduino per il Raspberry Pi Pico.

// Raspberry Pi Pico — Test di Lettura ADC
// Legge valori analogici da A0-A2 (GPIO26-28) e dal sensore di temperatura interno

void setup() {
  Serial.begin(115200);
  delay(500);
  Serial.println("=== Lettura ADC Pico ===");
  Serial.println("A0=GP26  A1=GP27  A2=GP28  Temp=interno");
  Serial.println("Risoluzione a 12 bit (0-4095), rif. 3.3V");
  Serial.println();

  analogReadResolution(12);
}

void loop() {
  int a0 = analogRead(A0);
  int a1 = analogRead(A1);
  int a2 = analogRead(A2);

  // Sensore di temperatura interno sul canale 4
  // T = 27 - (V - 0.706) / 0.001721
  int tempRaw = analogRead(A3); // Canale 4 mappato su A3 dal core Pico
  float voltage = tempRaw * 3.3f / 4095.0f;
  float tempC = 27.0f - (voltage - 0.706f) / 0.001721f;

  Serial.print("A0: "); Serial.print(a0);
  Serial.print("  A1: "); Serial.print(a1);
  Serial.print("  A2: "); Serial.print(a2);
  Serial.print("  Temp: "); Serial.print(tempC, 1); Serial.println(" C");

  delay(1000);
}

Punti Chiave

Concetti Chiave

Errori Comuni e Suggerimenti per il Debug

Estensioni Suggerite

Prova Tu Stesso!

Pronto a sperimentare? Apri l’esempio live in Velxio e inizia a modificare il circuito o il codice. Clicca sul link qui sotto per avviare la simulazione direttamente nel tuo browser.

Avvia l’Esempio di Lettura ADC su Pico in Velxio

Buon divertimento con il tinkering!


Condividi su:
David Montero

Scritto da

David Montero

Creator of Velxio, the open-source circuit and Arduino simulator.

GitHub velxio.dev

Articoli correlati


Articolo precedente
Demo Multi-Protocollo Pico: Serial, I2C, SPI e ADC su RP2040
Articolo successivo
Pico SPI Loopback: Testa la Comunicazione Seriale del Tuo RP2040