-         
+ Antworten
Ergebnis 1 bis 7 von 7

Thema: Visual Basic Erfahrungen mit der Port DLL von H.J.Berndt ges

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    15.09.2004
    Alter
    37
    Beiträge
    188

    Visual Basic Erfahrungen mit der Port DLL von H.J.Berndt ges

    Hi zusammen

    ich versuche mich seit geraumer Zeit mit VB, speziell mit der RS232 programmierung, da ich meinen Roboter damit steuern wollte, das klappt über die Unterroutine sendbyte auch ganz gut. Jetzt habe ich folgende Problemstellung:

    Jetzt möchte ich Daten von meiner C-Control lesen und bei einem bestimmten bytewert grafisch (z.B. durch das erscheinen eines roten kleinen Kreises) anzeigen lassen. wie mache ich das?

    Kann mir jemand helfen?

    Gruß Jens


    PS: Vielleicht habt Ihr ja auch ´n paar nette Linktips.

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    23.04.2004
    Ort
    München
    Alter
    28
    Beiträge
    288
    Hallö !
    Ich hab mir mal ein Terminal für meine C-Control Programmiert. Ich habs so gemacht, dass ich der C-Control ein bestimmte Zahl(in dem Fall 21) geschrieben habe und diese soblad sie die erhalten hat den gewünschten output macht. derweil warted der Pc.

    Code:
    
    Private Sub Kommunikation
    If com.PortOpen = True Then
        com.Output = Chr(21) 'senden der Zahl 21
        Call break                   'warten auf C-control
        empf = Asc(com.Input) 'sobald was da ist den wert in Ascii Konvertieren und in der Var empf speichern
        
    
    'HIER kommt die auswertung der Variablen rein ! Also zb wenn se 1 ist dann soll er ein kästchen rot färben oder so... :
    
    If empf=1 then 
          lblugr(0).BackColor=vbred 
    else 
          lblugr(0).BackColor=vbblack
    Endif
    
    
    Else
        MsgBox "Port ist nicht geöffnet"
    End If
    End Sub
    
    Public Sub break() ' warted darauf das die C-Control was zurückschreibt
    Do
        DoEvents
    Loop Until com.InBufferCount > 0
    End Sub
    Ich hoffe damit ist deine Frage beantworted ?!

    Gruß Javik

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    15.09.2004
    Alter
    37
    Beiträge
    188
    Hallo Javik, leider nicht, das liegt aber nicht an Dir sondern an der DLL, da kann man nämlich RX gar nicht mit auslesen, habe ich jetzt gelesen, also nochmal der Aufruf zum Posten.

    Gruß Jens

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    10.08.2004
    Ort
    Großbardorf
    Alter
    29
    Beiträge
    674
    ich versteh nicht ganz, wieso du ne extra port dll unter VB verwenden willst, wenn du nur die serielle Schnittstelle verwenden willst, es gibt da nämlich ein (ich geh zumindest davon aus) Standartsteuerelement namens "Microsoft Comm Control", mit dem man sehr einfach Daten über serielle Schnittstelle senden und empfangen kann

    ein einfaches Programm zum Datensenden benötigt sogar weniger als normale 10 Zeilen Code, beim Empfangen siehts wahrscheinlich ähnlich aus, nur hab ich das nicht benötigt, also auch noch nicht richtig ausprobiert

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    15.09.2004
    Alter
    37
    Beiträge
    188
    Hi Pascal,

    danke für Deine Antwort. Es mag vielleicht verwunderlich sein, aber ich habe nicht viel Lektüre für VB, also habe ich mir das Buch von Burkhard Kainka gekauft(VB in der Praxis aus der Reihe Elektronik am PC), weil ich eigentlich auf dem Gebiet VB Newbie bin. Das Buch ist auch nicht schlecht, man bekommt eine Art Crashkurs so nach dem Try Error Try again Prinzip. Jedenfalls wird in dem Buch eine eigene, von dem besagten Herrn Berndt geschriebene DLL und natürlich ein dazu passendes Modul benutz. So sendet der Befehl "Sendbyte R" ein Byte mit dem Wert von R (0-255). Also bis hierhin alles no prob. Command Buttons sind ebenfalls kein prob. Das Einzige was eben nicht geht ist das Auslesen von RXD. RXD (hab ich jetzt gelesen) kann nur zum Empfang eines seriellen Signals, nicht aber zu dessen Verwertung genutzt werden,irgendwie warscheinlich als Clock gedacht....
    Die eigentliche Thematik des Buches konzentriert sich eher auf die anderen Leitungen der RS232 Schnittstelle.

    Da ich einen Großteil des Projektes mit dieser DLL bereits fertiggestellt habe wollte ich eigentlich nicht mehr mit was anderem anfangen, allerdings probier ich mal Infos über Deine Methode zu erhalten, vielleicht kann ich damit nochn bissl mehr schaffe.

    Gruß Jens

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    20.08.2004
    Ort
    Nettetal
    Alter
    28
    Beiträge
    107
    Ich hab mir n kleines Prog gebaut, mit dem ich nen Akkustatus über nen A/D Wandler an nem Mega 16 grafisch darstellen kann. Das ganze ist allerdings über das Microsoft Comm Control programmiert. Find ich nunmal einfacher, als noch ne DLL

    Ich habs aber kaum kommentiert. Ich habs nich für nötig gehalten *g*
    Hier is der Link:
    http://board.gsm-modding.de/thread.p...&threadid=1571

    Und hier mal n Bild:


    Das ganze wird hoffentlich bald in C++ unter Linux laufen! *hrhr*

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    10.08.2004
    Ort
    Großbardorf
    Alter
    29
    Beiträge
    674
    du musst nur unter Projekt/Komponenten das Steuerelement "MS Comm Control" anwählen und einbinden, dann unter Eigenschaften des Steuerelements ein paar Einstellungen vornehmen(Baudrate usw. wenn man was daran ändern will), dann noch ein paar Befehle (wie .portopen) und dann müsste man senden und empfangen können

    (allerdings kann ich jetzt nicht nachschauen, weil ich momentan in der Schule bin(Freistunden sind praktisch...))

+ Antworten

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •