Forum: Compiler & IDEs LM73 über TWI/I2C mit Atmega1281 auslesen


von Mark (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich habe ein zigbit funkmodul, auf welchem ein Atmega1281 und ein lm73 
verbaut ist. Nun möchte ich die Temperatur des LM73 über TWI/I2C 
auslesen.

Ich habe es schon mit der Lib von Peter Fleury versucht, leider ohne 
Erfolg.
Im anhang sind mein i2master.c und i2master.h Dateien. diese ähneln sehr 
arg denen von Peter Fleury.
In der main ruf ich die folgenden Funktionen auf:
...
Init_TWI();
printf("Send Start %x",Send_start());
printf("Send address %x", Send_adr(0x91));
...
Ich hab das Problem, dass ich von Send_adr immer ein NOT 
ACKNOWLEDGE(0x20 bzw0x48) zurückbekomme, egal ob lesend (0x91) oder 
schreibend (0x90).
Wenn ich irgendwine Adresse eingebe, bekomm ich das gleiche. -> Stimmt 
meine Device- Adresse nicht?
Laut Datenblatt die 0x90 bzw 0x91 (Anhang LM73)
Für mögliche Hinweise bin ich sehr dankbar.

Mit freundlichen Grüßen
Mark

von katastrophenheinz (Gast)


Lesenswert?

Vielen Dank für dass Hochladen des kompletten ATmega Manuals.
Findet man ja sonst kaum im Internetz :-(

Ansonsten: Schaltplan? TWI-Taktfrequenz? ADDR-Beschaltung des LM73?
PullUps vorhanden?

von Mark (Gast)


Angehängte Dateien:

Lesenswert?

Im Anhang auf Seite 5 ist die Beschaltung, nach der Beschreibung sollten 
die Pullups eingebaut sein.

Zur Taktfrequenz: die Cpu läuft mit 8MHz also hab ich nach der Formel 
TWBR=32 gewählt(in der datei im Anhang steht noch 72 drin).
Somit ist meine SCL-Frequenz 100kHz.

Also wenn ich den Beschaltungsplan richtig deute, Liegt ADDR und GROUND 
auf Erde?

von katastrophenheinz (Gast)


Lesenswert?

Nach deinem Schematic liegt ADDR auf GND.
Für mich heißt das, die Device address ist 1001 001x
Dh. 0x92 / 0x93
Damit mal probiert?
TWI-Baudrate passt.

von Mark (Gast)


Lesenswert?

Hat sich wohl erledigt.
Hab einfach mal das Board getauscht, gleiche Einstellungen, auf dem 
neuen läuft es einwandfrei ;)

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.