
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Hallo Dietmar. > Die doppelte Definition von "PCFADR" läßt der Compiler nicht zu. Man kann also immer nur entweder PCF8574- oder PCF8574A-Portexpander einsetzen und deshalb maximal "nur" 64 externe Ports gleichzeitig nutzen. Ich halte 64 zusätzliche Ports für ausreichend, aber natürlich könnte der Anwender bei Bedarf das Assemblermodul auf 128 Ports erweitern. War mir schon klar das das so nicht funktionieren würde. Leider reicht mein Assembler bis jetzt noch nicht für eine eventuelle Änderung. Trotzdem Danke für Deine Hilfe!! Ich benutze jetzt die externen Ports über die PCF8574 aus dem Assemblermodul als Eingänge und die PCF8574A über die "write" Anweisung als Ausgänge. So könnte ich 64 Eingänge und 64 Ausgänge zusätzlich ansprechen. Na ja ich möchte halt mehrere OM´s miteinander verknüpfen, mal schaun was daraus wird??? > Stand das "RunOnErr=ON" vor den mit INCLUDE eingebundenen Systemerweiterungen? Die Systemerweiterungen müssen immer am Programmanfang, vor jedem Befehl, stehen. Sonst werden sie vom OM-Kontroller nicht gefunden. Siehe auch die Beschreibung des INCLUDE-Befehls in der OM-Doku: "Dateien mit der Endung IIA enthalten Systemerweiterungen, die vom Anwender direkt hinter die Definitionen, vor den ersten Befehl seines Programms, gestellt werden müssen." Ja genau das war mein Fehler, funktioniert jetzt ohne Probleme!! Eine Frage interessiert mich aber dennoch, wenn ich ein ganzes Byte vom PCF lesen möchte klappt das leider überhaupt nicht. Wie würde der Lesebefehl denn aussehen?? Ich hatte bis jetzt folgendes probiert: i2c_start ' I2C-Bus starten i2c_write(122) ' Adresse senden i2c_read(PCF14_DATEN) ' Daten lesen i2c_stop ' I2C-Bus stoppen Sollten dann das Empfangene Byte nicht in PCF14_DATEN stehen? Oder wo ist mein Fehler? Ein Byte schreiben funktioniert ohne Probleme. Viele Grüße Olaf |
| Antwort schreiben |