Forum: Mikrocontroller und Digitale Elektronik Temperatur Sensor LM75A antwortet nicht


von Manfred Schreier (Gast)


Lesenswert?

Hi,

Ich habe einen LM75A in einem I2C Bus. Ich habe A2 auf high und A1+A0 
AUF LOW.

Ich habe auf dem Oszi überprüft und die Addresse 0b1001100( + 1 für 
lesen)

kommen an den Pins an, aber der LM75A gibt mir kein Ack.

Woran könnte das liegen?

wie hoch ist die Wahrscheinlichkeit, das der chip tod ist?
(Ich glaube sehr gering)

von RemoTe (Gast)


Lesenswert?

Häufiger Fehler: keine Pullups am I2C, dann siehst du das Ack einfach 
nicht, weil im I2C nur mit open Collector geschaltet wird.

Viel Glück
Remo

von Manfred Schreier (Gast)


Lesenswert?

RemoTe schrieb:
> keine Pullups am I2C

sind vorhanden, ich kann mit einem anderen Slave komunizieren.

von pompete (Gast)


Lesenswert?

....wie groß sind denn die pullup widerstände?
hatte schon die erfahrung machen müssen, das eine rtc prima lief und der 
lm75 nicht,weil die pullups (ich glaub) zu groß waren.
mit welcher geschwindigkeit betreibst du den bus?

von Manfred Schreier (Gast)


Lesenswert?

pompete schrieb:
> ....wie groß sind denn die pullup widerstände?
> hatte schon die erfahrung machen müssen, das eine rtc prima lief und der
> lm75 nicht,weil die pullups (ich glaub) zu groß waren.
> mit welcher geschwindigkeit betreibst du den bus?

Pull ups 10k für 100khz

von Michael .. (bigneal)


Lesenswert?

bei der frequenz solltest du eher auf 3k3 oder 2k2 gehen.
Jeh nach Pegel auch.

versuch mal die Frequenz auf 20kHz oder so zu drosseln.

von pompete (Gast)


Lesenswert?

...hab gerade mal in meine alte doku geschaut und da sind genauso wie im 
schaltplan von damals wie bei dir 10k eingetragen, allerdings meine ich 
damit probleme gehabt zu haben.
du kannst ja evtl. mal etwas niedrigere pullups versuchen, wenn es auf 
dem steckbrett aufgebaut ist.
werte zwischen 2k - 10k sollten ja gehen und die beschreibung deines 
problems gleicht meinem damaligen.
der einfachste weg ist natürlich mal einen zweiten lm75 zu probieren, 
aber das hättest du bestimmt schon gemacht, warscheinlich wirst du nur 
einen zur hand haben :)
hast du den lm75 mal alleine am bus gehabt?

von Manfred Schreier (Gast)


Lesenswert?

pompete schrieb:
> hast du den lm75 mal alleine am bus gehabt?

nein geht nicht, da ich die platine in Smt vormir habe :(

Michael .. schrieb:
> versuch mal die Frequenz auf 20kHz oder so zu drosseln.

geht das überhaupt? Da meine Slaves alle auf 100khz hören?
Oder fressen die auch wenniger und 100khz ist nur die norm?

von Michael .. (bigneal)


Lesenswert?

Den Takt wird über die entsprechende Leitung vom Master vorgegeben.
Dabei kann man mehr oder weniger frei wählen, wie schnell der ist.

hier auch etwas beschrieben:
http://de.wikipedia.org/wiki/I%C2%B2C#Takt_und_Zust.C3.A4nde_des_Busses

von Manfred Schreier (Gast)


Angehängte Dateien:

Lesenswert?

Michael .. schrieb:
> versuch mal die Frequenz auf 20kHz oder so zu drosseln.

Hab ich versucht, hat nichts gebracht .


Hier mal mein Schaltplan. Aber der müsste schon passen. Hab den OS nicht 
angeschlossen weil ich den Temp_interrupt nicht nutze.

von pompete (Gast)


Lesenswert?

...sieht ja soweit gut aus...ich hatte den os in dem fall unbeschaltet 
gelassen,da es ja ein ausgang ist, was aber hier nichts zur sache tut.
hmmm,dann kann ja nur was in der kommunikation fehlerhaft sein.
was für eine programmiersprache nutzt du?
greifst du auf fertige twi-routinen zurück, oder hast du diese selber 
geschrieben?

hast du mal sicherheitshalber noch eine stop-condition zusätzlich vor 
die abfrage (nächste start-condition) gesetzt, um einen definierten 
start zu haben?

von Manfred Schreier (Gast)


Lesenswert?

pompete schrieb:
> greifst du auf fertige twi-routinen zurück, oder hast du diese selber
> geschrieben?

Ja ich nehme: die TWI_Master.h von Manfred Langemann

pompete schrieb:
> hast du mal sicherheitshalber noch eine stop-condition zusätzlich vor
> die abfrage (nächste start-condition) gesetzt, um einen definierten
> start zu haben?

Aber die komunikation mit einem ADC funktioniert perfekt.

Ich weiß echt nicht woran es noch liegen kann

von Manfred Schreier (Gast)


Lesenswert?

Benutze C

von pompete (Gast)


Lesenswert?

...da ist wirklich der wurm drin....was hast du noch als slave am bus?
habe ein gutes sammelsorium an i2c devices, würde morgen abend das ganze 
mal fix aufs steckbrett bauen.
welchen controller hast du im einsatz?

von Manfred Schreier (Gast)


Lesenswert?

pompete schrieb:
> ...da ist wirklich der wurm drin....was hast du noch als slave am bus?



Zwei MPC3221 (mit verschiedenen Adressen natürlich)

> welchen controller hast du im einsatz?

ATmega32

> würde morgen abend das ganze mal fix aufs steckbrett bauen.

bin dann mal gespannt was dabei raus kommt

von pompete (Gast)


Lesenswert?

...so,möchte mich nur mal kurz melden....wenn du das problem noch nicht 
lösen konntest und es etwas zeit hat, dann kann ich dir die resultate 
meines tests am kommenden montag geben, da unsere sammelbestellung immer 
nur  donnerstag/freitag für farnell raus geht und ich dieses mal etwas 
zu spät dran war ;-)
die adc sind sehr interessant, vor allem vom preis, hatte sie noch nicht 
unter den händen und deshalb auch nicht da....

von pompete (Gast)


Lesenswert?

...p.s. auf welchen adressen laufen die devices? ich schreibe alles in 
asm und könnte dir dann das hexfile zum testen schicken.....

von pompete (Gast)


Lesenswert?

...p.s.2.  hast du die rs232 aktiv? zwecks ausgabe der resultate ;-)

von Manfred Schreier (Gast)


Lesenswert?

pompete schrieb:
> uf welchen adressen laufen die devices?



LM75A    0b 1001100  0x4C
MPC3221    0b 1001101  0x4D
MPC3221    0b 1001111  0x4F

pompete schrieb:
> hast du die rs232 aktiv

Klar!

von Peter (Gast)


Lesenswert?

Gelöst!!!!!

LM75A hat wohl im Reflowofen oder schon davor den Geist aufgegeben.


Danke an alle dir mir weiter helfen wollten.

Danke für euern einsatz hier im Forum

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.