www.mikrocontroller.net

Forum: PC-Programmierung VB2005-DLL einbinden


Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo Leute

habe schon über ein jahr  eine ausg.karte
P8055-1 Velleman 2003
8bit aus
5bit ein
2 DA-Wandler
2 AD-wandler

Pc-usb
Demo Prog Funktioniert
habe mich mit VB2005 beschäftigt.
Leider konnte ich die DLL nicht einbinden oder es geht nicht

zusatzfrage
VB 2005 ser. RS232 Ausgabe klappt nur mit sieben Bit (keine textausg.)
Ich brauche aber 8Bit Daten Ausgabe.

ich brauche  8byte (daten)
mache es aber jetzt mit 10 Byte (7 Bit pro Byte)
ist auch nicht schwer aber nicht gut.

bitte keine Hinweise zu engl.seiten.

Danke

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
juppi wrote:

> ich brauche  8byte (daten)
> mache es aber jetzt mit 10 Byte (7 Bit pro Byte)
> ist auch nicht schwer aber nicht gut.

???!!???

> bitte keine Hinweise zu engl.seiten.

Verständlich...bei dem deutsch...

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Niels Hüsken

>Verständlich...bei dem deutsch...

na und !?
fachlich hast'e was drauf oder bist'e nur trollig

Autor: Bastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was, "na und" ???

Wenn man Hilfe erbittet, sollte man sich auch wenigstens ein wenig Mühe 
bei der Formulierung der Frage geben.
Ich verstehe nämlich auch kein Wort von Deinem "Geschreibsel".

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
juppi wrote:

>>Verständlich...bei dem deutsch...

> na und !?

Na Und?! Na du bist ja drollig.
Also zum Einen dürfte hier dein Posting ziemlich fehlplatziert sein, zum 
Anderen habe ich von diesen drei Absätzen kein Wort verstanden.

