MCP23S17 -Anbindung

frb
2014-10-02
2014-10-06
  • frb - 2014-10-02

    Hallo

    Dank der Infos aus der Store-PDF habe ich je eine neue Gerätebeschreibung und Bibliothek für den MCP23S17 erstellt und versucht einzubinden.
    Leider ist mir vermutlich einmal ein doppelter Name durch die Finger gerutscht.
    Kann mir vielleicht jemand weiterhelfen, wo ich suchen muß?
    Die Ansicht in CODESYS: s.u..

    Vielen Dank schon mal

    IMG: Bild2.png

     
  • plcmax - 2014-10-03

    Hallo,

    kannst du unter Datei->Projektachiv->Projektarchiv dein Projekt speichern und dieses Archiv dann hier ins Forum hochladen,
    sonst kann keiner helfen.

    Viele Grüße
    plcmax

     
  • frb - 2014-10-03

    Hallo plcmax

    leider klappte es mit dem Hochladen zunächst nicht.
    Vielleicht war die Datei mit knapp 18MB zu groß, gezippt nicht nenneswert kleiner!
    Dreimal versucht, doch ohne Erfolg!

    Neuer Versuch:
    dies mal mit einer abgespeckten Datei (s.u.).

    Gruß
    frb

    GPIO und SPI mcp23S17 reduziert.projectarchive [440.53 KiB]

     
  • frb - 2014-10-04

    Hallo,

    über die Gerätebeschreibung und Bibliothek für den MCP23S17 kann ich dann ja die Richtung der Ports festlegen, also ob ein Pin I oderO ist.

    Wie sieht es aber mit den anderen Registern im IC aus?
    Z.B. mit dem Pull-Up-Register GPPU oder den Interrupt-Registern INTCON, INTF oder INTCAP?
    Muss ich dafür die Gerätebeschreibung und Bibliothek (CODESYS-Treiber) anpassen?
    Und wenn, wie mach ich das?

    Und dann hatte ich neulich im GPIO E/A-Abbild gesehen, dass es in der Spalte für Variable oberhalb der kleinen Symbole für Input (Kästchen mit Pfeil nach untenrechts) und Output (Kästchen mit Pfeil nach obenlinks) einweiteres Symbol mit Doppelpfeil gab. Was für mich bedeutet, dass ich eine dahinterstehende Variable für Ein- und Ausgang-Funktion verwenden kann. Ist das richtig?
    Und muss ich das auch im Treiber einbauen?

    Die Sache mit den im Store-pdf zum RPi beschriebenen Methoden (Bilder s.u.) habe ich zwar laut Anleitung übernommen aber nicht verstanden, ob ich hier Anpassungen vornehmen muss.

    lG
    frb

    IMG: Bild1.png

    IMG: Bild2.tif

     
  • eschwellinger

    eschwellinger - 2014-10-06

    Hallo,
    wenn ich das richtig verstehe nimmst du den MCP23S17 auch deshalb weil du da 3 anschlißen könntest und mit dem MCP23017 über I2C
    eben nur zwei un das auch nur über den B+ der 2 IC2 master unterstützt?

    Zitat:
    Wie sieht es aber mit den anderen Registern im IC aus?
    Z.B. mit dem Pull-Up-Register GPPU oder den Interrupt-Registern INTCON, INTF oder INTCAP?
    Muss ich dafür die Gerätebeschreibung und Bibliothek (CODESYS-Treiber) anpassen?
    Und wenn, wie mach ich das?

    Nein nicht in der Gerätebeschreibung das müssen Sie in der Library tun

    Zitat:
    Und dann hatte ich neulich im GPIO E/A-Abbild gesehen, dass es in der Spalte für Variable oberhalb der kleinen Symbole für Input (Kästchen mit Pfeil nach untenrechts) und Output (Kästchen mit Pfeil nach obenlinks) einweiteres Symbol mit Doppelpfeil gab. Was für mich bedeutet, dass ich eine dahinterstehende Variable für Ein- und Ausgang-Funktion verwenden kann. Ist das richtig?

    Bidirectional geht nicht entweder Input oder Outputs definieren.

    Zitat:
    Und muss ich das auch im Treiber einbauen?

    ja

    Grüße
    Edwin

     

Log in to post a comment.