Arduino Nano ESP32 - Gráfico de Barras LED de 10 Segmentos
Neste guia, vamos aprender a usar o gráfico de barras LED de 10 segmentos com o Arduino Nano ESP32. Em detalhes, vamos aprender:
- Como conectar o gráfico de barras LED de 10 segmentos ao Arduino Nano ESP32.
- Como escrever um programa para o Arduino Nano ESP32 controlar o display de barras LED.

Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.
Sobre o Gráfico de Barras LED de 10 Segmentos
| Gráfico de Barras LED de 10 Segmentos | |
|---|---|
| Número de Segmentos | 10 |
| Cor do LED | Vermelho brilhante |
| Tensão Direta | ~2V por segmento |
| Corrente Direta | 20mA máx. por segmento |
| Resistor Necessário | 220Ω por segmento |
Pinagem

- Pinos de ânodo (A1–A10): conecte aos pinos GPIO por meio de resistores de 220Ω
- Pinos de cátodo (K1–K10): conecte ao GND
Diagrama de Ligação entre o Gráfico de Barras LED de 10 Segmentos e o Arduino Nano ESP32
O gráfico de barras LED de 10 segmentos se conecta diretamente ao Arduino Nano ESP32 — não há necessidade de componentes adicionais além dos resistores de 220Ω.

This image is created using Fritzing. Click to enlarge image
| Gráfico de Barras LED | Pino do Arduino Nano ESP32 |
|---|---|
| A1 (Ânodo 1) | Pino 2 (via 220Ω) |
| A2 (Ânodo 2) | Pino 3 (via 220Ω) |
| A3 (Ânodo 3) | Pino 4 (via 220Ω) |
| A4 (Ânodo 4) | Pino 5 (via 220Ω) |
| A5 (Ânodo 5) | Pino 6 (via 220Ω) |
| A6 (Ânodo 6) | Pino 7 (via 220Ω) |
| A7 (Ânodo 7) | Pino 8 (via 220Ω) |
| A8 (Ânodo 8) | Pino 9 (via 220Ω) |
| A9 (Ânodo 9) | Pino 10 (via 220Ω) |
| A10 (Ânodo 10) | Pino 11 (via 220Ω) |
| K1–K10 (Cátodos) | GND |
Como Programar o Arduino Nano ESP32 para o Gráfico de Barras LED de 10 Segmentos
Nenhuma biblioteca é necessária para controlar o gráfico de barras LED de 10 segmentos — o Arduino Nano ESP32 o controla diretamente usando pinos de saída digital.
- Defina o array de pinos para as 10 conexões de ânodo: const int ledPins[10] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
- Configure cada pino como saída: pinMode(ledPins[i], OUTPUT);
- Acenda um segmento: digitalWrite(ledPins[i], HIGH);
- Apague um segmento: digitalWrite(ledPins[i], LOW);
Código Arduino Nano ESP32 - Gráfico de Barras LED de 10 Segmentos
/*
* Este código de Arduino Nano ESP32 foi desenvolvido por pt.newbiely.com
* Este código de Arduino Nano ESP32 é disponibilizado ao público sem nenhuma restrição.
* Para tutoriais completos e diagramas de ligação, visite:
* https://pt.newbiely.com/tutorials/arduino-nano-esp32/arduino-nano-esp32-10-segment-led-bar-graph
*/
const int NUM_SEGMENTS = 10;
const int ledPins[NUM_SEGMENTS] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
void printBar(int litCount) {
Serial.print("Bar: [");
for (int i = 0; i < NUM_SEGMENTS; i++) {
Serial.print(i < litCount ? "*" : " ");
}
Serial.println("]");
}
void setup() {
Serial.begin(9600);
for (int i = 0; i < NUM_SEGMENTS; i++) {
pinMode(ledPins[i], OUTPUT);
digitalWrite(ledPins[i], LOW);
}
}
void loop() {
for (int i = 0; i < NUM_SEGMENTS; i++) {
digitalWrite(ledPins[i], HIGH);
printBar(i + 1);
delay(100);
}
delay(500);
for (int i = NUM_SEGMENTS - 1; i >= 0; i--) {
digitalWrite(ledPins[i], LOW);
printBar(i);
delay(100);
}
delay(500);
}
Passos Rápidos
Siga estas instruções passo a passo:
- LINK_GETTING_STARTED_ARDUINO_NANO_ESP32
- Ligue os componentes de acordo com o diagrama fornecido.
- Abra o Arduino IDE no seu computador.
- Selecione a placa Arduino Nano ESP32 apropriada e a porta COM.
- Copie o código acima e cole no Arduino IDE.
- Clique no botão Upload para fazer o upload do código para o Arduino Nano ESP32.
- Abra o Serial Monitor.
- Observe a barra de LED enchendo e esvaziando repetidamente, e confira a saída no Serial Monitor.
Saída do Serial Monitor
8
Serial.println("Hello World!");
Message (Enter to send message to 'Arduino Nano ESP32' on 'COM15')
New Line
9600 baud
Bar: [* ]
Bar: [** ]
Bar: [*** ]
Bar: [**** ]
Bar: [***** ]
Bar: [****** ]
Bar: [******* ]
Bar: [******** ]
Bar: [********* ]
Bar: [**********]
Bar: [********* ]
Bar: [******** ]
Bar: [******* ]
Bar: [****** ]
Bar: [***** ]
Bar: [**** ]
Bar: [*** ]
Bar: [** ]
Bar: [* ]
Bar: [ ]