Como funciona o Potenciómetro?
Um potenciómetro é uma resistência variável com 3 pinos. Ao rodar o eixo, o cursor central desloca-se, alterando a divisão de tensão entre os extremos e o pino central.
📌 Pinagem
| Pino | Ligação | Notas |
|---|---|---|
| Esquerdo | 5V (VCC) | Extremo positivo |
| Centro (cursor) | Pino Analógico | Varia de 0 a 5V |
| Direito | GND | Extremo negativo |
📊
O Arduino lê tensão com 10 bits de resolução: 0V = 0, 5V = 1023. Para converter:
tensao = leitura × (5.0 / 1023.0)
Exercício 1 — Ler e Imprimir
🔌 Ligações
| Arduino | → | Potenciómetro |
|---|---|---|
| 5V | → | Pino esquerdo |
| A0 | → | Pino central (cursor) |
| GND | → | Pino direito |
ex1_potenciometro_ler.ino
void setup() {
Serial.begin(9600);
}
void loop() {
int leitura = analogRead(A0); // 0 a 1023
float tensao = leitura * (5.0 / 1023.0);
int percentagem = map(leitura, 0, 1023, 0, 100);
Serial.print("Valor: "); Serial.print(leitura);
Serial.print(" | Tensão: "); Serial.print(tensao, 2); Serial.print("V");
Serial.print(" | %: "); Serial.println(percentagem);
delay(200);
}
Exercício 2 — Controlar Brilho do LED
ex2_pot_brilho.ino
const int POT = A0;
const int LED = 9; // Pino PWM
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
int leitura = analogRead(POT); // 0–1023
int brilho = map(leitura, 0, 1023, 0, 255); // Remapeia para PWM
analogWrite(LED, brilho);
delay(10);
}
Exercício 3 — Controlar Velocidade de Piscar
ex3_pot_velocidade.ino
const int POT = A0;
const int LED = 13;
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
int leitura = analogRead(POT);
// Mapeia para intervalo: 50ms (rápido) a 1000ms (lento)
int intervalo = map(leitura, 0, 1023, 50, 1000);
digitalWrite(LED, HIGH);
delay(intervalo);
digitalWrite(LED, LOW);
delay(intervalo);
}