ist immer noch der von #7 !
- - - Aktualisiert - - -
gerade getestet:
thread_local uint32_t counter = 0;
macht hier auch keinen Unterschied
ist immer noch der von #7 !
- - - Aktualisiert - - -
gerade getestet:
thread_local uint32_t counter = 0;
macht hier auch keinen Unterschied
ja ... sorry ... hab ich nicht gesehen
interessante ausgabe, gebe ich zu ... es wäre mal interessant zu erfahren wie der zeitliche ablauf bei der ausgabe aussieht! ich vermute hier das problem!
benutze mal irgend einen timer mit einer auflösung im wenigstens 100tel Sekunden bereich und speichere vor und nach jedem sleep jeweils einmal die zeit und gib die zeiten plus die aktuelle zeit auch als print aus
also quasi print("Jetzt: %d Vorher: %d Nachher %d",timer.now(), beforesleep, aftersleep)
so kann man erstmal prüfen ob der sleep vernünftig funktioniert und dann ob der print hier irgendwelche delays verursacht
ich denke dass die ausgaben bei dir nicht chronologisch korrekt ausgegeben werden
Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
nicht.
hmmm... könnte vlt...
andererseits wird in den blinker_thread zwischen dem ON/OFF-Paar gar nicht inkrementiert, also egal, wann das ausgegeben wird, es müsste 1 ON/OFF-Paar IMO erwartungsgemäß IMMER mit demselben gemeinsamen counter-Wert erscheinen...
...oder?
nicht zwingend, deswegen meinte ich ja ich vermute hier eine sogenannte race condition, ich würde gerne ausschließen dass der print hier dazwischen funkt und daher wollte ich auch dass du in einer print funktion gleichzeitig variablen und einen funktionsaufruf nutzt um mal einen einblick auf den ablauf zu bekommen und das sleep gleichzeitg zu testen (zwei sleeps in einem thread können je nach architektur lustige effekte haben)
und mit architektur meine ich das thread handling und den "sheduler"
Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
nicht.
ok, aber ich verstehe deinen code-Vorschlag noch nicht exakt.
Könntest du das bitte mal in den ino-Code genau hineinschreiben, fertig compilierbar?
sorry, da müsste ich erstmal selber was probieren, hab keinen plan wie man auf die schnelle bei arduino nen timer hinbastelt
Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
nicht.
Lesezeichen