Forum: Mikrocontroller und Digitale Elektronik TC74 mit Soft I2C auf ATMega


von undeat (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich versuche schon eine ganze Weile einen TC74 Temperatursensor mit 
einem ATMega 644p zu betreiben.

Der TC74 ist ein I2C Temperatursensor in einem TO220 Gehäuse mit 5 Pins. 
Ich finde den daher sehr praktisch, da er ohne viel Aufwand schnell mal 
irgendwo eine Temperatur erfassen kann. Der Sensor hat einen 
Temperaturbereich von -40°C bis + 125°C.

Ich habe mir den Sensor gleich mit 5 verschiedenen Adressen bestellt:

TC74A0 = 48 h
TC74A1 = 49 h
TC74A2 = 4A h
TC74A3 = 4B h
TC74A4 = 4C h

Ich muss auf meinem Board auf einen Soft I2C zurückgreifen, da die HW 
I2C Pins bereits verwendet sind. Ich habe mir eine Soft I2C Master 
Klasse geschrieben. Die Dateien dafür sind im Anhang. Das kann bestimmt 
der ein oder andere gebrauchen.

Die Klasse hat eine Methode zum Suchen eines I2C Teilnehmers. uint8_t 
Suche(uint8_t von, uint8_bis) gibt die Adresse ersten gefunden Slave 
zwischen der Adresse von und bis zurück. Es wird nur das ACK angefragt.

Ich hab ein Display, welches mit einem I2C Portexpander Arbeitet. Dies 
wird  unter der Adresse 20 gefunden. Die Klasse funktioniert also. Der 
TC74 wird allerdings nicht gefunden. Ich habe ihn auch alleine am Bus 
betrieben und alle möglichen Adressen durchgescannt. Leider habe ich 
erst am Donnerstag die Möglichkeit, mit einem Oszilloskop nach dem 
Fehler zu suchen. Vieleicht hat ja jemand so noch eine Idee.

Der Takt des Controllers ist im AVR-Studio richtig eingestellt.
SDA und SCL besitzen einen Pullup auf 5V mit 1k Ohm.

Die Anschlusspins des TC74 habe ich mehrfach kontrolliert. Ich habe auch 
einen 2. und 3. TC74 mit anderen Adressen getestet. Nach jedem 
Zustandswechsel von SDA oder SCL habe ich eine Wartezeit einprogrammiert 
die ich schon auf 0,5,20 und 100 us eingestellt habe. Nichts geht.

Vielen Dank für eure Ideen.

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.