www.mikrocontroller.net

Forum: PC-Programmierung VB2005-DLL einbinden

Autor: juppi (Gast)
Datum: 25.01.2008 13:59

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: 25.01.2008 14:08

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: 25.01.2008 14:27

Niels Hüsken

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

na und !?
fachlich hast'e was drauf oder bist'e nur trollig
Autor: Bastler (Gast)
Datum: 25.01.2008 14:30

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: 25.01.2008 14:32

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: 25.01.2008 14:35

Autor: juppi (Gast)
Datum: 25.01.2008 14:50

@ 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: 25.01.2008 14:57

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: 25.01.2008 15:31

Ja, denn sie kommt mit Abkürzungen nicht klar.
Autor: juppi (Gast)
Datum: 25.01.2008 16:14

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 t. Firefly (rufus) (Moderator)
Datum: 25.01.2008 16:22

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: 25.01.2008 16:23

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: 25.01.2008 17:16

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: 25.01.2008 17:29

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: 25.01.2008 18:01

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: 25.01.2008 18:08

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: 25.01.2008 18:10

Achso, wusste ich nicht.

Ich programmiere nicht in Basic.
Autor: Niels Hüsken (monarch35)
Datum: 25.01.2008 18:12

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: 25.01.2008 18:17

Ich hätte noch diesen Link zu bieten:

https://secure.vividcluster.crox.net.au/jaycar2005...
Autor: juppi (Gast)
Datum: 26.01.2008 09:20

@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 "stefb" B. (stefan) Benutzerseite
Datum: 26.01.2008 12:09

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: 26.01.2008 13:31

@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: 26.01.2008 13:48

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: 26.01.2008 13:50

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: 26.01.2008 14:18

@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: 26.01.2008 14:21

Ich glaub ich frage mindestens zum fünften mal nach der Schnittstelle...

WELCHE SCHNITTSTELLE IST GEMEINT?
Autor: juppi (Gast)
Datum: 26.01.2008 14:22

rs232  com
Autor: Niels Hüsken (monarch35)
Datum: 26.01.2008 14:30

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: 26.01.2008 14:35

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: 26.01.2008 14:47

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 "stefb" B. (stefan) Benutzerseite
Datum: 26.01.2008 16:06

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: 27.01.2008 00:39

@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 "stefb" B. (stefan) Benutzerseite
Datum: 27.01.2008 02:14

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&s...)


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&h...)

    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 "stefb" B. (stefan) Benutzerseite
Datum: 27.01.2008 02:17

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: 27.01.2008 11:17

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: 27.01.2008 14:48
Dateianhang: steuerung.jpg (28,1 KB, 80 Downloads)
preview image for steuerung.jpg

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: 27.01.2008 14:52

nachsatz
wie kann ich mich direkt mit einem Moderator in verbindung setzen
@Rufus t. Firefly (rufus) (Moderator)
Autor: Stefan "stefb" B. (stefan) Benutzerseite
Datum: 27.01.2008 15:13

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: 27.01.2008 15:38

@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 t. Firefly (rufus) (Moderator)
Datum: 27.01.2008 22:16

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: 27.01.2008 22:40

@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 Buchegger (kbuchegg) (Moderator)
Datum: 28.01.2008 10:11

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: 28.01.2008 11:21

@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: 28.01.2008 11:30

@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 t. Firefly (rufus) (Moderator)
Datum: 28.01.2008 11:35

Moderatoren können Threads nicht sperren, das kann nur Andreas, der
Foren-Admin.
Autor: Stefan "stefb" B. (stefan) Benutzerseite
Datum: 28.01.2008 12:31

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: 28.01.2008 12:55

@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: 29.01.2008 13:31

@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: 05.02.2008 11:24

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 t. Firefly (rufus) (Moderator)
Datum: 05.02.2008 11:31

Verwendest Du möglicherweise einen vorzeichenbehafteten 8-Bit-Datentyp?
Autor: Stefan "stefb" B. (stefan) Benutzerseite
Datum: 05.02.2008 12:30

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: 05.02.2008 18:26

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)
Datum: 05.02.2008 18:42

Hi,

juppi: Dieses Forum ist einfach unhöflicher als viel andere. Damit muss
man leben, wenn man hier