Contador digital com sete segmentos e um botão usando o Esptop 10 e o Arduino IDE

Contador digital com sete segmentos e um botão usando o Esptop 10 e o Arduino IDE
O ESP32 é um microcontrolador compacto de conservação de energia que possui vários pinos de GPIO, permitindo interagir com muitos sensores. O ESP32 pode interagir com uma ampla variedade de dispositivos eletrônicos, incluindo sete displays de segmento. Ao usar o microcontrolador ESP32, é possível controlar facilmente o estado de cada segmento em uma tela de sete segmentos, permitindo a criação de displays numéricos personalizados e outros projetos interativos.

Este artigo abrange o seguinte conteúdo:

  • 1: Introdução a sete segmentos
  • 2: sete pinagem de segmento
  • 3: Tipos de sete segmentos
  • 4: Como verificar um segmento de sete é um ânodo comum ou cátodo comum
  • 5: interface sete segmento com esp32 e botão
  • 5.1: esquemático
  • 5.2: hardware
  • 5.3: Instalando a biblioteca necessária
  • 6: projetar um segmento de sete 0 a 9 contador usando esp32 e botão
  • 6.1: código
  • 6.2: saída

1: Introdução a sete segmentos

Um sete segmentos pode exibir informações numéricas usando um programa de microcontrolador. Consiste em sete segmentos individuais, cada um dos quais pode ser iluminado ou desligado de forma independente para criar vários caracteres numéricos.

Uma tela de sete segmentos funciona iluminando diferentes combinações de seus sete segmentos para exibir caracteres numéricos. Cada segmento é controlado por um pino individual, que pode ser ligado ou desligado para criar o caráter numérico desejado. Quando os segmentos são iluminados na combinação correta, o caráter numérico é visível para o espectador.

Ao usar um microcontrolador ESP32 para controlar uma tela de sete segmentos, o ESP32 envia sinais para os pinos específicos na tela de sete segmentos, dizendo quais segmentos ligarem ou desligam para exibir um caractere numérico específico.

2: sete pinagem de segmento

A tela de sete segmentos normalmente tem 10 pinos, com um pino para cada segmento, um para os pinos decimais e dois comuns. Aqui está uma tabela da pinagem típica:

Número do PIN Nome do pino Descrição
1 b Pino de LED superior direito
2 a Pino de LED mais alto
3 VCC/GND GND/VCC depende da configuração
4 f Pino de LED superior esquerdo
5 g Pino do LED do meio
6 dp Pino de LED do ponto
7 c Pino LED inferior direito
8 VCC/GND GND/VCC depende da configuração
9 d Pino de LED inferior
10 e Pino de LED inferior esquerdo

Cada segmento é rotulado como A, B, C, D, E, F e g. O pino comum é normalmente usado para controlar todos os segmentos de uma só vez. O pino comum é baixo ativo ou ativo, dependendo da tela.

3: sete tipos de segmento

Sete segmentos podem ser categorizados em 2 tipos:

  • Cátodo comum
  • Ânodo comum.

1: em um Cátodo comum Todos os terminais de segmento de LED negativos estão conectados.

2: em um ânodo comum Sete segmentos Todos os terminais de segmento de LED positivos estão conectados.

4: Como verificar um segmento de sete é um ânodo comum ou cátodo comum

Para verificar o tipo de sete segmentos, apenas precisamos de uma ferramenta simples - Multímetro. Siga as etapas para verificar o tipo de sete exibição de segmentos:

  1. Segure a exibição de sete sete em mãos e identifique Pino 1 Usando o pinout explicado acima.
  2. Pegue um multímetro. Suponha uma sonda vermelha para positivo (+) e sonda preta de um multímetro para negativo (-).
  3. Defina o Teste de Multímetro para Continuidade.
  4. Depois disso, o funcionamento do medidor pode ser verificado tocando sondas positivas e negativas. Um som de bipe será produzido se o medidor estiver funcionando corretamente. Caso contrário, substitua as baterias no seu multímetro por uma nova.
  5. Coloque a sonda preta no pino 3 ou 8 do multímetro. Ambos esses pinos são comuns e conectados internamente. Selecione qualquer pino.
  6. Agora coloque a sonda vermelha ou positiva do multímetro em outros pinos de sete segmentos, como 1 ou 5.
  7. Depois de tocar a sonda vermelha se algum segmento brilhar, o segmento sete é um Cátodo comum.
  8. Trocar os leads multímetro se nenhum segmento brilhar.
  9. Agora conecte o chumbo vermelho ao pino 3 ou 8.
  10. Depois disso, colocou o chumbo preto ou negativo nos pinos restantes da tela. Agora, se algum dos segmentos da tela brilhar, os sete segmentos serão ânodo comum. Como no ânodo, todos os pinos positivos de todos os segmentos são comuns e restantes são unidos com suprimento negativo.
  11. Repita as etapas para verificar todos os outros segmentos de exibição um por um.
  12. Se algum dos segmentos não brilhar, estará com defeito.

Aqui está uma imagem de referência para um teste de sete segmentos usando um Multímetro. Podemos ver a sonda vermelha está no pino 8 e o preto está no pino de segmento, então estamos usando Ânodo comum Sete segmentos:

5: interface sete segmento com esp32 e botão

Para interface uma tela de sete segmentos com um ESP32, você precisará dos seguintes materiais:

  • Um microcontrolador ESP32
  • Uma tela de sete segmentos
  • Botão de apertar
  • Uma placa de pão
  • Fios de jumper

Esp32 interfaces com sete displays de segmento em várias etapas simples.

1: Primeiro, conecte a tela de sete sete à placa de ensaio.

2: Em seguida, conecte o ESP32 com uma tela de sete segmentos usando fios. O ESP32 será usado para enviar sinais para a tela de sete segmentos, dizendo quais segmentos ligar ou desativar.

3: Agora escreva um código Arduino para ESP32 no IDE. O programa precisará enviar sinais para os pinos específicos na tela de sete segmentos, dizendo quais segmentos ligar ou desligar para exibir um caractere numérico específico.

4: O Arduino IDE fornece uma biblioteca usando que podemos controlar facilmente o estado de cada segmento com comandos simples.

5: Depois que o programa é escrito e enviado para o ESP32, a tela de sete segmentos deve começar a exibir os caracteres numéricos, conforme o programa.

5.1: esquemático

Para projetar um contador de botões usando sete segmentos primeiro, precisamos projetar o circuito abaixo e conectar sete segmentos com botão e esp32. Usando o esquema de referência abaixo conecta sua placa ESP32 com uma tela de sete segmentos.

A seguir, a tabela de pinagem para a conexão ESP32 com uma única exibição de sete segmentos. Um botão também está conectado em D23:

Número do PIN Nome do pino PIN ESP32
1 b D2
2 a D15
3 Com GND/VCC depende da configuração - Catodo/ânodo comum
4 f D19
5 g D21
6 dp Pino de LED do ponto
7 c D4
8 Com GND/VCC depende da configuração - Catodo/ânodo comum
9 d D5
10 e D18

5.2: hardware

Abaixo, a imagem mostra o hardware do ESP32 conectar -se com o botão e sete segmentos:

5.3: Instalando a biblioteca necessária

Depois de conectar sete segmentos, precisamos instalar uma biblioteca no Arduino IDE. Usando esta biblioteca, podemos programar facilmente o ESP32 com sete segmentos.

Vá para o gerente de biblioteca pesquise Sevseg biblioteca e instale -a no Arduino IDE.

6: Projetando um segmento de sete 0 a 9 contador usando Esp32 e Button

Para projetar um balcão em tempo real de 0 a 9 usando o ESP32, é necessário um botão. PushButton enviará um sinal no pino digital do ESP32, que exibirá um dígito em sete segmentos. Toda vez que o botão é pressionado, um dígito é incrementado em sete segmentos.

6.1: código

Abra o IDE e conecte Esp32. Depois disso, faça o upload do código de segmento de sete dado para ESP32:

#include "Sevseg.h " /*inclua sete biblioteca de segmentos* /
Sevseg Sevseg; /*Variável de sete segmentos*/
int state1; /*Variável para armazenar o estado do botão*/
int conting = 0; /*Variável que armazenará o valor do contador*/
#Define Button1 23 / *esp32 pino para pushbutton * /
Void Setup ()
pinmode (botão1, input_pullup); /*Atribua o botão como entrada*/
byte Sevensegments = 1; /*Número de sete segmentos que estamos usando*/
byte Commonpins [] = ; /*Defina pinos comuns*/
byte ledsegmentpins [] = 15, 2, 4, 5, 18, 19, 21; /*Esp32 pinos digitais definidos para sete segmentos Pin A a G*/
BOOL ResistorSonsegments = true;
Sevseg.BEGIN (Common_anode, Sevensegments, Commonpins, LedsegmentPins, ResistorSonsegments);/ *Configuração do sete segmentos */
Sevseg.Setbrightness (80); /*Brilho de sete segmentos*/

Void Loop ()
state1 = digitalRead (Button1); /*Leia o estado do botão*/
if (state1 == baixo) /*estado baixo quando o botão de flexão é pressionado* /
contagem ++; /*Aumente o valor da exibição em 1*/
Sevseg.setNumber (contagem); /*Exiba o valor da contagem*/
Sevseg.refreshDisplay (); / *Atualizar 7-segmento */
Atraso (200);

if (count == 10)

contagem = 0;

Sevseg.setNumber (contagem);/*exibir o valor da contagem*/
Sevseg.refreshDisplay ();/* Atualizar 7-segmento*/

O código começou ligando para o Sevseg biblioteca. Aqui criamos duas variáveis estado1 e contar. Ambas as variáveis ​​armazenarão o estado atual do botão e sete valor de segmento, respectivamente.

Depois disso, definimos o número de segmentos, estamos usando com ESP32. Os pinos de segmento de LED são definidos para placas ESP32. Altere o pino de acordo com o tipo de ESP32 que você está usando.

Qualquer um dos pinos digitais esp32 pode ser usado.

Em seguida, enquanto estamos usando o Ânodo comum tipo, então o definimos dentro do código.

No caso de Cátodo comum Substitua -o pelo código abaixo.

Finalmente, um se é usado condição que verifique o estado atual do botão e toda vez que pressionamos o botão, um valor é incrementado por 1. Isso continuará até o contar O valor variável se torna 10. Depois disso, será novamente inicializado a partir de 0.

6.2: saída

A saída mostra dígitos impressos de 0 a 9.

Conclusão

Em conclusão, usando o ESP32 com botão e código Arduino, podemos controlar facilmente o estado de cada segmento em uma tela de sete segmentos, permitindo a criação de um contador de tempo real personalizado para fazer projetos interativos usando botão de pressão.