Jump to content

Recommended Posts

Geschrieben

Hallo Zusammen

ich bräuchte für einen Aufbau alle Kanäle des IO-16 2.0 defaultmässig als Outputs geschalten. Dafür habe ich im File io16.c folgende Zeilen geändert (alles in der Funktion io16_init):

Neu                                                                              // Ursprünglich
38: pcal6416a.inout = 0x0000;                                     // pcal6416a.inout = 0xFFFF;
39: pcal6416a.pullup_enable = 0x0000;                       // pcal6416a.pullup_enable = 0xFFFF;

54: channel->direction = IO16_V2_DIRECTION_OUT;  // channel->direction = IO16_V2_DIRECTION_IN;

Als ich dann die neu generierte FW geflasht habe, waren tatsächlich alle Kanäle auf Output und ausgeschalten. Das Problem war aber, man konnte nicht ohne weiteres via BrickViewer die Ausgänge einschalten. Man kann die Werte zwar ändern, es gibt aber keine Reaktion auf dem Board. Sobald aber ein beliebiger Kanal auf Input geschalten wird, reagiert das Board, und schaltet alle zuvor eingeschaltenen Kanäle auch tatsächlich ein.

Daraus lässt sich schliessen, dass nur mit dieser Umkonfiguration ein Umschalten der Ausgänge wahrscheinlich nicht als neue Konfiguration gesehen wird, sondern erst, wenn ein Umschalten von Ausgang auf Eingang vollzogen wird. Die Überprüfung, ob eine neue Konfiguration gesetzt wurde, ist im File pcal6416a.c in den Zeilen 175-195 zu finden.

Hat jemand eine Idee, was geändert werden muss, dass man die Kanäle als Outputs schalten kann, ohne dass ein Umschalten als Input dies erst ermöglicht?

Vielen Dank und Gruss,

Xabi

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...