Also ich habe vorhin meinen Max 7501 ausprobiert, den ich schon ewig hier liegen habe. Ich habe das Tutorial der ATmega16 Doku abgetippt und damit eine Kommunikation aufgebaut Start Senden des Adresse Testen Senden des Pointers 00000000 Repeated Start Senden Der Adresse mit einem ReadBit, anstatt des Write Bit Testen. Warten. Byte Empfangen. Dieses Byte habe ich dann sofort abgespeichert. Um die Nachkommastelle habe ich mich nicht gekümmert ebendso, wie um das Beenden der Kommunikation. Alle Tests der AcknowledgeBits waren vorher erfolgreich. Aber als Empfangsbyte bekomme ich immer 9F, also 10011111. Das ist eine Minustemperatur, was ich ausschließen kann. Woran könnte das liegen? Ich bekomme immer die selbe Temperatur. Dabei müsste die Temperatur doch mit dem Pointer 00000000 zu erreichen sein. Ich verstehe das nicht... Die Adresse des Chips muss so wie so stimmen, sonst wäre das mit der Kommunikation etwas dumm. Ich schicke euch mal den Code
Das mit dem Code hat länger gedauert. Die Netzwerkverbindung hakt irgendwie sehr, wenn ich mit dem Explorer irgendwodrauf zugreifen will. Das hatte ich schon einmal. Damals hat das Schlagen des Routers geholfen. Mh dazu müsste ich den erstmal ausgragen. Wo der wohl gerade ist.... http://www.freak5mynew.no-ip.info/muell/EEPROM-TemperaturSpeichern.txt
; Testen Adresse + RBit Schreiben in r16,TWSR andi r16, 0xF8 cpi r16, 0x40 brne ERROR ; Warten auf Daten RPwait3: in r16,TWCR sbrs r16,TWINT rjmp RPwait3 in r20, TWDR Mh kann es sein, dass in r20, TWDR nicht außreicht um einen Wert zu lesen?
RPwait3: in r16,TWCR sbrs r16,TWINT rjmp RPwait3 in r20, TWDR in r16,TWSR andi r16, 0xF8 cpi r16, 0x50 brne ERROR .................................. Ich habe jetzt eine Statusabfrage eingebaut. Ich verstehe aber nicht, warum diese immer einen Fehler ausgibt. Eigentlich sollte doch wenigstens irgendwann ein richtiger Wert übertagen werden, besonders wenn der Chip vorher schon richtig addressiert wurde und den Pointer auch angenommen hat....
Die Pullups sind 10KOhm groß ist das OK? Ich meine der AVR kann ja einiges an Strom ab, aber vielleicht kommt von dem Chip nicht mehr viel rüber, oder es ist zu wenig Strom.... http://www.freak5mynew.no-ip.info/muell/DatenBlattMaximTmP_Max7500.gif
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.