Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: DAC MAX521 mit I2C Kategorie: I²C-Bus (von Pirre - 8.06.2011 17:21)
Als Antwort auf Re: DAC MAX521 mit I2C von Franz-Peter - 8.06.2011 15:31

> > Hallo,
> > leider ist es mir noch nicht gelungen, den 8 Kanal DAC MAX521 via I2C zu kontrollieren.
> > Laut Datenblatt wird die Kommunikation mit einer Startbedingung begonnen (SCL und SDA high,
> > SDA wechselt auf low). Darauf folgt die 8 Bit Slaveadresse mit einem ACK als 9. Bit. Nun wird
> > ein Kommandobyte (8 Bit) gesendet, gefolgt von einem ACK Bit. Darauf folgt das Datenbyte für den
> > DAC-Wert mit ACK als 9. Bit. Am Ende wird eine Stopp-Bedingung benötigt, d.h. SDA von low auf
> > high, während SLC high ist. Im Nichtkommunikationszustand müssen also SDA und SLC high sein.
> >
> > Schema:
> >
> > SCL = high, SDA = high
> >
> > Start-Bedingung: SDA high -> low
> > Slaveadresse (8 Bit) + ACK
> > Kommandobyte + ACK
> > Datenbyte + ACK
> > Stoppbedingung: SLC = high, SDA low -> high
> >
> > SCL = high, SDA = high
> >
> > Eine Spannungsmessung der SDA- und SLC-Pins ergab jedoch nach dem I2C_Stop()-Befehl einen
> > low Pegel an diesen Pins.
> > Da ich keine Erfahrung mit I2C habe weiss ich nicht, ob die Start- und Stoppbedingung
> > standardisiert ist oder ob die C-Control Bedingungen nicht denen des MAX521 entsprechen.
> > Auch weiss ich nicht, ob ein gesendeter Befehl der C-Control I2C-Schnittstelle automatisch mit
> > einem ACK beendet wird oder ob dies separat erfolgen muss (wenn ja, wie? in der Doku fand ich dazu
> > nichts).
> > Kann mir jemand weiterhelfen bzgl. dieser Start-/Stopbedingung und dem ACK?
> > Der MAX521 kann übrigens nur empfangen.
> > Vielen Dank!
>
> Das ist ein ganz normales I2C Interface und sollte dich daher von der C-Control auch ansteuern
> lassen. Das Ack wird entsprechend der verwendeten Befehle automatisch erzeugt bzw. ausgewertet.
> Hast Du an die Pull-Up Widerstände gedacht? Alle I2C I/O's sind immer openCollector, und du benötigst
> Pull-Up Widerstände an beiden Leitungen.
> GruÃ?
> Franz-Peter

Hallo Franz-Peter,
Vielen Dank für den Hinweis mit den pull-up Widerständen. Die hatte ich natürlich vergessen...
Jetzt funktioniert es.
Viele Grü�e



    Antwort schreiben


Antworten: