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: |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum