#include <LiquidCrystal.h>
#include <SmoothProgress.h>
#include <BarStyle1.h>
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
LCD dispA(lcd, barStyle1);
SmoothProgressBar spb(dispA, 10, 5, 0);
void setup()
{
lcd.begin(20, 2);
lcd.print("Smooth progress bar");
dispA.begin();
delay(2000);
}
void loop()
{
lcd.clear();
for (int i = 0; i <= 100; i++)
{
lcd.setCursor(0, 0);
lcd.print(i);
lcd.print('%');
spb.showProgressPct(i);
delay(25);
}
delay(1000);
lcd.clear();
for (int i = spb.size(); i >=0; i--)
{
lcd.setCursor(0, 0);
lcd.print(i);
lcd.print(' ');
spb.showProgress(i);
delay(100);
}
delay(1000);
lcd.clear();
if (spb.row() == 0)
{
spb.setPosition(spb.col() - 5, 1);
spb.setLength(spb.getLength() + 5);
}
else
{
spb.setPosition(spb.col() + 5, 0);
spb.setLength(spb.getLength() - 5);
}
}