Millis() die Zeit stimmt nicht,hab ich nen Denkfehler?

ich hoffe ich bekomme das so schön hin wie bei den Post die ich gesehen hab, sorry jetzt schon mal wenn nicht.
hier mein Code:

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display

int counter=0;
unsigned long a,b,c = 0;

void setup()
{
  lcd.init();                      // initialize the lcd 
  lcd.backlight();
  lcd.setCursor(0,1);
  lcd.print("Time:");
   
}

void loop()
{
  a = millis();       // a = aktuelleMillis
  if (a-b >= 1000){   // wenn aktuelleMillis minus alteMillis >= 1000  (1sekunde) tu das
     c=a-b;  // c ist das Delta, einfach umzu schauen wie viele Millis tatsächlich vergangen sind
     b=a;    //alteMillis gleich neueMillis
     lcd.setCursor(5,1);
     lcd.print(c);   //schreib das Delta hin ist zu 99.99% 1000  nur einmal warens 1001
     lcd.setCursor(11,1);
     lcd.print(counter);  //schreib den zähler hin , sollte im Sekundentakt 1 größer werden
     counter++; //Zähler+1
     if (counter >= 9999) counter=0; // nur damit der Zähler nicht 5 stelig wird
 

  // hier folgt die Überwachung
  };

Ich möchte etwas Überwachen und auf einem LCD einen Zähler alle Sekunde erhöhen.
Funktioniert auch soweit nur liegt das Intervall irgendwo bei 3-4 Sekunden. Hab ich irgendwo
nen Denkfehler?
Danke schonmal.

Welchen µC hast du?

Ist ein Arduino uno Clone von
az-delivery Typ3
LGT8F328P

Das ist kein echter ATMega 328. Da wird was in der Boarddefinition noch falsch sein. Der läuft ja auch mit 32MHz statt mit 16.

Schau Dir mal das hier an. Du brauchst einen speziellen Core.

Gruß Tommy

Nein, sondern ein Board was ganz selten ist.

Danke, ich hab mir sowas schon fast gedacht...
funktioniert genauso wie.... bis auf die Kleinigkeiten.
Lösung ? in der Kiste nach nem echten atmegs328 suchen und nochmal testen ?

Siehe #5 der Link, da ist es erklärt.

leider weiß ich nicht was ich davon wohin kopieren sollte.
im Boadmanager der IDE ist er nicht zu finden.
aus den Docs werd ich nicht schlau wie ich das bei ner
Windofkiste installiert werden soll.
ein Tipp?

Lies Dir die Anleitung auf der Startseite des Links einfach nochmal in Ruhe durch. Dort sind alle Schritte erklärt.

Gruß Tommy

Anleitung lesen und befolgen.

Danke Euch, wer lesen kann ist klar im Vorteil - hab's gefunden

zuviel Monitor ich mach mal Pause

Ist sicher ein Versuch wert.

Der LGT8F328P ist ein dem ATmega328 ähnlicher aber nicht gleicher Controller. Er kann eigentlich mehr.

Der Sketch muß immer für den vorhandenen Controller compiliert werden.

Grüße Uwe