hallo! ich weiß, das ihr so langsam ne abneigung gegen den baustein entwickelt habt. dennoch hoffe ich, dass ihr mir helfen könnt. und zwar ist folgendes: 1. uhrzeit setzen geht. die zeit danach auslesen funktioniert auch. 2. wird die uhrzeit nicht gesetzt (durch auskommentieren) sondern nur ausgelesen fängt er bei "0" an zu zählen, läuft quasi als stopuhr. muss die kiste noch irgendwie was initialisieren, z.b. im status/control-register? oder is einfach nur die batterie alle? hier der relevante teil aus dem quelltext: /* void zeit_set(char h_set, char m_set, char s_set) { i2c_start(); i2c_out(0xA0); i2c_out(0x02); i2c_out(s_set); i2c_stop(); i2c_start(); i2c_out(0xA0); i2c_out(0x03); i2c_out(m_set); i2c_stop(); i2c_start(); i2c_out(0xA0); i2c_out(0x04); i2c_out(h_set); i2c_stop(); } */ void main () { //zeit_set(0x21,0x56,0x20); //h,m,s für 21:56:20 while(1) { //zeit auslesen i2c_start(); //i2c starten i2c_out(0xA0); //Ad. schreiben i2c_out(0x02); //sek wählen i2c_start(); //i2c starten i2c_out(0xA1); //Ad lesen s_hex = i2c_in(); //sek zuweisen i2c_stop(); i2c_start(); i2c_out(0xA0); //Ad. schreiben i2c_out(0x03); //sek wählen i2c_start(); //i2c starten i2c_out(0xA1); m_hex = i2c_in(); //min zuweisen i2c_stop(); i2c_start(); i2c_out(0xA0); //Ad. schreiben i2c_out(0x04); //sek wählen i2c_start(); //i2c starten i2c_out(0xA1); h_hex = i2c_in(); //hours zuweisen i2c_stop(); s = ( s_hex & 0x0f ) + ( 10 * (s_hex >> 4) ); //hex2bcd m = ( m_hex & 0x0f ) + ( 10 * (m_hex >> 4) ); h = ( h_hex & 0x0f ) + ( 10 * (h_hex >> 4) ); sprintf(zeik," Time: %2d:%2d:%2d ",h,m,s); lcd_print(0,0,zeik); //ausgabe auf display } } hab zwar gegooglet un auch was gefunden. konnte damit aba nix anfangen, weil die da mitm watchdog handiert ham. dank im voraus matthias
hat sich erledigt. batterie war hardwaremäßig auf der (industriell gefertigten) platine verpolt.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.