Re: I2C Kategorie: I²C-Bus (von krassos - 19.07.2005 23:25) | ||
Als Antwort auf Re: I2C von wema - 19.07.2005 11:21 | ||
| ||
> > > > > > Hallo Rene, > > > > für die Versorgung der Porterweiterungen mu�t Du nicht zwangsläufig die 5V > > der MCU nutzen. Eine stabile, gut gesiebte 5V mit gemeinsamen GND (wichtig) > > sollte genügen. > > Die Verbindungsleitung sollte am besten Netzwerkleitung sein (cat5 oder besser). > > > > Hier noch das Beispiel: > > > > /* Testprogramm für PCF8574 */ > > > > > > thread main{ > > > > int modul1,modul2; > > pcf.init(); > > pcf.out(modul1,0);pcf.out(modul2,0); //nach dem Einschalten sind alle ports > > //der 8574 als input = high. deshalb hier definiert > > //auf 0 setzten. Solltest Du einen Ausgangsinverter > > //dahinter gesetzt haben mu� hier statt 0 255 stehen. > > modul1=0; //Adresse 64 > > modul2=1; //Adresse 66 > > > > loop{ > > > > if ports.get(8) //p1h0 abfragen > > { > > pcf.set(modul1,0,1); //modul1 port0 setzen > > pcf.set(modul1,1,1); //port 1 setzen > > pcf.set(modul2,0,1); //uswusf... > > pcf.set(modul2,1,1); > > } > > else > > { > > pcf.set(modul1,0,0); //modul1 port 0 ausschalten > > pcf.set(modul1,1,0); //........ > > pcf.set(modul2,0,0); > > pcf.set(modul2,1,0); > > } > > > > if ports.get(9) //p1h1 abfragen > > { > > pcf.set(modul1,2,1); //modul1 port2 setzen > > pcf.set(modul1,3,1); //port 3 setzen > > pcf.set(modul2,2,1); //uswusf... > > pcf.set(modul2,3,1); > > } > > else > > { > > pcf.set(modul1,2,0); //modul1 port 2 ausschalten > > pcf.set(modul1,3,0); //........ > > pcf.set(modul2,2,0); > > pcf.set(modul2,3,0); > > } > > > > }} > > > > > > Das Beispiel sollte mit Hilfe des Handbuchs selbsterklärend sein. > > Es ist bewu�t nicht komplett, ein wenig wolltest Du ja noch experimentieren ;) . > > Um alle benötigten Module zu haben solltest Du den letzen Servicepack von hier laden und installieren. > > > > Gru� krassos > > > > Gru� krassos > > > Hallo krassos, hallo Rene, > > ich möchte mich hier nur einmal kurz melden, um eine evtl. langwierige Fehlersuche von vornherein > auszuschalten: > Im obigen Quelltext müssen die Variablendefinitionen "modul1=0" und "modul2=1" VOR dem Befehl > "pcf.out(modul1,0);pcf.out(modul2,0); " stehen. Ansonsten kann das Programm diese nicht nutzen. > Hallo, Du hast natürlich recht. Es wäre hier beide male das gleiche Modul an ADR 64 angeprochen worden. Gru� krassos | ||
Antwort schreiben Antworten: |