DAC MAX521 mit I2C Kategorie: I²C-Bus (von Pirre - 8.06.2011 12:27) | ||
| ||
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! | ||
Antwort schreiben Antworten: Re: DAC MAX521 mit I2C (von Franz-Peter - 8.06.2011 15:31) Re: DAC MAX521 mit I2C (von Pirre - 8.06.2011 17:21) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum