Jump to content

Recommended Posts

Posted

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...