Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Zeitsprünge Kategorie: IDE (von Joerg - 29.03.2012 11:29)
Als Antwort auf Re: Zeitsprünge von PeterS - 29.03.2012 9:05

> > > > Hallo Peter,
> > > >
> > > > mir sind, seitdem ich die neue Beta (2.20.0.16) benutze, Zeitsprünge mit der internen Uhr aufgefallen.
> > > >
> > > > Ich habe ein Programm, welches Messdaten erfasst und diese zusammen mit der
> > > > Uhrzeit auf der Seriellen Schnittstelle ausgibt. Hin und wieder kommt es vor,
> > > > das die Uhrzeit von z.B. 18:38:49 auf 00:00:00 wechselt, ohne das ich die Uhr mit
> > > > Clock_SetTime() gestellt habe.
> > > >
> > > > Das interessant dabei ist, das auch das Datum dabei auf den nächsten Tag springt.
> > > >
> > > > Gibt es hierfür ein Erklärung (z.B interner �berlauf)?
> > > >
> > > > Hier sind zwei protokollierte Zeitsprünge:
> > > >
> > > >
> > > > 1)
> > > > 18:38:48 18:03:12  392 8 6.250000 0 0 0 0
> > > > 18:38:49 18:03:12  392 8 6.250000 0 0 0 0
> > > > 00:00:00 19:03:12  384 6 6.187500 0 0 0 0
> > > > 00:00:01 19:03:12  384 6 6.187500 0 0 0 0
> > > >
> > > >
> > > > 2)
> > > > 22:25:08 18:03:12  6 2 5.562500 0 0 1 0
> > > > 22:25:09 18:03:12  6 2 5.562500 0 0 1 0
> > > > 00:00:00 19:03:12  6 2 5.562500 0 0 1 0
> > > > 00:00:01 19:03:12  6 2 5.562500 0 0 1 0
> > > >
> > > > Grü�e Joerg
> > >
> > > Hallo Joerg,
> > >
> > > werde ich heute mal testen.
> > >
> > > Gruss Peter
> >
> > Hallo Peter,
> >
> > ich habe nun neue Erkenntnisse bezüglich der Zeitsprünge.
> >
> > Zuerst habe ich versucht, die Zeitsprünge zu detektieren und zu protokollieren.
> > Dabei habe ich festgestellt, dass die Häufigkeit und Art der Fehler mit der Grö�e des Codes zunimmt.
> > Zum Schluss bekam ich dann auch mal mit Clock_GetVal(CLOCK_SEC) Sekundewerte von 72 oder 110!
> >
> > Völlig frustriert bin ich dann auf die Version 2.13.015 zurück. Hierbei musste ich dann aber feststellen,
> > dass mit dieser Version noch alles viel schlimmer war. Selbst die globalen Variablen,
> > die ich zum protokollieren benutze, haben sich verändert.
> >
> > Ich habe dann über das Problem von Jo mit zu gro�em Code nachgedacht und folgendes durchgeführt:
> >
> > Unter Project Optionen habe ich â??Debug Code erzeugenâ?? und â??Array Index Grenzen überprüfenâ??
> > abgewählt. Alles andere ist angewählt. #
> > Der generierte Bytecode ging dann von ca. 26100 auf 23800 zurück.
> >
> > Mit dieser Einstellung konnte ich mit der Version 2.13.015 und 2.20.016 keine Zeitsprünge mehr feststellen!
> > Das ganze läuft jetzt mit der 2.20.016 seit 14Stunden ohne Fehler.
> >
> > Ich vermute deshalb, dass es immer noch Fehler gibt bei zu groÃ?em Code.
> >
> >      
> > Mit der Version 2.20.016 sind mir noch einige Dinge Aufgefallen:
> >
> > 1) Beim Laden erscheint manchmal im Ladebalken â??Wiederholeâ??.
> > 2) Der Irq_GetCount(INT_TIM2COMP) hat früher beim ersten Aufruf immer einen zufälligen Wert.
> >     Dieser ist jetzt aber 1.
> > 3) Die Fenster im Editor lassen sich nur noch in voller Grö�e darstellen.
> >
> >
> >
> > Grü�e Joerg
>
> Hallo Joerg,
>
> danke für die Infos. Ich hatte selber mal getestet, konnte aber kein Problem feststellen. Wenn
> das mit zu gro�em Code zu tun hat, wäre es gut, wenn Du mir vielleicht wieder ein Beispielprojekt
> schicken könntest.
>
> Bleibt das "Wiederhole" denn stehen, oder blitzt das nur kurz auf? Ich habe vieles am Handling
> des USB Virtual Comport in der Beta geändert. Man kann jetzt viel gefahrloser komplett den
> Strom der C-Control Unit ausschalten, was früher oft zu einem "hängen" des virtuellen Comport
> geführt hat.
>
> Gruss Petera

Hallo Peter,

das â??Wiederholeâ?? blitzt immer mal wieder kurz auf (ca.4 mal pro Ladevorgang).
Ich lade nur mit der seriellen Schnittstelle.

Ich hatte dir bisher nie ein Beispielprojekt geschickt.
Welche Erwartungen hast du denn daran?
Das man es kompilieren und laden kann oder soll es auch laufen?

Das Programm ist äu�erst komplex wie man an der Grö�e erkennen kann.
Ich habe ein Projectboard PRO128 mit sehr viel externen I2C Erweiterungen und Sensoren.
Wenn die nicht vorhanden sind, gibt es sehr viele Fehlerausgaben und es tut nicht mehr das,
was es soll. Ich müsste es dann noch modifizieren. Ob man den Fehler dann noch erkennen kann,
ist fraglich. Auch schalte ich meinen Detektor erst dann an, wenn mindestens ein
korrekter DCF Update stattgefunden hat. Bei mir findet ein DCF Update nur dann statt,
wenn zwei aufeinander folgende Minuten richtig erkannt werden und die Differenz nur eine Minute ist.  

Bei der Programmierung des Detektors habe ich festgestellt, das jede Ã?nderung am Code
die Häufigkeit und Art des Fehlers beeinflusst. Ich hatte auch Versionen,
da trat der Fehler nur 1mal in 24h auf. Man muss auf das Ergebnis also manchmal sehr lange warten.

Gibt es hier eigentlich jemand, dessen Projekt noch wesentlich grö�er ist als meins?


Grü�e Joerg



    Antwort schreiben


Antworten:

Re: Zeitsprünge (von PeterS - 29.03.2012 14:00)
    Re: Zeitsprünge (von Joerg - 29.03.2012 15:02)
        Re: Zeitsprünge (von Joerg - 30.03.2012 10:38)
            Re: Zeitsprünge (von PeterS - 30.03.2012 14:11)
                Re: Zeitsprünge (von Joerg - 30.03.2012 20:26)
                    Re: Zeitsprünge (von PeterS - 31.03.2012 9:21)
                       Re: Zeitsprünge (von Joerg - 2.04.2012 8:41)
                          Re: Zeitsprünge (von PeterS - 2.04.2012 11:50)