Also ich dreh jetzt gleich durch!
Ich habe euch mein gesammtes Program angehängt und erkläre euch meinen
Vorgang gerne noch einmal.
->Ich spiele das Program so wie es ist auf den µC. Anzeige:
"Hallo Welt"
->Maskiere folgende Zeilen aus:
1 | //i2c_write(0x02); //Register Sekunde ansprechen
|
2 | //i2c_write(0x03); //Sekunde z.B. 3 stellen
|
3 | //i2c_rep_start(0xA2);
|
Anzeige: "Hallo Welt"
Bemerkung: Uhr fehlt und zweites "Hallo Welt" auch.
->Trenne die Stromversorgung und stecke sie wieder ein
Anzeige:
"Hallo Welt
770
Hallo Welt"
Die Null zählt hoch. Uhr leuft also.
Weiterer Versuch:
1 | i2c_start_wait(0xA2+I2C_WRITE); // set device address and write mode
|
2 | i2c_write(0x02); //Register Sekunde ansprechen
|
3 | i2c_write(0x03); //Sekunde z.B. 3 stellen
|
4 | //i2c_rep_start(0xA2);
|
5 | i2c_write(0x03); //Register Minute ansprechen
|
6 | i2c_write(0x87); //Minute auf 7 stellen
|
7 | //i2c_rep_start(0xA2);
|
8 | i2c_write(0x84); //Register Stunde ansprechen
|
9 | i2c_write(0x87); //Stunde auf z.b. 7 setzten
|
10 | i2c_stop();
|
Anzeige: "Hallo Welt"
Ändere ich das Program wieder um wie zuvor, muss ich den µC von der
Spannungsversorgung trennen das es wieder Uhr und zweites Hallo Welt
anzeigt.
So, der Versuch alles auf einmal zu machen ist also auch gescheitert.
Was mach ich falsch???
Ich weis, mein Program ist sehr kaotisch, aber es ist eines meiner
ersten und Übung macht den Meister. Es geht bestimmt auch einfacher.