MSCOMM - Zahlen byteweise hexadezimal über die ser. Schnittstelle senden

RamonR

Erfahrenes Mitglied
Hallo,

oder besser gesagt: Hilfe, ich hab ein Problem:

Ich will in meinem Projekt bei Anklicken eines Buttons Zeichen byteweise über die ser. Schnittstelle an einen Microcontroller senden. Allerdings weiß ich nicht wie ich die Output-Anweisung mit Zahlen füttern kann.
Es soll also z.B. die Zahl "&H3a&" auch wirklich als einzelnes Byte übertragen werden.

Hier mein Programmcode

'/*********************************************/

Private Sub Betriebsdaten_Button_Click()
Dim buffer1 As Byte
Dim buffer2 As Byte
Dim buffer3 As Byte
Dim buffer4 As Byte

buffer1 = &H1&
Main.MSComm1.Output = buffer1
Sleep 1

buffer2 = &H6&
Main.MSComm1.Output = buffer2
Sleep 1

buffer3 = &H17&
Main.MSComm1.Output = buffer3
Sleep 1

buffer4 = &H11&
Main.MSComm1.Output = buffer4
End Sub

'/********************************************/

Fehlermeldung beim Anklicken:

Laufzeitfehler 380
Ungültiger Eigenschaftswert.


Danke im Voraus !

Mfg

Ramon Ranke
 
Also soweit ich weiß kann man mit dem MSCOMM-Control nur Charackter-Zeichen senden, also Strings mit einem Zeichen. Somit kannst du auch nur Zahlen von 0 bis 255 senden. Um eine Zahl zu senden musst du sie demnach erst in ein Charackter umwandeln:
Code:
MSComm1.Output = Chr$ (Zahl)
Vielleicht hilft dir das ja was oder ich täusche mich in meinem Wissen....

Edit: Hab's gerade getestet, müsste so funktionieren:
Code:
Main.MSComm1.Output = Chr$ (buffer1)
 
Zuletzt bearbeitet:
Zurück