-
-
Neuer Benutzer
Öfters hier
I2C Erweiterung mit PCA9555
Hallo,
ich habe einen PCA9555 Baustein an meinen Atmega128 und wollte fragen, ob wer von euch diesen Baustein schon mal verwendet hat und mir den Code zuschicken kann. Würde nämlich gerne mal schauen, wie man sowas macht .
Wäre echt toll =D>
-
Erfahrener Benutzer
Roboter Genie
Was für eine Programmiersprache verwendest du ?
...und ja ca. 80x verbaut
-
Neuer Benutzer
Öfters hier
hi Crazy Harry,
ich programmiere in C
-
Erfahrener Benutzer
Roboter Genie
das ist schlecht - ich progge in pascal. aber so schwer sollte es nicht sein. die basisadresse ist 40h schreiben/41h lesen wenn A0-A2 auf masse liegt.
ich weiß nicht, wie das bei deinem compiler ist: ich muß die oben 7 bits nach rechts schieben und hab so automatisch 20h schreibend und lesend. der compiler macht daraus automatisch 40h und 41h je nach dem ob ich I2COut oder I2CInp mache .
ich weiß nicht, ob dir das so etwas bringt ....
initialisierung beider ports als output
I2COut($20,$06,$00); //adresse, configration-register 6, output
I2COut($20,$07,$00); //adresse, configration-register 7, output
ausgabe von daten:
I2COut($20,$02,Out1); //Bit 0-7
I2COut($20,$03,Out2); //Bit 8-15
wenn du etwas einlesen willst, muß so konfiguriert werden:
I2COut($20,$06,$FF); //adresse, configration-register 6, input
I2COut($20,$07,$FF); //adresse, configration-register 7, input
es kann jeder pin unabhängig von den anderen als input oder output eingestellt werden - 1 = input / 0 = output
lesen der eingänge mit
I2CInp($20,$00,Data1);
I2CInp($20,$01,Data2);
interessant ist vielleicht noch die möglichkeit die eingänge zu invertieren:
I2COut($20,$04,$00); //Polarity Inversion Register Bit 0-7
I2COut($20,$05,$00); //Polarity Inversion Register Bit 8-15
0 = "normal" .... 1 = invertiert
wenn du konkrete fragen hast: fragen
-
Neuer Benutzer
Öfters hier
Ganz herzlichen Dank!!!
Hab das irgendwie nach dem Datenblatt so verstanden, dass man um die Konfigurationsregister zu schalten, nur die Adresse $06 eingeben zu braucht und dann die Daten, aber so wie du es mir gesagt hast, so funktioniert es.
Danke!!
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen