Como desenhar círculos no OLED usando o PES Top 10 com Arduino IDE

Como desenhar círculos no OLED usando o PES Top 10 com Arduino IDE

Esp32 é um pequeno quadro pequeno baseado em microcontrolador de microcontrolador. O ESP32 pode processar instruções e gerar saídas de acordo. O ESP32 ganhou uma enorme atenção nos últimos anos, em comparação com o Arduino, isso se deve ao seu recurso de IoT de pleno direito, incluindo WiFi e Bluetooth Support. Como Arduino, também podemos interface os diferentes sensores com o ESP32. Aqui, este tutorial cobrirá a interface da tela OLED com o ESP32 e desenhando um círculo usando o código Arduino.

Esta lição inclui os seguintes tópicos:

1: Introdução à tela OLED ESP32

2: Módulo de exibição OLED de fiação para ESP32

3: Instalando as bibliotecas necessárias

4: desenhando um círculo na tela OLED usando Arduino IDE

4.1: código

4.2: saída

5: desenhando um círculo preenchido na tela OLED usando Arduino IDE

5.1: código

5.2: saída

6: Combinando os dois círculos na tela OLED usando Arduino IDE

6.1: código

6.2: saída

1: Introdução à tela OLED ESP32

Tela OLED também conhecida como Organic euOILHO EMitting DIode. As telas OLED são as melhores alternativas para as telas LCD. LEDs dentro da tela OLED iluminam os pixels que nos exibem diferentes imagens e texto. Enquanto do outro lado, a tela LCD usa uma luz de fundo para iluminar seus pixels. Dentro da tela OLED, existem centenas de LEDs que brilham e exibem as imagens e o texto. O brilho desses pixels pode ser controlado por pixel por pixel.

Agora vamos interface o ESP32 com uma tela OLED.

2: Módulo de exibição OLED de fiação para ESP32

As telas OLED funcionam principalmente em dois protocolos de comunicação. Estes são i2c e spi. Entre esses dois SPI (interface periférica serial) é mais rápida em comparação com I2C, mas na maioria das vezes a tela OLED I2C é preferida devido a menos número de fios.

Usando I2C OLED Two Pins SDA e SCL são suficientes para exibir imagens e texto. A imagem dada mostra Esp32 com 0.Tela OLED de 96 polegadas (128 × 64 pixels).

Esp32 pinos A conexão com OLED é a seguinte:

Como interfiguramos o ESP32 com uma tela OLED, agora instalaremos as bibliotecas necessárias no Arduino IDE para que possamos avançar com formas exibidas na tela OLED.

3: Instalando as bibliotecas necessárias

Existem diferentes bibliotecas disponíveis dentro do Arduino IDE para a tela SSD1306. Usando essas bibliotecas, podemos exibir texto e imagens com a ajuda do Arduino IDE.

Hoje usaremos duas bibliotecas Adafruit: SSD1306 e GFX biblioteca.

Abra o Arduino IDE e procure a biblioteca SSD1306. Instale a biblioteca OLED SSD1306 por Adafruit.

Outra maneira de instalar vai: Sketch> Incluir biblioteca> Gerenciar bibliotecas:

Agora instale o GFX Biblioteca por Adafruit:

Agora instalamos as duas bibliotecas.Então, agora podemos programar facilmente o ESP32 com uma tela OLED.

4: desenhando um círculo na tela OLED usando Arduino IDE

Para desenhar um círculo em uma tela OLED, usaremos o drawcircle (coordenada x do centro, coordenada y do centro, raio) função.

Esta função leva 3 argumentos:

  • Posição do centro em relação à coordenada x
  • Posição do centro em relação à coordenada y
  • Raio de círculo em pixels

Depois de definir todos esses três parâmetros, envie o código para a placa ESP32.

1: código

Abra o Arduino IDE, Connect ESP32 e Código de upload:

O código iniciado incluindo os arquivos de biblioteca SSD1306 necessários. Depois disso, definimos o endereço I2C e os pinos i2c para comunicação.

Lembre -se de verificar o endereço I2C antes de definir. Para verificar o endereço I2C de qualquer dispositivo, envie o código fornecido no tutorial como digitalizar o endereço I2C no ESP32 usando o Arduino IDE.

Se você estiver usando mais de um dispositivo I2C com o mesmo endereço, você deve alterar o endereço de qualquer um deles primeiro.

Em seguida no código, inicializamos a tela OLED e definimos a função do círculo de desenho. Aqui, definimos o pixel central do círculo com coordenada x de 70 e coordenadas y de 30. Círculo com raio de 25 será desenhado nesta posição. Aqui o raio dado está no número de pixels.

#include "SSD1306.h "
SSD1306 Display (0x3C, 21, 22);
Void Setup ()
mostrar.iniciar();
mostrar.drawcircle (70, 30, 25);
mostrar.mostrar();

void loop ()

2: saída

Após o upload do código no ESP32 abaixo, a saída aparecerá na tela OLED.

5: desenhando um círculo preenchido na tela OLED usando Arduino IDE

Agora vamos desenhar um círculo cheio. O código é praticamente semelhante ao anterior. A única diferença aqui é que usamos uma nova função. mostrar.FillCircle (70, 30, 25); Esta função também leva três argumentos como a anterior. Os dois primeiros argumentos definirão a posição do círculo e a última representará o diâmetro do círculo.

1: código

Abra o Arduino IDE e envie o código fornecido.

O código iniciado incluindo os arquivos de biblioteca SSD1306 necessários. Depois disso, definimos o endereço I2C e os pinos i2c para comunicação.

Em seguida no código, inicializamos a tela OLED e definimos a função de desenho como um círculo preenchido. Esta função desenhará um círculo preenchido com parâmetros definidos. Aqui, definimos o pixel central do círculo com coordenada x de 70 e coordenadas y de 30. Círculo com raio de 25 será desenhado nesta posição.

#include "SSD1306.h "
SSD1306 Display (0x3C, 21, 22);
Void Setup ()
mostrar.iniciar();
mostrar.FillCircle (70, 30, 25);
mostrar.mostrar();

void loop ()

2: saída

Depois de fazer upload de código para ESP32 abaixo do círculo preenchido, pode ser visto:

6: Combinando os dois círculos na tela OLED usando Arduino IDE

Agora, para combinar os dois círculos, definiremos as duas funções no mesmo programa. Lembre -se de alterar o raio e a dimensão do círculo, caso contrário, ambos os círculos se sobreporão.

1: código

Abra o Arduino IDE e faça o upload de código para ESP32.

Este programa desenhará dois círculos com um raio de 25. Um círculo não será preenchido e o segundo será preenchido:

#include "SSD1306.h "
SSD1306 Display (0x3C, 21, 22);
Void Setup ()
mostrar.iniciar();
mostrar.drawcircle (40, 30, 25);
mostrar.FillCircle (100, 30, 25);
mostrar.mostrar();

void loop ()

2: saída

Após o upload do código, podemos ver a saída abaixo na tela OLED:

Conclusão

Os displays OLED são uma ótima maneira de dar uma representação gráfica aos nossos dados. Aqui, este artigo cobre algumas etapas simples necessárias para desenhar um círculo em uma tela OLED. Usando o código fornecido, qualquer tela OLED pode ser usada para exibir imagens e texto. Para mais detalhes, leia o artigo.