zero a esquerda do display lcd

Bom dia a todos!!!!

Sou iniciante em arduino e estou tentando criar um contador de 9 digitos com a a caracteristica de iniciar mas mantendo os digitos que não estiverem sido incrementados em 0. Precisaria de "salvar " a contagem na memoria eeprom do arduino. Desta forma mesmo desligando não perderia a contagem...
Procurei na internet algum exemplo mas não encontei. Seria mesmo apenas para aprender a fazer. Fica mais elegante no meu ponto de vista.

Ficaria assim : 000000001

Esto incrementado o contador via push-boton externo

Se alguem pudesse me auxiliar com um exemplo ficaria agradecido!!!

Estou trabalhando com o arduino uno e escrevendo em um display 20/4 com comunicaçao i2c.

Obrigado a todos!!!

o codigo;

#include <LiquidCrystal_I2C.h>
#include <EEPROM.h>
LiquidCrystal_I2C lcd(0x3F,20,4);
const int pinBotao = 3;
const int endCont = 10;

int contador =0;

void setup() {
lcd.init();
lcd.backlight();
pinMode (pinBotao, INPUT_PULLUP);
Serial.begin(9600);
leContador();
mostraContador();
}

void loop() {
delay(100);
if (digitalRead(pinBotao) == LOW) {
if (contador < 999) {
contador++;
}
gravaContador();
mostraContador();
while (digitalRead(pinBotao) == LOW) {
delay(100);
}
}
}

// Mostra valor atual do contador
void mostraContador() {
Serial.print("Contador:");
Serial.println(contador);
lcd.setCursor(0,2);
lcd.print("Contador:");
lcd.println(contador);
}

// Le o contador da EEProm
void leContador() {
uint16_t val1, val2;

val1 = EEPROM.read(endCont) + (EEPROM.read(endCont+1) << 8); // 8
val2 = EEPROM.read(endCont+2) + (EEPROM.read(endCont+3) << 8); // 8
if (val1 != ~val2) {
Serial.println("Nao encontrou valor valido, zerando contador");
contador = 0;
} else {
contador = val1;
}
}

// Grava o contador na EEProm
void gravaContador() {
uint16_t val1, val2;

val1 = (uint16_t) contador;
val2 = ~val1;
EEPROM.update(endCont, val1 & 0xFF);
EEPROM.update(endCont+1, val1 >> 8); // 8
EEPROM.update(endCont+2, val2 & 0xFF);
EEPROM.update(endCont+3, val2 >> 8); // 8
}

Qual é a dúvida ao certo?

O titulo pergunta uma coisa e o texto pergunta outra...

Que é que já fizeste?

Para mostrar os zeros no display use:
display.showNumberDec("variável sua", true);
Para salvar na eeprom use os exemplos da biblioteca:

Re: zero a esquerda do display lcd
#2
Feb 21, 2020, 01:21 pm
Para mostrar os zeros no display use:
display.showNumberDec("variável sua", true);
Para salvar na eeprom use os exemplos da biblioteca:

Bom dia!!!

Nao estou conseguindo localizar nenhum exemplo desta biblioteca....