Arduino Code ohne Delay wiederholen (millies?)?


12.10.2020, 21:11

Wie gesagt, ich habe von der Materie nur wenig Ahnung, hier ist nochmal der Code und ein Foto vom PCB wenn euch das hilft (rote Kreise einfach nicht beachten).

https://pastebin.com/ih6ahDMa -> Der Code


13.10.2020, 13:23

Mittlerweile bin ich an dem Punkt das ich denke ich ein sinnvolles Stück Code mit "millies" zusammengeschrieben habe, jetzt stehe ich nur noch vor der Herausforderung das der Sekundenzeiger nur aller 1 Sekunde aktualisiert wird und man deshalb die Animation nicht sieht.

1 Antwort

Hättest mal lieber den ganzen Code posten sollen. Hier sieht man nicht, wie der Timer konfiguriert ist und wie der aufgerufen wird.

Das Prinzip der Animation ist, das du deinen Timer kürzer einstellst (die verwende bestimmt nicht einfach delay, oder?), also z.B. auf 1/100 s, du den "Originalcode" dafür aber nur bei jedem 100. Aufruf startest. Dazwischen hast du Zeit für die Animation, mit jedem Aufruf ein Animationsschritt, so dass die 10 Schritte insgesamt 1/10 s dauern. Dafür brauchst du eine Statusvariable, die anzeigt, ob gerade eine Animation läuft und welcher Animationsschritt gerade aktiv ist. Dazu noch, welche Stelle gerade animiert wird.

Woher ich das weiß:Berufserfahrung – Softwareentwickler & Admin
Fintrox 
Fragesteller
 11.10.2020, 12:29

Nein, delay habe ich bereits probiert, allerdings wird der Chip nebenbei verwendet und es wird ein Fehler ausgegeben. Die Zeit wird soweit ich das verstanden habe, von einem K155id1 (russischer Schaltkreis) gegeben, ich kann die Zeitspanne also nicht so leicht einkürzen (vermutlich). Den Code werde ich nachher nochmal hochladen.

0
iQa1x  12.10.2020, 09:23
@Fintrox

K155id1 ist nen BCD-zu Dezimal Decoder, da sollte es für jede Stelle einen geben. Wahrscheinlich hängen immer 2 an einem PCF8547 o.ä..

0
Fintrox 
Fragesteller
 12.10.2020, 21:12
@iQa1x

Inwiefern für jede Stelle? Ich habe einen für alle 6 Röhren

0
iQa1x  13.10.2020, 08:17
@Fintrox

Dann multiplexen die irgendwie... kann auch sein.

0
iQa1x  13.10.2020, 08:34
@Fintrox

Ich komme jetzt nicht dazu, den Code anzuschauen, schreibe später nochmal..

1
iQa1x  13.10.2020, 21:18
@iQa1x

https://pastebin.com/62F1SgJw Versuche mal dein Glück, das ist natürlich vollkommen ungetestet. das ANI_REPEAT*0,3s sollte die Anzeigedauer jedes Animationsschrittes sein.

0
iQa1x  13.10.2020, 21:24
@Fintrox

siehe unten, habe versehentlich mir selbst geantwortet :(

0