kannst du mir al deine Codes zu testen des Input-Befehls geben? das wäre super !!
mfg
jagdfalke
kannst du mir al deine Codes zu testen des Input-Befehls geben? das wäre super !!
mfg
jagdfalke
ihr könnt einen string nicht mit einem wort vergleichen. visualbasic/delphi empfängt immer nur string, wenn ich dann eine zahl haben möchte , muss die mit "val" aus dem string ziehen.. Bascom kann aber auch zahlen versenden die dann immer bei visualbasic als string erscheinen. da ein wort 2 byte hat, erscheinen immer nur deine beiden letzten buchstaben extra.
mfg pebisoft
Hi, wir haben das Problem in den Griff bekommen: Das VB/Dephi Program sammelt einfach solange die Strings bis der Zeilenumbruch kommt:
@pebisoft:Code:procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer); var Str: String; position: integer; const strUmbruch = #13 + #10; begin ComPort.ReadStr(Str, Count); Serial_in := Serial_in + Str; position := pos(strUmbruch, Serial_in); if position <> 0 then begin Delete(Serial_in, length(Serial_in)-1, length(serial_in)); listbox1.items.add(Serial_in); Serial_in := ''; end; end;
Und wie funktioniert das beim Senden von Strings an das Board?
mfg
jagdfalke
@jagdfalke
Ich habe genau deinen Code verwendet und nur aus der Word-Variablen eine String-Variable gemacht.kannst du mir al deine Codes zu testen des Input-Befehls geben? das wäre super !!
Bei mir tritt aber wie gesagt dasselbe Problem auch, je nach Grösse die ich für den String reserviere, kann ich halt nur mehr Zeichen senden bevor der Controller aufgibt.Code:$regfile = "m32def.dat" $baud = 9600 $crystal = 8000000 Dim Serial_in As String 20 Do Input Serial_in Waitms 100 Print Serial_in; Waitms 100 Loop End
Bei mir hat es auch nichts damit zu tun, wie oft ich etwas sende, sondern nur damit wieviele Zeichen ich insgesamt sende.
Ja das kann natürlich auch sein, so genau hab ich mir das noch nicht angeschaut.Bei mir hat es auch nichts damit zu tun, wie oft ich etwas sende, sondern nur damit wieviele Zeichen ich insgesamt sende.
Hat irgendjemand ne Lösung? Wir bekommt ihr die Kommunikation zwischen PC und Board hin?
mfg
jagdfalke
Du machst es also genauso wie in meinem Codebeispiel? Und wozu das $chr(13)? Das hab ich net kapiert..
mfg
jagdfalke
das ist der ASCII Code für ein Carriage Return- , oder auch Wagenrücklauf-, oder auch Zeilenende-Zeichen.Und wozu das $chr(13)? Das hab ich net kapiert..
Entspricht dem Drücken der Enter-Taste.
Kann gut sein, dass Bascom keine neuen Input-Zeichen mehr animmt, weil es auf ein "Enter" wartet und VB das nicht automatisch mitsendet.
oh ja, das ist ne gute theorie. muss ich gleich ausprobieren !!!
Funktioniert wundertbar.
thx
Lesezeichen