K8055 Eingänge auslesen und darstellen

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Cupblue.

    K8055 Eingänge auslesen und darstellen

    Guten Abend/ Morgen liebe Gleichgesinnte.

    Ich habe eine Frage bezüglich, des Auslesens, der 5 digitalen Eingänge auf dem Velleman K8055.
    Ich habe nun schon ein Programm geschrieben, welches mir die Ansteuerung der Platine ermöglicht, um LED's an/auszuschalten und dabei verschiedene Labels zu aktivieren, welche mir gewählten Zustand anzeigen.
    Nun möchte ich jedoch über die Eingänge ein Signal, welches von den LED's kommt auswerten, um wiederum ein Label zu aktivieren, falls ein Signal ankommt, um aufzuzeigen, dass die LED auch tatsächlich leuchtet leuchtet.Oder um ein Label aufzuzeigen, dass eine Störung in der LED vorhanden ist.
    Nun weiß ich jedoch nicht wie ich das verwirklichen kann und wollte deswegen hier einmal nachfragen.

    Ich hoffe, ich habe es verständlich geschrieben und ihr könnt mir helfen.

    Vielen Dank schon einmal im Vorraus.
    Das habe ich schon, leider komme ich dort auch nicht weiter.
    Ich habe gestern erst mit Visual Basic angefangen und kenne mich auch deshalb nicht so gut aus.
    Wäre es möglich wenn ihr mir die einzelnen Schritte genau erklärt ?
    Ich möchte es so haben:
    1. OpenDevice(0)
    2.Button1_Click
    SetDigitalChannel(1)
    --> Anschalten vom Ausgang 1
    Bis hier hin bin ich gekommen und alles klappt.
    Nun möchte ich aber ein Kabel vom Ausgang 1 an den Digital Input 2 legen, um auszulesen, ob der Ausgang 1 auch wirklich geschaltet ist.
    Nur das bekomme ich leider garnicht hin.
    Ich habe schon ausprobiert:
    If ReadDigitalChannel(1) =true Then
    label1.visible =true

    Hier einmal mein Programm:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Declare Function OpenDevice Lib "k8055d.dll" (ByVal CardAddress As Integer) As Integer
    3. Private Declare Sub CloseDevice Lib "k8055d.dll" ()
    4. Private Declare Function Version Lib "k8055d.dll" () As Integer
    5. Private Declare Function SearchDevices Lib "k8055d.dll" () As Integer
    6. Private Declare Function SetCurrentDevice Lib "k8055d.dll" (ByVal CardAddress As Integer) As Integer
    7. Private Declare Function ReadAnalogChannel Lib "k8055d.dll" (ByVal Channel As Integer) As Integer
    8. Private Declare Sub ReadAllAnalog Lib "k8055d.dll" (ByRef Data1 As Integer, ByRef Data2 As Integer)
    9. Private Declare Sub OutputAnalogChannel Lib "k8055d.dll" (ByVal Channel As Integer, ByVal Data As Integer)
    10. Private Declare Sub OutputAllAnalog Lib "k8055d.dll" (ByVal Data1 As Integer, ByVal Data2 As Integer)
    11. Private Declare Sub ClearAnalogChannel Lib "k8055d.dll" (ByVal Channel As Integer)
    12. Private Declare Sub SetAllAnalog Lib "k8055d.dll" ()
    13. Private Declare Sub ClearAllAnalog Lib "k8055d.dll" ()
    14. Private Declare Sub SetAnalogChannel Lib "k8055d.dll" (ByVal Channel As Integer)
    15. Private Declare Sub WriteAllDigital Lib "k8055d.dll" (ByVal Data As Integer)
    16. Private Declare Sub ClearDigitalChannel Lib "k8055d.dll" (ByVal Channel As Integer)
    17. Private Declare Sub ClearAllDigital Lib "k8055d.dll" ()
    18. Private Declare Sub SetDigitalChannel Lib "k8055d.dll" (ByVal Channel As Integer)
    19. Private Declare Sub SetAllDigital Lib "k8055d.dll" ()
    20. Private Declare Function ReadDigitalChannel Lib "k8055d.dll" (ByVal Channel As Integer) As Boolean
    21. Private Declare Function ReadAllDigital Lib "k8055d.dll" () As Integer
    22. Private Declare Function ReadCounter Lib "k8055d.dll" (ByVal CounterNr As Integer) As Integer
    23. Private Declare Sub ResetCounter Lib "k8055d.dll" (ByVal CounterNr As Integer)
    24. Private Declare Sub SetCounterDebounceTime Lib "k8055d.dll" (ByVal CounterNr As Integer, ByVal ByValDebounceTime As Integer)
    25. Private Declare Function ReadBackDigitalOut Lib "k8055d.dll" () As Integer
    26. Private Declare Sub ReadBackAnalogOut Lib "k8055d.dll" (ByRef Buffer As Integer)
    27. Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    28. OpenDevice(0)
    29. ClearAllDigital()
    30. fehlerfrei.Visible = False
    31. störung.Visible = False
    32. End Sub
    33. Private Sub anschalter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles anschalter.Click
    34. SetDigitalChannel(1)
    35. End Sub
    36. Private Sub ausschalter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ausschalter.Click
    37. ClearDigitalChannel(1)
    38. End Sub
    39. Private Sub beender_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles beender.Click
    40. ClearAllDigital()
    41. CloseDevice()
    42. Close()
    43. End Sub
    44. End Class