Re: Betriebsstundenzähler Kategorie: Programmierung (von nitraM - 2.02.2010 8:07) | ||
Als Antwort auf Re: Betriebsstundenzähler von Markus H - 1.02.2010 22:45 | ||
| ||
> Hallo nitraM, > > erstmal Danke für den Hinweis > > Düdl düdl dü... Blöder Fehler! Hab jetzt BH draus gemacht. > Aber irgend wie will das Ding trotzdem nicht! Hab das mal mit Sekunden beschleunigt, > hoffe ich hab da keinen Mi�t gebaut: Die Hoffnung muss ich dir leider nehmen... :-) > > > pcf8583.init(1,1,1,0,0); > BM = (eeprom.readlong(3,0x0000)); BM => readlong ???? > loop > { > if pcf.get(9,0) == 0 > { > BH = pcf8583.readint(0x3F); //speichern im Uhrenbaustein read = lesen... nicht speichern... > BM = BH * 60; > min = system.second(); // Beschleunigung ;-) > wait (min != system.second()); // Beschleunigung ;-) > BM = BM + 1; > BH = BM / 60; > //BH=BH+pcf8583.readint(0x3F); > pcf8583.writeint(0x3F,BH); > } > > > Ich interpretier das mal, wie ich das verstehe: > > erster if Durchlauf: > > BH = 0 ja, stimmt > BM = 0 da ja 0*irgendwas 0 ist ;-) ja, stimmt > xxx > xxx > BM = 1 ja, stimmt > BH = 1/60 stimmt nicht... 1/60 = 0, da du int verwendet... > schreibe in pcf8583 ja, stimmt > > zweiter bzw. weitere Durchläufe: > BH = 1/60 nein, siehe oben... BM = 0 > BM = 1 (da da 1/60 * 60 = 1) stimmt also auch nicht, BM = 0 Der Rest geht also auch nicht... > Sollte sich jetzt nicht nach einer Stunde (hier Minute) was ändern? Also die Adressen die passen, > was evtl. nicht passen kann ist die pcf8583.init! bei mir ohne DCF77 Antenne: pcf8583.init(1,1,0,0,0) > bzw. pcf8583.init(1,1,1,0,0), liegt hier vielleicht mein Fehler? Oder check ichs einfach nicht!? > > Danke und Gru�, > Markus Eine Frage, warum speicherst du nicht einfach nach 60 Minuten deine Stunden ab? Brauchst du denn jede Minute? Alternativ kannst du auch die Minuten und Stunden speichern... int min; pcf8583.init(1,1,1,0,0); BH = pcf8583.readint(0x3F); // lesen aus Uhrenbaustein min = system.min(); loop { wait (min != system.minute()); // warten auf neue Minute BM = BM + 1; // minute + 1 if BM = 60 // nach 60 Minuten { BH = BH +1; // Stunden +1 BM = 0; // Miunten zurücksetzen pcf8583.writeint(0x3F,BH); // Stunden speichern... } } nitraM | ||
Antwort schreiben Antworten: Re: Betriebsstundenzähler (von Markus H - 2.02.2010 21:26) Re: Betriebsstundenzähler (von nitraM - 3.02.2010 7:48) Re: Betriebsstundenzähler (von Markus H - 3.02.2010 9:21) Re: Betriebsstundenzähler (von Markus H - 11.02.2010 22:04) Re: Betriebsstundenzähler (von nitraM - 12.02.2010 12:36) Re: Betriebsstundenzähler (von Markus H - 25.02.2010 20:50) |