// ---------------------------------------------------------------------------
// (| " Progress_Bar_ssd1306_128x64_i2c.ino "|)
// (| " Este es un ejemplo para OLED monocromáticas de 0.96" basadas en "|)
// (| " el controlador SSD1306 y resolución de 128x64 píxeles, que usan "|)
// (| " I2C para comunicarse. "|)
// (| " "|)
// (| " Las librerias lcdgfx.zip debe estar instalada en el IDE de arduino "|)
// (| " para que este sketch funcione. "|)
// (| " "|)
// (| " El pin SDA de la OLED monocromática I2C 128x64 va al pin A4 del "|)
// (| " Arduino UNO Rev3 / NANO. "|)
// (| " El pin SCL de la OLED monocromática I2C 128x64 va al pin A5 del "|)
// (| " Arduino UNO Rev3 / NANO. "|)
// (| " "|)
// (| " Este código de ejemplo es de dominio público. "|)
// (| " "|)
// (| " Visita https://jorgechac.blogspot.com/ "|)
// (| " "|)
// (| " Venta de accesorios Arduino/Raspberry Pi Pico/ESP32 "|)
// (| " Whatsapp y Ventas NEQUI +573177295861 "|)
// (| " Bucaramanga - Colombia "|)
// (| " Simulación https://wokwi.com/projects/339398646290186834 "|)
// (| " Descarga gratis este sketch en: "|)
// (| " https://create.arduino.cc/editor/jorgechac/6a38057c-7814-4cdd-91be-bfc792aa9492/preview "|)
// ------------------------------------------------------------------------------------------------
#include <lcdgfx.h>
DisplaySSD1306_128x64_I2C display(-1); // or (-1,{busId, addr, scl, sda, frequency})
//DisplaySSD1306_128x64_SPI display(-1,{-1, 0, 1, 0, -1, -1); // Use this line for nano pi (RST not used, 0=CE, gpio1=D/C)
//DisplaySSD1306_128x64_SPI display(3,{-1, 4, 5, 0,-1,-1}); // Use this line for Atmega328p (3=RST, 4=CE, 5=D/C)
//DisplaySSD1306_128x64_SPI display(24,{-1, 0, 23, 0,-1,-1}); // Use this line for Raspberry (gpio24=RST, 0=CE, gpio23=D/C)
//DisplaySSD1306_128x64_SPI display(22,{-1, 5, 21, 0,-1,-1}); // Use this line for ESP32 (VSPI) (gpio22=RST, gpio5=CE for VSPI, gpio21=D/C)
void setup()
{
display.begin();
display.setFixedFont(ssd1306xled_font6x8);
display.clear();
display.drawWindow(0,0,0,0,"Downloading",true);
}
int progress = 0;
void loop()
{
display.drawProgressBar( progress );
progress++;
if ( progress > 100 )
{
progress = 0;
lcd_delay(2000);
}
else
{
lcd_delay(50);
}
}