Autor: Link (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Link (Gast)

danke

er hat's verstanden

@Niels Hüsken (monarch35)
@Bastler (Gast)

dann werden es die verstehen welche das problem schon kennen.
oder wenn es euch interessiet dan fragt konkret nach

habt noch nicht mal gesagt wo das Posting gut plaziert ist!

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt echt Leute, die sind in ihrer Dreistigkeit 
unerreichbar...*kopfschüttel*

Muss echt schwer sein, so eine Suchmaschine zu bedienen.

Autor: Bastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, denn sie kommt mit Abkürzungen nicht klar.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo
@Niels Hüsken (monarch35)
@Bastler (Gast)

regt euch ab!
wenn ihr in meine jahre kommt
werdet ihr vieleicht gar nicht mehr schreiben können.
ist nicht bös gemeint

und jetzt weiter ?
was habt ihr nicht verstanden  (aber bitte nicht alles)
diese kurzfassungen wurden von meinen leuten vor 35 J auch verstanden.
in meisten fällen reicht es wenn die butter auf dem brot ist.
Muß nicht noch geschmiert werden.

also immer höflich

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Antwort kann gerne knapp gehalten sein, eine Frage aber wird 
dadurch erst recht unverständlicher.

Außerdem ist es eine Frage der Umgangsformen, ob man als Fragender eine 
verständliche und höfliche Frage stellt, oder ob man einen 
unstrukturierten Batzen irgendwo hinrotzt und das mit einer 
überdimensionierten Erwartungshaltung koppelt.

Und das ist keine Frage des Alters.

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich bin höflich, aber direkt. Dreist ist es nach meiner Meinung, eine 
Frage zu formulieren ohne auf Verständlichkeit zu achten und dann auch 
noch pampig werden, wenn man nachfragt.

Du sagtest:

> ich brauche  8byte (daten)
> mache es aber jetzt mit 10 Byte (7 Bit pro Byte)

Das bezieht sich auf was? Wenn nicht mit VB, womit machst du es jetzt?

> ist auch nicht schwer aber nicht gut.

was soll nicht schwer sein? wieso nicht gut? Häh?

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

 @Rufus t. Firefly (rufus) (Moderator

wenn meine formulierung nicht exakt genug ist ,werde ich es versuchen zu 
verbessern.
leider habe ich eine schreib-lese schwache und schwierigkeiten mit 
Händen und Fingern.
zudem bin ich schon 15 J Rentner.
Deshalb halte ich mich sehr kurz.
für mich ist sehr schwer zu sehen wenn auf fachliche Fragen
indirekt oder direkt auf meine schreibschwäche eingegangen wird.

Ich bin der Meinung,das wer diese Probleme(in anfrage), schon hatte 
sollte Antworten.
bekomme ich keine werde ich es anders versuchen.
Ich halte es auch so,wenn ich es verstehe kann ich antworten,
wenn nicht keine Antwort.
Interessiert es mich werde ich konkret nachfragen.
sollte ich mich falsch artikuliert haben und sich jemand beleidigt fühlt
>>>endschuldige ich mich hiermit.

jetzt
@Niels Hüsken (monarch35
Ich will 8Byte  seriell in Visual Basic  ausgeben.
es weden immer nur 7 Bit pro daten byte ausgegeben.
Das sin 64 Bit daten die ich senden will.
wenn aber pro byte nur 7 bit information enthalten
sind das 8*7=56 Bit .
ich brauche aber 64   --also muß ich noch 2byte  mehr senden.
56+7=63 reicht nicht  +7 -> 70  jetzt reicht es
Da aber alles Bytweise im bei mir im Pc passiert
wandle ich die 64 Bit (8 Byte) in 7er Gruppen um,
dann kann ich sie senden.

die Gegenstelle decodiert dies und macht daraus wieder ( byte (64 Bit)
einfacher und schneller ist natürlich wenn ich nur 8 Byte empfange.

> habe schon über ein jahr  eine ausg.karte
>P8055-1 Velleman 2003
>8bit aus
>5bit ein
>2 DA-Wandler
>2 AD-wandler

>Pc-usb
>Demo Prog Funktioniert
>habe mich mit VB2005 beschäftigt.
>Leider konnte ich die DLL nicht einbinden oder es geht nicht

was ist hier nicht verständlich
vieleicht dies

>Pc-usb  Karte hat USB anschluß
>Demo Prog Funktioniert   zur Krte mit geliferte Software



MfG

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
juppi wrote:
> leider habe ich eine schreib-lese schwache und schwierigkeiten mit
> Händen und Fingern.

Wenn man sowas vorweg sagt, ist das überhaupt kein Problem.

> zudem bin ich schon 15 J Rentner.

Ich sehe keinen zusammenhang zwischen deinem Alter und einer 
Legasthenie. Auch MS kann man schon mit 30 bekommen. Deshalb find' ich 
die information jetzt etwas nutzlos...

Ausserdem hilft es nicht über das Problem hinweg. Wenn du Fragen 
einstellst, die keiner Versteht, kannst du noch sooft erwähnen, wie alt 
du bist. Naja, schwamm drüber...

> Ich will 8Byte  seriell in Visual Basic  ausgeben.
> es weden immer nur 7 Bit pro daten byte ausgegeben.

Sprichst du gerade von der seriellen Schnittstelle am PC? Oder vom 
K8055?
Soweit ich weiss, sollte es eigentlich nirgens ein Problem sein, eine 
Schnittstelle von 7Bit auf 8Bit umzuschalten.

> was ist hier nicht verständlich
> vieleicht dies
>
>>Pc-usb  Karte hat USB anschluß
>>Demo Prog Funktioniert   zur Krte mit geliferte Software

Nein, der Absatz war verständlich. Den hab ich nicht gemeint.

Autor: Bastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau mal hier:

http://www.velleman.be/downloads/0/user/usermanual...

auf Seite 13.

Beantwortet das Deine Frage zur DLL ?

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bastler wrote:
> http://www.velleman.be/downloads/0/user/usermanual...
>
> auf Seite 13.

Soweit ich weiss, kann VB2005 keinen nativen WindowsCode mehr erzeugen, 
sondern nur noch .NET. Ich glaube, für den abgebildeten Code braucht man 
VisualSTudio6 bzw Visual Basic 6.

Autor: Bastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achso, wusste ich nicht.

Ich programmiere nicht in Basic.

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bastler wrote:

> Achso, wusste ich nicht.

Ich bin auch kein Windowsprogrammierer. Ich stelle nur Vermutungen an. 
Vieleicht könnte wer anders das mal bestätigen?

Autor: Bastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hätte noch diesen Link zu bieten:

https://secure.vividcluster.crox.net.au/jaycar2005...

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Bastler (Gast)

Danke! da war ich schon vorher

@Niels Hüsken (monarch35)

Danke! das kannte ich
habe es aber nicht zum laufen gebracht.

deswegen suchte ich EINEN der mit VB2005 diese karte Ansteuert.
diese karte hat eine sehr langsame befehlsverarbeitung,
aber für eine Modelleisenbahn reichts.
wer dies schon gemacht hat wird auch aus meiner Fragestellung schlau.


>zusatzfrage
>VB 2005 ser. RS232 Ausgabe klappt nur mit sieben Bit (keine textausg.)
>Ich brauche aber 8Bit Daten Ausgabe.

Ich will seriell mit VB2005 8Bit daten pakete ausgeben.

Trotz allen möglichen versuchen in VB  werden immer nur 7 Bit 
DatenPakete ausgegeben.

Um mein Projekt schnell zu beenden mußte ich also mit 7 Bit DatenPaketen 
arbeiten und das ist nicht gut.


@ Rufus t. Firefly (rufus) (Moderator)

>Eine Antwort kann gerne knapp gehalten sein, eine Frage aber wird
>dadurch erst recht unverständlicher.

>Außerdem ist es eine Frage der Umgangsformen, ob man als Fragender eine
>verständliche und höfliche Frage stellt, oder ob man einen
>>unstrukturierten Batzen irgendwo hinrotzt und das mit einer
>überdimensionierten Erwartungshaltung koppelt.

>Und das ist keine Frage des Alters


Meinen Freunden habe ich dies gezeigt.
Sie sind der Meinung das die Frage für den Personenkreis
welche kenntnis davon haben exakt genug ist.
Zitat.
Deine Antwort ist sachlich nicht Korekt.
Ein spruch der schon vor 50 jahren galt

>>>Es gibt keine dummen Fragen,nur dumme Antworten

P.S.
Ich fühle mich nicht angegriffen ! Habe schon zuviel erlebt.

MfG
juppi

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
juppi,

du schreibst einige Male von "allen möglichen versuchen in VB".

Es wäre IMHO einfacher, wenn du deine Versuche an deine Fragen anhängst. 
Dann könnte sich auch ein beliebiger (VB-)Programmierer der Sache 
annehmen, ohne dass er exakte Kenntnis von der P8055-DLL haben muss.

Und um die Sache fett zu machen, könntest du einen Link zur 
Dokumentation oder zu Democode der P8055-DLL angeben.

Kurz:

Baue für potentielle Antworter so viele Hürden ab, wie es mit deinem 
Wissen geht. Das erhöht die Wahrscheinlichkeit, dass jemand deinen Weg 
(die Frage) verfolgt und sich nicht mit deinem Wegweiser (der Form der 
Frage) befasst.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan "stefb" B. (stefan)

Im Forum
pc-Programmierung
 k8055 Digital ports einzeln ansteuern?

Autor: Stefan "stefb" B. (stefan)
Datum: 20.05.2007 10:14


bist du das?

da wurde nur die Karte in C++ angesteuert
ich will es in VB.2005
und habe noch niemanden gefunden der dies macht.

das ist doch verständlich?

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
juppi wrote:
> ich will es in VB.2005

Du musst auch die einzelen Posts verfolgen. Der Post von "Bastler" um 
25.01.2008 18:17 enthält einen Link zu einem weiteren Forum.

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
juppi wrote:

> Ich will seriell mit VB2005 8Bit daten pakete ausgeben.
>
> Trotz allen möglichen versuchen in VB  werden immer nur 7 Bit
> DatenPakete ausgegeben.

Wenn du von der seriellen Schnittstelle des PCs sprichst, ist das 
Quatsch. Das Kontrollobjekt für die serielle Schnittstelle kann man ganz 
einfach auf 8Bit umstellen.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Niels Hüsken (monarch35)

ich verfolge jedes Argument

ser. 8 bit ausg. in allen anderen Progsprachen sind ok.
In VB2005 ist es auch einfach aber es geht nicht (Bei mir)
quatsch gibt es nicht.
Dann sage mir doch einfach wie es in VB2005 geht

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaub ich frage mindestens zum fünften mal nach der Schnittstelle...

WELCHE SCHNITTSTELLE IST GEMEINT?

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
rs232  com

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gut, ich rate einfach mal weiter und nehme an, du verwendest das 
SerialPort-Objekt von VB2005.

Hast du dazu ein Objekt auf die Form gezogen oder instanzierst du das 
Objekt im Code?

Dim port As IO.Ports.SerialPort = New IO.Ports.SerialPort("COM1", 9600, 
parity.Even, 8, stopbits.One)

mit dieser Zeile initialisiert beispielsweise man COM1 auf 9600Bd mit 
gerader Parität, 8 Datenbits, und einem stopbit.

Wenn du das Objekt auf die Form gezogen hast, findest du diese 
Einstellungen in den Eigenschaften des Objektes.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habe ich alles gemacht
leider habe ich die Quelle nich greifbar.
will aber wider anfangen aber eben richtig.
ich hatte damals auch fertige Beispiel Quellcods,
welche ich dann angepast habe.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich glaube , es bringt nichts.

wollte einfach ein Primitivbeispiel (Quellcod)
ein eingabewert wird als DatenByte 8Bit  (nicht im text)
über serielle ausgabe ausgegeben.
wer's kann und will (aber ich glaube bis dahin habe ich es
erledigt

aber Danke an alle

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
juppi wrote:
> @Stefan "stefb" B. (stefan)
>
> Im Forum
> pc-Programmierung
>  k8055 Digital ports einzeln ansteuern?
>
> Autor: Stefan "stefb" B. (stefan)
> Datum: 20.05.2007 10:14
>
>
> bist du das?
>
> da wurde nur die Karte in C++ angesteuert
> ich will es in VB.2005
> und habe noch niemanden gefunden der dies macht.
>
> das ist doch verständlich?

Sicher ist es verständlich. Dort handelt es sich allerdings um die 
K8055 und nicht um die P8055-1 Velleman 2003 wie in deiner Frage. 
Ich weiss nicht, inwieweit beide Karten bzw. die Doku und DLLs beider 
Karten identisch sind.

Ich habe etliche Links zur Programmierung der K8055 auf meiner 
Benutzerseite hier im Wiki, aber von einer P8055 habe ich in deiner 
Frage zum ersten Mal gelesen. Auch die Suche nach P8055 auf der Velleman 
Seite (http://www.velleman.be/be/en/engine.php) bringt mich nicht an die 
Treiber bzw. Doku.

Bei der .NET Geschichte fällt mir der existierende Treiber für K8055 (!) 
und für C# unter .NET ein (http://www.k8055-velleman.at.tt/). Den gab es 
früher frei als Download, inzwischen soll man den Autor per Email 
anschreiben. Ich schätze dieser Teiber kann auch in VB 2005 unter .NET 
hilfreich sein.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan "stefb" B. (stefan)

ich bin nicht böse aber traurig das mir inkompitenz oder unkenntnis 
vorwirft.
aber viele antworten ohne das sie kenntnis des problems
haben.

in einigen bildern erkennt mann eindeutig das K=P ist.
Nicht wer am meisten schreit hat recht.
Ich habe dieses Forum gewält weil es am aktivsten ist.
merke aber das die toleranz fehlt.
aber das kann sich verbessern.
und dies geht auch an den chef!

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hoffe, du wirfst mir jetzt nicht vor, dass ich dir inkompitenz oder 
unkenntnis vorgeworfen hätte. Habe ich nämlich nicht. Geschrieen habe 
ich auch nicht; die Fettmarkierung sollte als Eyecatcher wirken.

Für mich war der Schluss P8055 = K8055 nicht naheliegend. Umso besser, 
wenn es so ist, denn eine K8055 habe ich und kann in der Doku selbst 
nachsehen.

VB 2005 (Express) habe ich nicht installiert und mag das wegen der 
Registrierungsorgie bei M$ auch nicht tun.

Aber ich habe wenige Stellen im WWW gefunden, die wenigstens Quellcode 
haben (du weigerst dich ja beharrlich welchen rauszurücken ;-)

Code 1 von mikey11
(Quelle: http://forum.velleman.be/viewtopic.php?t=147)

Option Strict Off
Option Explicit On
Friend Class Form1
  Inherits System.Windows.Forms.Form
  Dim DoNothing As Boolean
  Dim n As Short
  Private Declare Sub Version Lib "c:\8055\k8055d.dll" ()
  Private Declare Function SearchDevices Lib "c:\8055\k8055d.dll" () As Integer
  Private Declare Function SetCurrentDevice Lib "c:\8055\k8055d.dll" (ByVal CardAddress As Integer) As Integer
  Private Declare Function OpenDevice Lib "c:\8055\k8055d.dll" (ByVal CardAddress As Integer) As Integer
  Private Declare Sub CloseDevice Lib "c:\8055\k8055d.dll" ()
  Private Declare Function ReadAnalogChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer) As Integer
  Private Declare Sub ReadAllAnalog Lib "c:\8055\k8055d.dll" (ByRef Data1 As Integer, ByRef Data2 As Integer)
  Private Declare Sub OutputAnalogChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer, ByVal Data As Integer)
  Private Declare Sub OutputAllAnalog Lib "c:\8055\k8055d.dll" (ByVal Data1 As Integer, ByVal Data2 As Integer)
  Private Declare Sub ClearAnalogChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer)
  Private Declare Sub SetAllAnalog Lib "c:\8055\k8055d.dll" ()
  Private Declare Sub ClearAllAnalog Lib "c:\8055\k8055d.dll" ()
  Private Declare Sub SetAnalogChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer)
  Private Declare Sub WriteAllDigital Lib "c:\8055\k8055d.dll" (ByVal Data As Integer)
  Private Declare Sub ClearDigitalChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer)
  Private Declare Sub ClearAllDigital Lib "c:\8055\k8055d.dll" ()
  Private Declare Sub SetDigitalChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer)
  Private Declare Sub SetAllDigital Lib "c:\8055\k8055d.dll" ()
  Private Declare Function ReadDigitalChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer) As Boolean
  Private Declare Function ReadAllDigital Lib "c:\8055\k8055d.dll" () As Integer
  Private Declare Function ReadCounter Lib "c:\8055\k8055d.dll" (ByVal CounterNr As Integer) As Integer
  Private Declare Sub ResetCounter Lib "c:\8055\k8055d.dll" (ByVal CounterNr As Integer)
  Private Declare Sub SetCounterDebounceTime Lib "c:\8055\k8055d.dll" (ByVal CounterNr As Integer, ByVal DebounceTime As Integer)

  Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  End Sub

  Private Sub Connect_Click()
    Dim CardAddress As Long
    Dim h As Long
    CardAddress = 0
    'CardAddress = 3 - (Check1(0).Value + Check1(1).Value * 2)
    ' Check1(0) in der Zeile vorher funktioniert leider nicht bei mikey11
    h = OpenDevice(CardAddress)
    Select Case h
      Case 0, 1, 2, 3
        Label1.Text = "Card " + Str(h) + " connected"
      Case -1
        Label1.Text = "Card " + Str(CardAddress) + " not found"
    End Select
  End Sub

  Private Sub Form_Terminate()
    CloseDevice()
  End Sub

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Connect.Click
    Connect_Click()
  End Sub
End Class 


Code 2 von mikey11
(Quelle: 
http://forum.velleman.be/viewtopic.php?t=573&sid=a...)


Option Strict Off
Option Explicit On
Imports System.Text
Imports System.Collections

Friend Class Form1
    Inherits System.Windows.Forms.Form
    Dim DoNothing As Boolean
    Dim n As Short
    Dim TotalCommands As Integer
    Dim ScriptCommands As New Hashtable
    Dim StopScript As Integer
    Dim ValidInputs(0 To 100, 0 To 1) As String
    Dim InputID As Integer
    Dim CurrentLocation As Integer = 1
    Dim InputLabels As String
    Dim TotalValidInputs As Integer
    Dim InputDetermine As String = ""
    Dim OutputDetermine As String
    Dim OutputPresent As String
    Dim DigitalInputState As String

    Private Declare Sub Version Lib "c:\8055\k8055d.dll" ()
    Private Declare Function SearchDevices Lib "c:\8055\k8055d.dll" () As Integer
    Private Declare Function SetCurrentDevice Lib "c:\8055\k8055d.dll" (ByVal CardAddress As Integer) As Integer
    Private Declare Function OpenDevice Lib "c:\8055\k8055d.dll" (ByVal CardAddress As Integer) As Integer
    Private Declare Sub CloseDevice Lib "c:\8055\k8055d.dll" ()
    Private Declare Function ReadAnalogChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer) As Integer
    Private Declare Sub ReadAllAnalog Lib "c:\8055\k8055d.dll" (ByRef Data1 As Integer, ByRef Data2 As Integer)
    Private Declare Sub OutputAnalogChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer, ByVal Data As Integer)
    Private Declare Sub OutputAllAnalog Lib "c:\8055\k8055d.dll" (ByVal Data1 As Integer, ByVal Data2 As Integer)
    Private Declare Sub ClearAnalogChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer)
    Private Declare Sub SetAllAnalog Lib "c:\8055\k8055d.dll" ()
    Private Declare Sub ClearAllAnalog Lib "c:\8055\k8055d.dll" ()
    Private Declare Sub SetAnalogChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer)
    Private Declare Sub WriteAllDigital Lib "c:\8055\k8055d.dll" (ByVal Data As Integer)
    Private Declare Sub ClearDigitalChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer)
    Private Declare Sub ClearAllDigital Lib "c:\8055\k8055d.dll" ()
    Private Declare Sub SetDigitalChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer)
    Private Declare Sub SetAllDigital Lib "c:\8055\k8055d.dll" ()
    Private Declare Function ReadDigitalChannel Lib "c:\8055\k8055d.dll" (ByVal Channel As Integer) As Boolean
    Private Declare Function ReadAllDigital Lib "c:\8055\k8055d.dll" () As Integer
    Private Declare Function ReadCounter Lib "c:\8055\k8055d.dll" (ByVal CounterNr As Integer) As Integer
    Private Declare Sub ResetCounter Lib "c:\8055\k8055d.dll" (ByVal CounterNr As Integer)
    Private Declare Sub SetCounterDebounceTime Lib "c:\8055\k8055d.dll" (ByVal CounterNr As Integer, ByVal DebounceTime As Integer)



    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
     

        ClearAllDigital()
        Dim CurrentLine As String = "1"

        Dim Counter As Integer
        'Dim TotalCommands As Integer

        Counter = 1


        Dim readerVar As IO.StreamReader
        readerVar = IO.File.OpenText("c:\8055\default.vel")
        While CurrentLine <> ""
            CurrentLine = readerVar.ReadLine
            ScriptCommands.Add(Counter, CurrentLine)
            Counter = Counter + 1

        End While

        TotalCommands = Counter - 1

        readerVar.Close()

        ScriptBox.Text = ""

        For Counter = 1 To TotalCommands
            ScriptBox.Text = ScriptBox.Text + ScriptCommands(Counter) + ControlChars.CrLf
        Next

        'Determine the Line Numbers where the Inputs
        'or Time Events Occur. Then the intervening lines are
        'evaluated if they begin with the letter o for
        'digital output, or d for attached devices
        'These could be reused for multiple inputs, so they will be identified as
        'belonging to a specific input
        'Once the total Number of Inputs is determined, and the outputs assigned specifically
        'the scan for activation can occur. In the case of Digital Inputs, the Velleman
        'Board will be polled, for Timed events, the Current Time will be
        'Compared to The Timed events.
        For Counter = 1 To TotalCommands
            InputDetermine = ScriptCommands(Counter)
            OutputPresent = ScriptCommands(Counter + 1)

            If Microsoft.VisualBasic.Left(InputDetermine, 1) = "I" And Microsoft.VisualBasic.Left(OutputPresent, 1) = "O" Then ValidInputs(CurrentLocation, 0) = (Counter)
            If Microsoft.VisualBasic.Left(InputDetermine, 1) = "I" And Microsoft.VisualBasic.Left(OutputPresent, 1) = "O" Then ValidInputs(CurrentLocation, 1) = ScriptCommands(Counter)
            If Microsoft.VisualBasic.Left(InputDetermine, 1) = "I" And Microsoft.VisualBasic.Left(OutputPresent, 1) = "O" Then TotalValidInputs = TotalValidInputs + 1
            If Microsoft.VisualBasic.Left(InputDetermine, 1) = "I" Then CurrentLocation = CurrentLocation + 1
        Next

        'a list containing the Numbered Inputs that are valid exist
        'ie. The inputs have at least one output or device indicated after the input


        'The preceeding sequence loads the default script into the textbox
        'but provides no error checking or exception handling. Make sure
        'default.vel is where it says it is.

        Dim i As Long
        Dim Checked As Boolean
        Dim Devices As Long
        Checked = False
        Devices = SearchDevices
        If Devices Then


            For i = 0 To 3
                If (Devices And 2 ^ i) Then
                    If Not Checked Then
                        SetCurrentDevice(i)

                        Checked = True
                        CardStatus.Text = "Card " + Str(i) + " connected"

                    End If
                Else
                End If
            Next i
        End If

        If Devices = 0 Then CardStatus.Text = "No Cards Connected"
        'This preceeding sequence detects connected card, and displays
        'the card address in the status bar otherwise no card is connected and
        'the execute command will be disabled through checking Checked = false
    End Sub

    Private Sub Form_Terminate()
        CloseDevice()  'Closes open card when the application is terminated
    End Sub

    'Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
    '    Connect_Click()
    'End Sub

    Private Sub OpenScriptButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OpenScriptButton.Click       
    End Sub

    Private Sub ExecuteScript()
        'ClearAllDigital() For some reason this command does not work.. go figure
        WriteAllDigital(0) 'Ironically the writealldigital controls the outputs as a binary array where 255 is all 8 inputs turned on and 0 is all off
        Dim Counter As Integer = 1
       
        'Now we need to scan for an occurrence of each of the valid inputs
        'The values returned by ReadAllDigital are as follows
        'Input 1 = 1
        'Input 2 = 2
        'Input 3 = 4
        'Input 4 = 8
        'Input 5 = 16
        'Therefore one statement can be used for checking if
        'We recognize the squared value

        Dim i As Integer = 0
        DigitalInputState = ReadAllDigital

        For i = 1 To 5
            If DigitalInputState = 1 Then InputID = 1
            If (DigitalInputState And 2 ^ i) Then InputID = i + 1
        Next i
        If InputID = 0 Then Return
        'compare the pressed input to the valid inputs, then execute outputs or skips it over
        Dim OutputStartLine As Integer
        OutputDetermine = ""
        Dim InputIDStr As String
        Dim ParsedID As String
        InputIDStr = InputID
        ParsedID = "I" + InputIDStr
        For i = 1 To TotalValidInputs
            If ParsedID = Microsoft.VisualBasic.Left(ValidInputs(i, 1), 2) Then OutputStartLine = ValidInputs(i, 0)
        Next i
        Dim OutputID As String
        Dim OutputNumber As Integer
        Dim EndTimeChar As String = ""
        OutputDetermine = ScriptCommands(OutputStartLine + 1)
        'Process the Output instructions one at a time, making timers for events which
        'will allow continued execution and scanning on the other inputs.
        While Microsoft.VisualBasic.Left(OutputDetermine, 1) <> "I"

            OutputID = Microsoft.VisualBasic.Left(Microsoft.VisualBasic.Mid(OutputDetermine, 2), 1)
            OutputNumber = Convert.ToInt32(OutputID)
            SetDigitalChannel(OutputNumber)
            Dim TimeLeft As String
            Dim Time As String
            Dim TimeRemaining As Integer
            Dim StripValue As Integer
            TimeLeft = Mid(OutputDetermine, 4)
            StripValue = Len(TimeLeft)
            Time = Microsoft.VisualBasic.Left(TimeLeft, StripValue - 2)
            TimeRemaining = Convert.ToInt32(Time)
            System.Threading.Thread.Sleep(TimeRemaining)
            ClearDigitalChannel(OutputNumber)
            OutputStartLine = OutputStartLine + 1
            OutputDetermine = ScriptCommands(OutputStartLine + 1)
        End While
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        ExecuteScript()
    End Sub
End Class

Code von Hatticus
(Quelle: http://www.codeprof.com/dev-archive/92/35-159-925423.shtm)

PublicClass Form1
  ' ClearDigitalChannel(1) turns switch #1 off -- and
  ' SetDigitalChannel(1) turns switch #1 on.
  PrivateDeclareSub SetDigitalChannelLib"K8055D.DLL" (ByVal ChannelAsInteger)
  PrivateDeclareSub ClearDigitalChannelLib"K8055D.DLL" (ByVal ChannelAsInteger)

  PrivateSub CheckBox1_CheckedChanged(ByVal senderAs System.Object,ByVal eAs System.EventArgs)Handles CheckBox1.CheckedChanged
    Dim cb_status = Me.CheckBox1.CheckState
    SelectCase cb_status
      Case 0
        ClearDigitalChannel(1)
      Case 1
        SetDigitalChannel(1)
    EndSelect
  EndSub
EndClass


*Code von Mathias@Åland*
(Quelle: http://www.elektronikforumet.com/forum/viewtopic.php?p=42)
Ergänzungen von Khaki beachten.

Public Class Form1

    Private Declare Function OpenDevice Lib "k8055d.dll" (ByVal CardAddress As Integer) As Integer
    Private Declare Sub CloseDevice Lib "k8055d.dll" ()
    Private Declare Function ReadAnalogChannel Lib "k8055d.dll" (ByVal Channel As Integer) As Integer
    Private Declare Sub ReadAllAnalog Lib "k8055d.dll" (ByRef Data1 As Integer, ByRef Data2 As Integer)
    Private Declare Sub OutputAnalogChannel Lib "k8055d.dll" (ByVal Channel As Integer, ByVal Data As Integer)
    Private Declare Sub OutputAllAnalog Lib "k8055d.dll" (ByVal Data1 As Integer, ByVal Data2 As Integer)
    Private Declare Sub ClearAnalogChannel Lib "k8055d.dll" (ByVal Channel As Integer)
    Private Declare Sub SetAllAnalog Lib "k8055d.dll" ()
    Private Declare Sub ClearAllAnalog Lib "k8055d.dll" ()
    Private Declare Sub SetAnalogChannel Lib "k8055d.dll" (ByVal Channel As Integer)
    Private Declare Sub WriteAllDigital Lib "k8055d.dll" (ByVal Data As Integer)
    Private Declare Sub ClearDigitalChannel Lib "k8055d.dll" (ByVal Channel As Integer)
    Private Declare Sub ClearAllDigital Lib "k8055d.dll" ()
    Private Declare Sub SetDigitalChannel Lib "k8055d.dll" (ByVal Channel As Integer)
    Private Declare Sub SetAllDigital Lib "k8055d.dll" ()
    Private Declare Function ReadDigitalChannel Lib "k8055d.dll" (ByVal Channel As Integer) As Boolean
    Private Declare Function ReadAllDigital Lib "k8055d.dll" () As Integer
    Private Declare Function ReadCounter Lib "k8055d.dll" (ByVal CounterNr As Integer) As Integer
    Private Declare Sub ResetCounter Lib "k8055d.dll" (ByVal CounterNr As Integer)
    Private Declare Sub SetCounterDebounceTime Lib "k8055d.dll" (ByVal CounterNr As Integer, ByVal DebounceTime As Integer)
    Private Declare Sub Version Lib "k8055d.dll" ()
    Private Declare Function SearchDevices Lib "k8055d.dll" () As Byte
    Private Declare Function SetCurrentDevice Lib "k8055d.dll" (ByVal CardAddress As Integer) As Byte

    Const CARD_ADDRESS As Byte = 0              'Card address = 0

    Private Sub test()

        OpenDevice(CARD_ADDRESS)                'Connect to card

        SetAllDigital()                         'All digital outputs ON
        OutputAllAnalog(50, 255)                'Analog output 1 = 50, analog output 2 = 255

        System.Threading.Thread.Sleep(1000)     'Wait 1s

        ClearAllDigital()                       'All digital outputs OFF
        ClearAllAnalog()                        'Both analog outputs OFF

        CloseDevice()                           'Disconnect

    End Sub

    Private Sub testButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles testButton.Click
        test()
    End Sub

    Private Sub exitButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles exitButton.Click
        Me.Close()
    End Sub

End Class

Code von Rod
(Quelle: 
http://forum.velleman.be/viewtopic.php?t=367&highl...)

    Private Sub Send_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Send.Click
        Dim checksum As Integer
        Dim Relays As Byte
        Relays = (TextBox2.Text)
        checksum = (255 - ((((13 + 1 + Asc("B") + (Relays)) / 256) - Int((13 + 1 + Asc("B") + (Relays)) / 256)) * 256)) + 1

        messagestring = Chr(13) & Chr(1) & "B" & (Relays) & Chr(checksum)
        messagestring = messagestring & messagestring
        messagestring = messagestring & messagestring
        SendSerialData(messagestring)
    End Sub

    Sub SendSerialData(ByVal data As String)
        '  Dim enc As Encoding = Encoding.Unicode
        '  Send strings to a serial port.
        Using com1 As IO.Ports.SerialPort = _
        My.Computer.Ports.OpenSerialPort("COM1", 2400, IO.Ports.Parity.None, 8, IO.Ports.StopBits.One)

             '  com1.Encoding = enc 
            com1.WriteLine(data)
        End Using
    End Sub

Interessant, da Rod auch auf ein Problem von Zeichen mit gesetztem 8. 
Bit in VB eingeht.

Daraufhin hat VEL255 von Velleman eine ausführliche Liste mit 
Unterschieden zwischen VB6 und VB 2005 gepostet. Für mich lesen sich die 
Hinweise sehr plausibel und auf jeden Fall beachtenswert.

Rod hat daraufhin seine Probleme (Richtung PC => K8055) so gelöst 
bekommen:

   Sub SendSerialData(ByVal data As String)
        Dim enc As Encoding = Encoding.GetEncoding(1252)
        ' Send strings to a serial port.
        Using com1 As IO.Ports.SerialPort = _
        My.Computer.Ports.OpenSerialPort("COM1", 2400, IO.Ports.Parity.None, 8)
            com1.Encoding = enc
            com1.WriteLine(data)
        End Using
    End Sub

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ADD: zumindest beim Code von Hatticus sind durch Copy&Paste ein paar 
Leerzeichen verloren gegangen. Also vor dem Testen kontrollieren.

Autor: Niels Hüsken (monarch35)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jetzt fühl ich mich aber angegriffen. Das man sich "Intoleranz" 
vorwerfen lassen muss, wenn man auf Misstände hinweist, ist das nächste 
dreiste Stück. Ich verabschiede mich aus diesem Thread.

Vieleicht ein Tipp noch:
@stefb:
Ich glaube, juppi ist eher nach der suche nach einer Datei, die man sich 
runterladen und anklicken kann, worauf hin sich VB öffnet und nach dem 
Klick auf den "Run" button alles funktioniert. Hier Quelltext 
hinzuposten dürfte nutzlos sein.

Autor: juppi (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Stefan "stefb" B. (stefan)


@Niels Hüsken (monarch35)
<Jetzt fühl ich mich aber angegriffen. Das man sich "Intoleranz"
>vorwerfen lassen muss, wenn man auf Misstände hinweist, ist das nächste
>dreiste Stück. Ich verabschiede mich aus diesem Thread.



Das habe ich geschrieben.
ich habe nicht dich gemeint,sonder mich selbst, wenn du kozentriert 
ließt.

>ich bin nicht böse aber traurig das mir inkompitenz oder unkenntnis
>vorwirft.
>aber viele antworten ohne das sie kenntnis des problems
>haben

Du verabschiedest dich mit der überzeugung,ich mache MIST,
obwohl du nicht richtig gelesen hast.
 dieses Problem kommt sehr oft vor.

>Ich glaube, juppi ist eher nach der suche nach einer Datei, die man sich
>runterladen und anklicken kann, worauf hin sich VB öffnet und nach dem
>Klick auf den "Run" button alles funktioniert. Hier Quelltext
>hinzuposten dürfte nutzlos sein.

was ich zugeben muß ich hätte die Fragen getrennt stellen sollen.

>>ansteuern K8055 /P8055 mit VB.2005
die software ist doch dabei,geht blos nicht
>>COM.Ausgabe mit VB.2005

ich habe mich 4Tage mit VB beschäftigt (vor 6-8 Monaten)
Grafigoberfläche vB2005 steuert über 7Bit datenausgabepaket C-Controll
das bedeuteutet Pc steuert Modell
Handsteuer steuert Modell (Grafiganzeige auf Pc)
eigenstänige steuerung.vom steuergerät
auto ablauf
überwachter ablauf (Kinder kännen das modell bedienen)
ich entwickle nur Funktionsmuster
u.s.w.   u.s.w.

@ Stefan "stefb" B. (stefan)
jetzt muß ich ersmal die sooftware suchen
und das wird nicht einfach

Danke an alle und dir besonders habe (dich ja auch gesucht)

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nachsatz
wie kann ich mich direkt mit einem Moderator in verbindung setzen
@Rufus t. Firefly (rufus) (Moderator)

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
juppi:
> >>ansteuern K8055 /P8055 mit VB.2005
> die software ist doch dabei,geht blos nicht

Bei meiner K8055 war nur VB Democode dabei und kein VB .NET Democode. 
Beides hat Unterschiede, wie die vielen verzweifelten Anfragen udn die 
wenigen halbgaren Erfolgsmeldungen im Netz zeigen.

> ich habe mich 4 Tage mit VB beschäftigt (vor 6-8 Monaten)

Velleman hat eine DLL v2 nachgeschoben, die wesentlich verbessert war 
gegenüber der DLL auf meiner K8055 CD.

Ich habe die DLL v2 *5/2007* als Download bei Velleman gezogen. In 
diesem Paket war überhaupt kein VB Democode, sondern nur Democode für 
Borland C (BC) und Visual C (VC). Ich denke aber, dass die hier 
enthaltene K8055D.DLL gegenüber der Version auf der CD vorzuziehen ist. 
Bei mir hatte es etliche Probleme behoben.

Bei deiner Zeitangabe 6-8 Monate könnte es sein, dass du mit veralteten 
Treibern von der CD arbeitest und dass Du von einem Update der Treiber 
profitierst.

> wie kann ich mich direkt mit einem Moderator in verbindung setzen
> @Rufus t. Firefly (rufus) (Moderator)

Auf die markierte Stelle in einem Posting des betreffenden klicken. 
Weiss aber nicht, ob Gäste das können.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan "stefb" B.
ich will VB2005.net nur für kleinere Programme Nutzen damit ich auch für 
XP steuerprogramme entwickeln kann.
was du schreibst wird richtig sein.
jetzt muß ich etwas aktiv ordnen.
nicht umsonst bin ich hier im Umfeld der bekannteste Hardware sammler,
denn meine geräte mussen möglich kostenfrei sein.

Dieses Forum gefällt mir(es ist aktuell)und ich werde mich später 
anmelden.

@Rufus t. Firefly (rufus) (Moderator)
Ich möchte nur nachfragen warum der Thread  von mir gelöscht
wurde,meine Freunde,Kollegen und ich fanden es nicht korekt.

iHr dachte wohl ich melde mich nicht,mußte ausschlafen.
danach schlagzeug 1,5 Std.,damit die Gelenke nicht unbeweglich werden,
sonnst brauche ich bald biologische ersatzteile

sage Ihm (kann jeden passieren.

@Niels Hüsken (monarch35)

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wer auch immer hier einen Thread gelöscht hat, ich war es nicht. 
Entweder einer der anderen Moderatoren oder aber Andreas, der 
Forenbetreiber.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas
@Rufus t. Firefly (rufus) (Moderator)

26.1.2008 ca. 10 Uhr noch vorhanden
26.1.2008 ca. 22 Uhr verschwunden


"offTopic"

es war thread
"es gibt keine dummen Fragen, nur dumme Antworten"
es wurde darin aber mehrmals hingewiesen,
wenn keine Interesse, nicht antworten,dann verschwindet er allein.
ich würde gern den Grund Erfahren, denn willkür ohne Begründung
habe ich jahrzehnte erlebt.


"offTopic" habe ich so verstanden das hier Themen gestellt werden die in 
die anderen  nicht passen.
ich behersche kein englisch, noch nicht einmal Deutsch richtig.

Bin nur für ehrlichkeit und fairnis.
MfG
juppi

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe ihn gelöscht.

Grund:
In diesem Thread gab es keinerlei neue Informationen, die der
Sache dienlich sind. Die Fragestellung war m.E. völlig gleich,
mit der selben Information bzw. der selben Nichtinformation.

Die Antworten ändern sich nicht, wenn immer dieselbe Frage
mit praktisch identischem Wortlaut gestellt werden.

Damit ergibt sich, dass der Thread im Off Topic Bereich
ein sinnloser Thread ist. Das 'Beste' was dir passieren kann,
ist dass sowohl hier als auch dort Antworten kommen. Damit
ist aber Information über mehrere Threads verstreut und damit
ist nun wirklich keinem geholfen. Wir hatten das schon öfter,
dass ein Fragesteller mehrere Threads zum gleichen Thema
eröffnet hat. Für die Antworter ergibt sich dann die unangenehme
Situation, dass in beiden Threads geantwortet wird und die
Leute dieselben Informationen in beiden Threads geben und
teilweise aneinander vorbeireden, weil kein Mensch mehr
verfolgen kann, welche Information im jeweils anderen Thread
schon gegeben wurde.

Juppi: Wenn du das Gefühl hast, dass man dich nicht versteht,
dann musst du deine Fragestellung umformulieren. Einen
neuen Thread mit der identischen Fragestellung zu eröffnen
bringt weder dich noch die Antworter weiter.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Karl heinz Buchegger (kbuchegg) (Moderator)

>>>dies ist o.k. ,hätte in 1-2 tagen darum gebeten.

Mann kann es als schlechtes Beispiel,auch nur sperren.

für mich ist dies auch ein zeichen einer guten Kontrolle,
welche in Deutschland aus gesetzlichen Gründen notwendig ist.
Nicht Gleichzusetzen einer Zensur.
Veschiedene in offtopic sind hart an der Grenze.
Da das Forum für Gäste auch offen ist, besteht die möglich keit ständig 
mit anderen Namen zu erscheinen, oder mit den namen eines Anderen.
Dies förder aber die Aktualität des Forums.

Ich habe alles erfahren ,was ich wollte.

Immer nur eine Frage stellen (Problem),damit die  fragen und antworten
sich in den Verlauf nicht mischen.
dadurch alles noch durcheinander wird.
Auch die schlechteste Fragestellung ist ein Selbstläufer,
sie wird sich nicht durch Nichtbeantwortung erledigen.

Mein Gedankengang war: Wenn 1000 es lesen und einer der dies Problem
kennt antwortet,ist es o.k.

Es klappt eben nicht.

>unstrukturierten Batzen irgendwo hinrotzt und das mit einer
>überdimensionierten Erwartungshaltung koppelt.

das sollte man von berufener Stelle nicht  machen.


ich werde weiter aktiv mitmachen, ich verstecke mich auch nicht.

MfG

juppi

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Karl heinz Buchegger (kbuchegg) (Moderator)

vergessen Lösche diesen Thread in 1/2 tagen,
es ist ein zu groses Durcheinander.
einer der hier nur kurz reinschaut kann nicht klar kommen
MfG
juppi

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moderatoren können Threads nicht sperren, das kann nur Andreas, der 
Foren-Admin.

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
juppi wrote:
> @Karl heinz Buchegger (kbuchegg) (Moderator)
>
> vergessen Lösche diesen Thread in 1/2 tagen,
> es ist ein zu groses Durcheinander.
> einer der hier nur kurz reinschaut kann nicht klar kommen
> MfG
> juppi

Juppi, ohne dir persönlich nahetreten zu wollen - ich bin damit nicht 
einverstanden. "klar kommen" - Wer sich eine Diskussion nicht durchlesen 
und verstehen kann, soll es lassen oder nachfragen.

Ich habe hier ganz klein bisschen Arbeit rein gesteckt und möchte auch 
in Zukunft von dieser Arbeit profitieren z.B. wenn ich mich z.B. 
aufraffe mit diesem neumodischen .NET Geraffel anzufangen.

Dazu habe ich einen den Link hierher in meiner Benutzerseite 
eingerichtet so dass ich selbst den Kram ohne 1 h googeln wiederfinde 
und die essentielle Sachen als Kopie habe (viele Seiten verwittern im 
Netz) sowie - last but not least - bei nächster Gelegenheit andere 
juppis hierher verweisen kann.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan "stefb" B. (stefan)

hallo
wenn du es so siehst, ich habe kein Problem wenns weitergeht.
>>Mann kann es als schlechtes Beispiel,auch nur sperren.

Es ist doch ein gutes Beispiel,das man immer gegenseitig etwas lernen 
kann.

>1 h googeln wiederfinde

ehe ich antworte geht meistens erst die suche los, damit man eine kleine
information über die Post Partner hat.


bin noch nicht mal 2monate im Netz.
vB2005 unreg.(also alles alt) ich glaube jetzt wissen wir ,warum so 
viele unklarheiten gab
und gibt.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan "stefb" B. (stefan)
Bin weiter dran
hat noch nicht geklappt.

wenn du so vorgehst kennst du mich ein bischen.
ich verstecke mich nicht ,wie ich bei manchen bemerken könnte

Gruß

Autor: probst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gruß
>zusatzfrage
>VB 2005 ser. RS232 Ausgabe klappt nur mit sieben Bit (keine textausg.)
>Ich brauche aber 8Bit Daten Ausgabe.
Ich möchte auch in VB.Net einen Datenstring senden.
Bit 7 kommt aber immer unverändert an.
Ich kann bis 127Dez senden .
Will ich z.B. 128 senden kommt auf der Empfängerseite nur 63 an.
Will ich z.B. 255 senden kommt auf der Empfängerseite auch nur 63 an.

oben den Quellcod verstehe ich nicht.
Hat nicht jemand einen kurzen Cod.
Hoffendlich versteht mich einer??

Danke

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Verwendest Du möglicherweise einen vorzeichenbehafteten 8-Bit-Datentyp?

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
probst wrote:
> Ich möchte auch in VB.Net einen Datenstring senden.
> Bit 7 kommt aber immer unverändert an.

Du brauchst nicht alles an Code, was oben steht. Interessant ist dieser 
Codeabschnitt von Rod:

   Sub SendSerialData(ByVal data As String)
        Dim enc As Encoding = Encoding.GetEncoding(1252)
        ' Send strings to a serial port.
        Using com1 As IO.Ports.SerialPort = _
        My.Computer.Ports.OpenSerialPort("COM1", 2400, IO.Ports.Parity.None, 8)
            com1.Encoding = enc
            com1.WriteLine(data)
        End Using
    End Sub


Autor: probst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Public Class Form1
    'Codeabschnitt von Rod:

    Sub SendSerialData(ByVal data As String)
 ?       Dim enc As Encoding = Encoding.GetEncoding(1252)
        ' Send strings to a serial port.
        Using com1 As IO.Ports.SerialPort = _
        My.Computer.Ports.OpenSerialPort("COM1", 2400, 
IO.Ports.Parity.None, 8)
            com1.Encoding = enc
            com1.WriteLine(data)
        End Using
    End Sub



End Class


Fehler
Encoding ist nicht deffiniert

Autor: Lasse S. (cowz) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

juppi: Dieses Forum ist einfach unhöflicher als viel andere. Damit muss 
man leben, wenn man hier Fragen stellt. Daher solltest du dich 
rechtzeitig entscheiden, entweder topqualifiziere, grammatikalisch 
hunderprozentig korrekte Fragen zu stellen, oder ein anderes Forum 
nehmen.

Um deine Frage bzgl. VB und 7-Bit zu beantworten, solange die Frage noch 
ungeklärt sein sollte (hat nach vielen Beiträgen forentypischen 
"Rumgelabers" * keine Lust mehr, alles durchzulesen...):

Ich vermute, dass du das Ergebnis als Integer, Int16 oder ähnlichem 
speicherst. VB interpretiert dabei das erste, höchstwertige Bit als 
Vorzeichen. Alles was also größer als 127 ist, wird negativ. Die 
richtige Alternative ist entweder ein unsigned Integer, oder wie bei 
Textübertragung auch sinnhaft ein "Char".

Probier's mal damit, und wenn's dann noch nicht klappt, melde dich ruhig 
per Mail bei mir.

(Ich arbeite schon länger mit Senioren am PC und kann gut einschätzen, 
dass es dir viel Mühe kostet :))

Gruß, Lasse
PS: Und Moderatoren / Forenbetreiber: Es wäre echt hilfreich, wenn ihr 
die ganzen "scheiss" * Posts löschen würdet. Sowas wie "deine Frage ist 
unverständlich" mag vielleicht ansatzweise stimmen, aber mit ein 
bisschen lesen sollte z.b. obige Frage verständlich sein. Ich habe sie 
zumindest auf Anhieb verstanden... Eine Nachricht wie "Ich verstehe die 
Frage nicht" ist ok, aber bitte ohne persönlichen Angriff 
"Verständlich...bei dem deutsch...".

PPS: "dem deutsch" (da müsste Deutsch doch großgeschrieben werden, oder? 
Bitte keine Diskussion darüber...)

PPPS: Das Sternchen ist für die Forumsetikette und soll fachfremde und 
umgangssprachliche Begriffe kennzeichnen, damit sich auch gar niemand 
beschweren kann... Muss man hier ja wohl machen, oder?

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan "stefb" B. (stefan)

Das problem mit der DLL  habe ich gelöst.
Ich habe ein VB.net Demo auch noch gefunden.
Das ist sehr einfach gehalten.
Programmiere eine Kleinmodellbahnanwendung um die Karte zu Nutzen.
Wird dann im club  angewendet.
Deine Cods haben mir durch die lehrzeichen einen haufen zeit gekostet,
dadurch mußte ich mich aber intensiv mit .net beschäftigen.
Deshalb war die suche und anwendung erfolgreich.
in der schlechtesten Diskusion findet der aufmerksame Leser etwas
konstruktives.(nicht auf dich gemünzt)

das problem seriaus löse ich auch.
aber ich muß erst das programm für eine größere Modellbahn
fertigstellen.VB.net ist sehr gut geeignet die grafikoberfläche
schnell zu erledigen.Es können dann andere leicht Anpassen.
Datum: 05.02.2008 12:30  den cod und viele andere
habe ich auch getestet

danke

@Lasse S. (cowz)
Du schreibst gut ,vieleicht reguliert sich das etwas.
Leider bemerken das nur die, welche es nicht betrifft.
ich glaube du schätzt mich nicht richtig ein,
deshalb würde ich nicht böse sein!

wenn ich angemeldet bin werde ich mich in verbindung setzen.

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jetzt treibt ihr mich schon so weit, dass ich virtuell Visual Basic .NET 
programmiere. Jungs, macht nur so weiter ;-)

Imports System
Imports System.Text    ' <=== !

Public Class Form1
    'Codeabschnitt von Rod:

    Sub SendSerialData(ByVal data As String)
        Dim enc As Encoding = Encoding.GetEncoding(1252)
        ' Send strings to a serial port.
        Using com1 As IO.Ports.SerialPort = _
        My.Computer.Ports.OpenSerialPort("COM1", 2400, IO.Ports.Parity.None, 8)
            com1.Encoding = enc
            com1.WriteLine(data)
        End Using
    End Sub
End Class


See: http://msdn2.microsoft.com/de-de/library/wzsz3bk3(...

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan "stefb" B. (stefan)

der cod ist richtig
aus com1.WriteLine(Data)  muß aber com1.Write(Data) werden.

Jetzt kann ich Einzelwerte und echte Datenstrings senden.

danke
denn durch dich habe ich mich intensiv mit .net
beschäftigt.

Trotzdem verstehe ich nicht das keiner mir diesen kurzen cod posten
wollte oder konnte.(für mich ist hilfe kein problem(Quellcod)
Einer der sich mit .net beschäftigt hat sollte doch dieses problem 
kennen.
Die com schnittstelle wird aber leider von nur 1% benutzt.
Mann muß natürlich Hardware dafür stricken.
Von EINEM der sich extra wegen "Diesem" mit .Net beschäftigt,
wird geholfen.

MfG

P.S   an alle
dieser thread hat erfolg gebracht

Autor: Frank B_. (frank_b) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Juppi,

ein Problem scheint zu sein, dass es hier nur wenige Visual-Basic Kenner 
gibt.
Es kann einfach niemand. Deshalb postet auch niemand Quellcode. Dieses 
Forum ist sehr hardwarenah, das sagt ja auch schon der Name 
"Mikrocontroller.net" - An Deiner Stelle würde ich es mal ein einem 
Visual-Basic Forum versuchen.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Frank B_. (frank_b

Habe ich seit tagen gemacht ,erfolglos.
Von einem Fachmann kann ich erwarten das , er nur antwortet wenn er 
bescheid weis, sonnst schweigt man,ich halte das auch so.

es reicht wenn einer postet,der bescheid weis,oder dies nachvollzieht,
obwohl er es nicht wollte.(vb.net)

die threads wären effektiver.

MfG

Autor: Frank B_. (frank_b) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, Stefan "stefb" B. versucht doch sogar zu helfen, ohne dass er 
selbst VB kann. Dieser Einsatz ist auch nicht selbstverständlich, und 
könnte auch ruhig mal ein wenig gewürdigt werden.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe ich getan,
deutlicher wird er es bestimmt nicht mögen.

Autor: probst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan "stefb" B.

Danke !   es funzt
Schade das nicht alle so korekt antworten.

@juppi (Gast)
Hatte sofort deine Frage Verstanden
Fachleute haben oft den sogenannten Tunnelblick!?

Mit Grüßen

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Blumen ;-)

Ich will "die Kollegen" auch ein bisschen in Schutz nehmen.

Ein Antworten "obwohl man von der Materie keine Ahnung hat", kann gut 
gehen. Es kann aber auch furchtbar in die Hose gehen.

Es ist eine ganz ganz schmale Gratwanderung mit der man sich schnell 
einen Ruf als inkompetenter Schwätzer einhandeln kann.

Deshalb halten sich bestimmt viele an Omis Spruch "Reden ist Silber, 
Schweigen ist Gold."

Und ganz objektiv gesehen - .NET ist hier sehr selten ein Thema. Hier 
ist einfach eine andere Zielgruppe am Werkeln.

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan "stefb" B. (stefan)

>Deshalb halten sich bestimmt viele an Omis Spruch "Reden ist Silber,
>Schweigen ist Gold."

Ist auch meine Meinung!
leider halten sich zu wenige daran,obwohl immer darauf hingewiesen habe.

in VB.net Foren werden diese Fragen wenig angesprochen.
MfG

Autor: ap1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Halli hallo,

Ich möchte klein Anfangen,...
Habe schon in vb6.0 einen Motor (U/min über PC Regelbar) gemacht, hat 
auch funktioniert.
Nun habe ich 6.0 aber nicht mehr, da mein Rechner nen knacks weg hatte, 
und der installer ist iwo in den unendlichen weiten des Dachbodens 
verschollen...
Ich bin also auf VB 2005 Express (.NET) umgestiegen, habe syntax usw 
auch recht schnell kapiert (arbeite seit ungf. 4-5 Monaten damit) und 
habe immer nur "Soft"ware geschrieben, die wirklich nur auf der 
Festplatte und nicht weiter ging. Nun möchte ich aber mal mit Serieller 
Schnittstellenprogrammierung beginnen und habe mir da etwas überlegt.

Ich baue (oder sagen wirs so: ich habs vor :D ) eine Schreibtischlampe 
(3V, Licht soll Trimmbar (heller/dunkler) werden), und ein Radio 
(allerdings baue ich das nicht selbst ;) - ich führe ihm nur mit einem 
Relais Strom zu was sonst die Batterie erledigen würde...) die jeweils 
mit einem "Herzstück" verbunden werden sollen! Dieses Herzstück (ich 
kürze es HS ab) soll an einer Schnittstelle mit dem PC verbunden werden. 
Da das alleine noch nicht reicht, ist mir klar, deshalb wolte ich euch 
nun Fragen:

1.) Könntet ihr mir etwas zum lesen empfehlen, wie ich
a] Eine Schaltung aufbaue die auf Bit und Byte reagiert
b] Ich den PC mit SERIELLER SCHNITTSTELLE mit einer Schaltung 
kommunizieren lassen kann
c] Ich all das überhaupt angehen soll?

