
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
hallo, danke für die antwort. hab wohl einen relevanten teil vergessen zu schreiben, sorry. '------ZEIT-DATENERFASSUNG-RESET------------------------------------------------ IF sekunde_DATENERFASSUNG = second THEN Pause 0 ELSE BIT_DS1631 = OFF BIT_lux_Bluete = OFF BIT_lux_Vegi = OFF BIT_DATEN_SPEICHERN = OFF sekunde_DATENERFASSUNG = second END IF ---------------------------------------------------------------------------------------------------------- ich glaube einen softwarefehler kann ich ausschließen mfg > > ok, > > > > hier die relevanten codeteile: > > Nun, ohne näher anzuschauen, was Dein Programm macht, sehe ich hier zwei Ifs, die anscheinend nur einmal und dann nie wieder durchlaufen werden. > > > IF (sekunde_DATENERFASSUNG MOD 2 = 0) AND (BIT_lux_Bluete = OFF) THEN > > > BIT_lux_Bluete = ON > > > > END IF > > Wenn die If-Bedingung einmal true ist, wird BIT_lux_Bluete on gesetzt und im geposteten Teil nie wieder auf off. Damit kann das if nie wieder true werden. > > > > > '------lux_Vegi einlesen------------------------------------------------------ > > > > IF (sekunde_DATENERFASSUNG MOD 3 = 0) AND (BIT_lux_Vegi = OFF) THEN > > > BIT_lux_Vegi = ON > > > > END IF > > Wenn die If-Bedingung einmal true ist, wird BIT_lux_Vegi on gesetzt und im geposteten Teil nie wieder auf off. Damit kann das if nie wieder true werden. > > Damit wird vom geposteten Code außer den If-Prüfungen nichts mehr durchlaufen, was man leicht fälschlich als "Absturz" interpretieren könnte. > > Bau doch mal ein paar Debug-Statements (prints oder beeps) ein, um zu verfizieren, dass die CC wirklich abgestürzt ist. > > Bye > Achim |
| Antwort schreiben |