Forum: Mikrocontroller und Digitale Elektronik Maxim Max7501 Temperatursensor + TWI Beispielcode suche ich


von Freak5 (Gast)


Lesenswert?

Ich suche Beispielcode für den Max7501, welcher über den TWI mit einem
AVR (am besten wäre natürlich gleich der ATmega16;-)) angesteuert wird.

Ich habe schoneinmal versucht auf diesen Chip zuzugreifen. Die
Kommunikation hat auch funktioniert ich habe immer ein OK
zurückbekommen. Nur die Übertragung der Temperatur hat dann nicht
funktioniert. Einen RepeatedStart habe ich noch gemacht.
Eigentlich hatte ich auch das richtige Register, dachte ich wenigstens,
als ich mich damit beschäftigt hatte.

Um das jetzt wieder aufzugreifen wollte ich nach einem ideotensicheren
Beispielcode suchen.

Meine anderen Threads sind leider im Sande verlaufen und keiner hat
geantwortet. Wenn ich nach dem Max 7501 über google suche finde ich
sogar meinen eigenen Beitrag :-)

Kann mir jemand einen funktionierenden Beispielcode geben?

von Freak5 (Gast)


Lesenswert?

P.S.: Da ich gerade in die Welt der Programmierbaren Logig einsteigen
möchte ist es nicht mehr soo wichtig. Aber gibt es Chips, welche eine
Art schnellerer AVR darstellen?

Also viel mehr Rechenleistung.
Viele IO-Pins.
>64Kb Ram
Linearer Speicher
Viel Flash Speicher

Und am besten noch die Extras wie ADC wandler und PWM.

Gibt es sowas? Oder muss man da die Welt der µCs verlassen um einen
Processor zu programmieren, welcher externen Ram ansteuert?

von peter dannegger (Gast)


Lesenswert?

Ich kenne den MAX7501 nicht, aber allein, daß er I2C ist, wäre für mich
ein K.O.-Kriterium (mindestens 4 Drähte !).


Ich nehme immer die DS18B20 (2 Drähte für alle Sensoren zusammen), die
sind auch von Maxim.
Auch ist das Gehäuse (TO-92) ideal, um es z.B. in ein Röhrchen
wasserdicht einzukleben.


Peter

von Freak5 (Gast)


Lesenswert?

OK...
Das hat mir schon jemand empfohlen. Das ist doch diese 1 Wire-
Kommunikation, oder?

Ich werde mich damit anscheinend auch auseinandersetzen müssen.

Nur kurz zum I2C. Wenn ich nach dem RepeatedStart immer noch ein OK
zurückbekomme, dann mache ich das mit der Kommunikation doch
Prinzipiell richtig und der Fehler ist dann direkt beim Chip zum
Beispiel ein falsches Register, oder?

von peter dannegger (Gast)


Lesenswert?

Auf ein RepeatedStart gibts gar nichts.
Erst auf die Adresse muß ein ACK kommen und dann auf jedes Datenbyte.

Wieviel Bytes und wann zu senden oder zu empfangen sind hängt dann vom
jeweiligen Chip ab.


Peter

von Freak5 (Gast)


Lesenswert?

Er hat mir solange ein ACK gegeben, bis das angeforderte Datenbyte
kommen sollte. Auf die eingetragenen Register habe ich auch ein ACK
bekommen.

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.