Forum: Compiler & IDEs EEPROM 24C16 am TWI


von Matthias K. (gidarrnmatze)


Angehängte Dateien:

Lesenswert?

Hallo Zusammen,

ich versuche seit 2 Wochen nun einen EEPROM (24C16) am TWI des Atmega 8 
zum laufen zu bringen.

allerdings haut es mir nicht hin.

ich habe die Routine von Peter Fleury eingebunden, und lasse mir zu 
Kontrolle
zu am Terminal Ziffern ausgeben. Diese befinden sich im i2c_start_wait 
(0,1,2,3,4) leider komme ich nur zur "0".
Danach passiert nix mehr, was für mich heißt, das Ganze hängt bei der 
Zeile
while(!(TWCR & (1<<TWINT)));

Ich bin leider noch ziemlicher Anfänger und kann das nicht 
interpretieren, wo der Fehler ist. Habt ihr eine Idee?

Viele Dank schonmal.
Matthias

von Ingo (Gast)


Lesenswert?

Das Eeprom benötigt etwas zeit nach dem Schrieben, füge mal 10ms Pause 
danach ein.
Solche While Schleifen fängt man auch mit einem Timeout auf, genau damit 
das was du beschriebst nicht passiert...

von Matthias K. (gidarrnmatze)


Lesenswert?

@Werner: das stimmt, aber soweit komm ich leider garnicht erst.

@Ingo: wo meinst genau meinst du das Einfügen?
Leider weißt ich nicht was du mit Timeout meinst!

Ich habe jetzt mal 10ms vor und hinter "while (!(TWCR & (1<<TWINT)));"
eingefügt. leider bringt das auch nichts.

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
Noch kein Account? Hier anmelden.