2.) Könntet Ihr mir schaltungen (vll Vorgefertigt) empfehlen die
a] solche daten (bit, byte...) verarbeiten? und,
b] sonstige komponenten nennen die wichtig wären?

3.) Könntet ihr mir Codebeispiele posten mit dem ich überhaupt etwas 
(vgl 2.)) an diese Schaltung senden kann?

Ich bin über JEDE HILFE dankbar!!!!!
mfg, ap1!!!
PS: daaaaanke viiielen dank für hilfreiches im vorraus!
PPS: bitte hantiert nicht mit ausdrücken wie: "Du musst erstmal gaaanz 
klein Anfangen" sondern gebt auch gleich hilfestellung dazu
PPPS: falls ihr sagt: Der spinnt (Projekt zu schwer zum anfang,...) gebt 
biiiitte bitte hilfestellung wie ich denn anfangen kann und ob es 
Einbaukarten / Schaltungen etc. zum Üben gibt
PPPPS: alle Kaufempfehlungen "sollten" die 30€ Marke nicht überschreiten 
;) bin noch ein kleiner Student^^

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo ap1
es ist hilfreich zu wissen was du gerne Hardwarmäßig ansteuern willst.
Nur ausgaben oder auch abfragen.
willst du seriel über Rs232  oder direkt sehr preiswert die seriellele
 verunstalten (z.B. schieberegister 4094)
