PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Daten vim I2C / TWI-Bus empfangen??



Timmee
23.07.2009, 12:26
Tach!

Mittlerweile habe ich es geschafft Daten auf den Bus zu legen und den
Ultraschallsensor SRF02 mit Assembler-8051 an zu sprechen. Zum Einen
wurde die Adresse des Sensors testweise geändert und ich kann eine
Messung starten, diese Wird durch eine LED bestätigt. Nun weiß ich aber
nicht genau wie, bzw "wann" die Daten aus zu lesen sind. Nach der
Messung spreche ich einfach ein Register an, in welchem die Messdaten
gespeichert sind. Die Daten werden dann ja in SSDAT abgelegt. Nur wird
SSDAT ja auch zwischendurch immer wieder mit verschiedenen Daten
beschrieben. Ich lasse mir die Daten aus SSDAT auf dem Port P0 an den
dort angeschlossenen LEDs anzeigen.

In der ATMEL-Anleitung steht zu SSDAT:

.. enthält ein zu sendendes Daten-Byte oder ein Byte, welches grad
ampfangen wurde. Es kann beschrieben werden, so lange es nicht durch
einen anderen Prozess verwendet wird. Dieses passiert, wenn sich die
2-Draht-Logik in einem definierten Status befindet und das SI-Flag
gesetzt ist. Die Daten verbleiben in SSDAT, so lange SI gesetzt ist.
Während die Daten gesendet werden, werden gleichzeitig Daten empfangen.
SSDAT enthält das jeweils letzte empfangene Byte.

Wo und wann komme ich an das empfangene Byte? Ich habe mir eine
Empfangsroutine geschrieben. Leider funktioniert diese nicht wie
gewünscht. Hat jemand einen Tip?

Danke im Voraus

Timmee