Programmierung in VBA

Dies ist das deutsche Forum für alle Themen um den IO-Warrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

Post Reply
hardware
Posts: 8
Joined: Sun Dec 03, 2006 5:04 pm

Programmierung in VBA

Post by hardware »

Hallo,

ich bin neu hier und habe meinen IOW bereits zusammengebaut.
Nun geht es an die Programmierung. Da ganze möchte in in VBA realisieren.

ich habe folgende schaltung http://www.feuerwehr-schollbrunn.de/downloads/Mail.PDF erstellt.

wie bekomme ich es hin, dass ich den Pin P0.0 einschalte, sodass das Lämpchen leuchtet?

Bittttte helft mir. =))) Danke.

Gruß
Michi
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

Post by Robert Marquardt »

VBA ist VB6 so aehnlich das man die VB6 Beispiele weitgehend uebernehmen kann.
hardware
Posts: 8
Joined: Sun Dec 03, 2006 5:04 pm

Post by hardware »

ich habe mir einmal den Quellcode aus dem Sample zu Gemüte geführt.
es geht im Prinzip darum, einen bestimmten pin aktiv zu schalten. jetzt bin ich auf folgenden code gestoßen:

Code: Select all

Private Sub WriteLEDs(Value As Byte)
    ' Number of bytes written
    Dim nWritten As Long
    ' Loop variable
    Dim I As Long

    ' Set up Report ID
    ' Report ID 0 is for writing to zero interface (16 or 32 IO-Warrior I/O pins)
    data(0) = 0
    For I = 0 To numIows - 1
        ' Set up bytes
        data(1) = &HFF
        data(2) = &HFF
        data(3) = &HFF
        data(4) = &HFF
        If IowKitGetProductId(iowHandles(I)) = IOWKIT_PID_IOW24 Then
          ' First byte is controlling standard LED
          data(1) = Value
          ' Write to IOW 24
          nWritten = IowKitWrite(iowHandles(I), IOW_PIPE_IO_PINS, data(0), 3)
        Else
          ' Fourth byte is controlling standard LEDs
          data(4) = Value
          ' Write to IOW 40
          nWritten = IowKitWrite(iowHandles(I), IOW_PIPE_IO_PINS, data(0), 5)
        End If
    Next I
End Sub
leider verstehe ich da nicht so recht, wie ich den pin auswählen kann, der aktiv geschalten werden soll. wo kann ich das machen?

Sorry für die vielen Fragen, aber aller Anfang ist schwer.
Mfg
Michi
Guido Körber
Site Admin
Posts: 2856
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Post by Guido Körber »

Auch das haben wir schon mehrfach in diesem Forum beantwortet.

Es handelt sich dabei übrigens nicht um eine IO-Warrior spezifische Frage, sondern um eine grundlegende Frage des Programmierens.
User avatar
Christoph Jung
Posts: 670
Joined: Sun Oct 08, 2006 3:43 pm
Location: Germany / Berlin
Contact:

Post by Christoph Jung »

Ein blick in das Datenblatt wollte helfen. Da steht drin, wie man sowas macht.


Code: Select all

//IOWarrior40
data(4) = &HFF;
bedetuet 8 bits "Einschalten" also ansprechen (entspricht dem dezimalwert 256). Jetzt musst du nur noch ein wenig mit den Hex-Werten rechnen / Spielen und es sollte gehen...da du den IOW40 verwendest solltest du auf Port 3 auch dementsprechen die LEDs leuchten/nicht leuchten sehen. Aber wie gesagt steht alles im Datenblatt und das auch ziemlich zu anfang. Man sollte es einfach mal lesen....
Abteilung: Softwareentwicklung
Folge uns auf Twitter
Follow us on twitter
Post Reply