Usb ausgabe Vellemann K8055 Bausatz oder fertigteil.
würde ich für dich empfehlen.
Aus/ein über Centronics mit Port DLL.
Alle möglichkeiten habe ich schon angewendet.
ein ausgabeprogramm für 4094 hängt hier im forum finde es jetzt nicht)

eine aufgabe ist gut aber auc der weg kann das ziel sein
MfG

Autor: ap1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo juppi,

> es ist hilfreich zu wissen was du gerne Hardwarmäßig ansteuern willst.
Ich möchte gerne eine Lampe (3 oder 12 V) ansteuern, diese Stärker oder 
Schwächer (^= heller dunkler) machen können, und einen Radio mit 12 V 
speisen (Die Speisung soll aber über per Relais regelbar sein ^= auch PC 
steuerbar ;) ) und ich möchte mir so 3-4 Kanäle freihalten für eine 
Steckklemme mit der ich das System erweitern kann falls das geht

Aber dafür bräuchte ich etwas unterstützung, ich mach das zum ersten mal 
also bitte etwas milder mit mir umgehen ;)

> willst du seriel über Rs232 oder direkt sehr preiswert die seriellele
> verunstalten (z.B. schieberegister 4094)

Das ist mir egal, hauptsächlich a) ich verstehe das schnell :) und b) 
ich kanns erweitern :D

> Usb ausgabe Vellemann K8055 Bausatz oder fertigteil.
> würde ich für dich empfehlen.

Wenn es über USB leichter geht, ok. ICh weiß aber nicht wie ich USB 
ansteuere :(. Zudem vorgefertigt will ich das nicht, weil ich will was 
draus lernen

Achso ja mit dem Velleman bausatz meinst du da das "USB EXPERIMENT 
INTERFACE BOARD"? Und wie sieht es da mit der Kanalspezifikation aus? 
Hab ich da irgendeine  spezielle Software zum anteuern? Weil einen COM1 
pin ist bis jetzt das einzige was ich ansteuern kann :((

> Alle möglichkeiten habe ich schon angewendet.

Welche war die Praktischste' für dich?
Welche ging denn (auch für nen anfänger vgl mich XD) für einen Anfänger 
leicht zu verstehen?

> Nur ausgaben oder auch abfragen.
Beides. Ausgeben zB Lampe ausschalten, Abfragen: ist lampe 
ausgeschaltet?

> Aus/ein über Centronics mit Port DLL.
das hab ich noch nicht ganz verstanden was meinst du damit?

mfg. ap1

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
schau die karte K8055 an.
ich hatte schwierigkeiten mit einbinden dr DLL in Vb2005.net
ist jetzt ok.
Karte ist "Befehlslangsam" aber gerade für Anfänger gut geeignet ,

WENN ein geeignetes Lauffähiges Programm vorhanden ist.
Kannste haben .
Mit der software ist dein Erstlingswerk in 1 std erledigt.
Die karte kann natürlich noch viel mehr.
hat 8 dig ausg
5 eing
2 DA
2 AD
leider bin ich nur ein "Osterbesucher" und habe nicht alle software 
hier.

MfG

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: ap1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also denkst du ich dürfte "fast" problemlos mit der K8055 zurechtkommen?

> WENN ein geeignetes Lauffähiges Programm vorhanden ist.
> Kannste haben .

ich habe nur vb2005 (net, express)

> Mit der software ist dein Erstlingswerk in 1 std erledigt.

ist da eine beigelegt?

> Die karte kann natürlich noch viel mehr.
> hat 8 dig ausg
> 5 eing
> 2 DA
> 2 AD

Das ist es ja. Ich steige nicht durch wie ich überhaupt mal ne LED zB an 
und ausschalten lasse per PC :( Das hab ich über google auch nirgendwo 
erklärt gekriegt. Hoffe du kannst es ansatzweise :(

> leider bin ich nur ein "Osterbesucher" und habe nicht alle software

was meinst du mit osterbesucher :D?


mfg. ap1 , vielen dank bis hier her

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo

als software ist nur ein Demo beigelegt.
auch verschiedene DLL.
für die ansteuerung brauchst du nur Befehle.
z.B. Diode Ein Aus
ausgabe Dimmerwert.


Private Declare Function OpenDevice Lib "k8055d.dll" (ByVal CardAddress 
As Integer) As Integer
    Private Declare Sub CloseDevice Lib "k8055d.dll" ()
    Private Declare Function ReadAnalogChannel Lib "k8055d.dll" (ByVal 
Channel As Integer) As Integer
    Private Declare Sub ReadAllAnalog Lib "k8055d.dll" (ByRef Data1 As 
Integer, ByRef Data2 As Integer)
    Private Declare Sub OutputAnalogChannel Lib "k8055d.dll" (ByVal 
Channel As Integer, ByVal Data As Integer)
    Private Declare Sub OutputAllAnalog Lib "k8055d.dll" (ByVal Data1 As 
Integer, ByVal Data2 As Integer)
    Private Declare Sub ClearAnalogChannel Lib "k8055d.dll" (ByVal 
Channel As Integer)
    Private Declare Sub SetAllAnalog Lib "k8055d.dll" ()
    Private Declare Sub ClearAllAnalog Lib "k8055d.dll" ()
    Private Declare Sub SetAnalogChannel Lib "k8055d.dll" (ByVal Channel 
As Integer)
    Private Declare Sub WriteAllDigital Lib "k8055d.dll" (ByVal Data As 
Integer)
    Private Declare Sub ClearDigitalChannel Lib "k8055d.dll" (ByVal 
Channel As Integer)
    Private Declare Sub ClearAllDigital Lib "k8055d.dll" ()
    Private Declare Sub SetDigitalChannel Lib "k8055d.dll" (ByVal 
Channel As Integer)
    Private Declare Sub SetAllDigital Lib "k8055d.dll" ()
    Private Declare Function ReadDigitalChannel Lib "k8055d.dll" (ByVal 
Channel As Integer) As Boolean
    Private Declare Function ReadAllDigital Lib "k8055d.dll" () As 
Integer
    Private Declare Function ReadCounter Lib "k8055d.dll" (ByVal 
CounterNr As Integer) As Integer
    Private Declare Sub ResetCounter Lib "k8055d.dll" (ByVal CounterNr 
As Integer)
    Private Declare Sub SetCounterDebounceTime Lib "k8055d.dll" (ByVal 
CounterNr As Integer, ByVal DebounceTime As Integer)



das sind die Befehle in der DLL für VB2005.net

blos zurInformation.

wenn  ich hier zippen kann schicke ich dir das prog
in quellcod.
Änderungen sind schnell gemacht.
ich bin zu besuch bei meinem Enkel.
deshalb ein bischen PC Schwierigkeiten.
schau dir die Karte inzwischen ein bischen an.

MfG

Autor: ap1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Code...
Vielen dank für den code!

> wenn  ich hier zippen kann schicke ich dir das prog
> in quellcod.
> Änderungen sind schnell gemacht.
oh danke! Das w#re nett

> als software ist nur ein Demo beigelegt.
> auch verschiedene DLL.
> für die ansteuerung brauchst du nur Befehle.
> z.B. Diode Ein Aus
> ausgabe Dimmerwert.

Kann das sein, dass es dafür eine vorgefertigte Spezifikation gibt?
Wenn ja: Kann ich die beliebig erweitern?

> ich bin zu besuch bei meinem Enkel.
> deshalb ein bischen PC Schwierigkeiten.
> schau dir die Karte inzwischen ein bischen an.
also frohe Ostern noch ;)

PS: ich habe ein Problem das [...] zu machen
> schau dir die Karte inzwischen ein bischen an.
die Karte gibts nirgendwo unter 45 € zu kaufen .. Ich hätte zwar am 
Dienstag die chance für 44,99€ bei Conrad die Karte zu kaufen aber ich 
weiß nicht ob ich das wirklich alles verstehe und nicht mehr kaputt als 
richtig mache :(

PPS: soll ich sie mir schonmal kaufen?

Hoffe du kannst mir demnächst tipps geben

Autor: ap1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nachtrag:

* gehe ich dann über USB (weil ich im Inet nur USB Experimentierboards 
finde) oder über den COM Port?

mfg, ap1

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo


bin wieder mal inet aktiv
der preis ist mir bekannt, relativ hoch.
die einfache möglichleit mit portDll
über centronics hat aber geschwindigkeitsprobleme zum direkten dimmen.
wenn du aber erst weiter lernen willst,ist diese möglichkeit sehr 
günstig.
mit par transistoren+ R kannst du leuchtdioden und relais schalten
taster oder andere eingabeteile abfragen.
Direkte 3dat ansteuerung von schieberegistern ist für versuche auch 
nicht schlecht.
Beitrag "VB-Programm zur seriellen Ansteuerung von 4094 gesucht"
beinhaltet ein VB.net Quelle

Die entscheidung kann dier keiner abnehmen.
Usb is natürlich zukunftsicher.

direkte rs232 ansteuerung mit controller wollte ich dir nict empfehlen.

wenn du dich entschieden hast wirst du mich schon wiederfinden

Frohe Ostern

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo
K8055 oder P8055 Besitzer

"c:\k8055\k8055d.dll"

nur ein einfaches beispiel.

Option Strict Off
Option Explicit On

Public Class Form1

    '(Quelle: http://forum.velleman.be/viewtopic.php?t=147)
    Inherits System.Windows.Forms.Form
    Dim DoNothing As Boolean
    Dim n As Short
    Private Declare Sub Version Lib "c:\k8055\k8055d.dll" ()
    Private Declare Function SearchDevices Lib "c:\k8055\k8055d.dll" () 
As Integer
    Private Declare Function SetCurrentDevice Lib "c:\k8055\k8055d.dll" 
(ByVal CardAddress As Integer) As Integer
    Private Declare Function OpenDevice Lib "c:\k8055\k8055d.dll" (ByVal 
CardAddress As Integer) As Integer
    Private Declare Sub CloseDevice Lib "c:\k8055\k8055d.dll" ()
    Private Declare Function ReadAnalogChannel Lib "c:\k8055\k8055d.dll" 
(ByVal Channel As Integer) As Integer
    Private Declare Sub ReadAllAnalog Lib "c:\k8055\k8055d.dll" (ByRef 
Data1 As Integer, ByRef Data2 As Integer)
    Private Declare Sub OutputAnalogChannel Lib "c:\k8055\k8055d.dll" 
(ByVal Channel As Integer, ByVal Data As Integer)
    Private Declare Sub OutputAllAnalog Lib "c:\k8055\k8055d.dll" (ByVal 
Data1 As Integer, ByVal Data2 As Integer)
    Private Declare Sub ClearAnalogChannel Lib "c:\k8055\k8055d.dll" 
(ByVal Channel As Integer)
    Private Declare Sub SetAllAnalog Lib "c:\k8055\k8055d.dll" ()
    Private Declare Sub ClearAllAnalog Lib "c:\k8055\k8055d.dll" ()
    Private Declare Sub SetAnalogChannel Lib "c:\k8055\k8055d.dll" 
(ByVal Channel As Integer)
    Private Declare Sub WriteAllDigital Lib "c:\k8055\k8055d.dll" (ByVal 
Data As Integer)
    Private Declare Sub ClearDigitalChannel Lib "c:\k8055\k8055d.dll" 
(ByVal Channel As Integer)
    Private Declare Sub ClearAllDigital Lib "c:\k8055\k8055d.dll" ()
    Private Declare Sub SetDigitalChannel Lib "c:\k8055\k8055d.dll" 
(ByVal Channel As Integer)
    Private Declare Sub SetAllDigital Lib "c:\k8055\k8055d.dll" ()
    Private Declare Function ReadDigitalChannel Lib 
"c:\k8055\k8055d.dll" (ByVal Channel As Integer) As Boolean
    Private Declare Function ReadAllDigital Lib "c:\k8055\k8055d.dll" () 
As Integer
    Private Declare Function ReadCounter Lib "c:\k8055\k8055d.dll" 
(ByVal CounterNr As Integer) As Integer
    Private Declare Sub ResetCounter Lib "c:\k8055\k8055d.dll" (ByVal 
CounterNr As Integer)
    Private Declare Sub SetCounterDebounceTime Lib "c:\k8055\k8055d.dll" 
(ByVal CounterNr As Integer, ByVal DebounceTime As Integer)
    '###################################
    ' hallo mache deine Dll in dieses verz. (c:\k8055\k8055d.dll) ich 
hatte das so gemacht weil es am
    'anfang einfacher für mich war
nachfolgendes nur einfacher cod
    '####################################

    Dim karten_adresse As Long
    Dim adr As Long

    Private Sub Form1_FormClosed(ByVal sender As Object, ByVal e As 
System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
        CloseDevice()
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As 
System.EventArgs) Handles MyBase.Load
        karten_adresse = 0

        adr = OpenDevice(karten_adresse)
        TextBox1.Text = "Kart ADR  " & adr
    End Sub



    Private Sub Button1_Click(ByVal sender As Object, ByVal e As 
System.EventArgs) Handles Button1.Click
        ClearDigitalChannel(1)
    End Sub

    Private Sub Button2_Click(ByVal sender As Object, ByVal e As 
System.EventArgs) Handles Button2.Click
        SetDigitalChannel(1)
    End Sub

    Private Sub VScrollBar1_ValueChanged(ByVal sender As Object, ByVal e 
As System.EventArgs) Handles VScrollBar1.ValueChanged
        OutputAnalogChannel(1, VScrollBar1.Value)
    End Sub

    Private Sub Button9_Click(ByVal sender As Object, ByVal e As 
System.EventArgs)
        SetAllDigital()
    End Sub

    Private Sub Button10_Click(ByVal sender As Object, ByVal e As 
System.EventArgs)
        ClearAllDigital()
    End Sub

    Private Sub Button3_Click(ByVal sender As Object, ByVal e As 
System.EventArgs) Handles Button3.Click
        ClearAllDigital()
    End Sub

    Private Sub Button4_Click(ByVal sender As Object, ByVal e As 
System.EventArgs) Handles Button4.Click
        SetAllDigital()
    End Sub
End Class

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.