Synaser - Receive?

Gast #2210418
Lesenswert?

Hallo,

ich bin gerade drüber mit LAZARUS über RS232 zu communizieren.

Senden kann ich ohne Probleme. Das einzige was ich nicht hinbekomme ist 
das empfangen.

Ich hab jetzt die Procedur Recvstring(..) gefunden. Aber wie bringe ich 
das Empfangene dann in ein Memofeld oder so?

Bitte helft mir.

In Codebeispiel wäre spitze!


Danke schonmal!
Gast #2210691
Lesenswert?

Okey. Will nur ma schnell meinen Neuen Stand mitteilen.

Hab jetzt

eine Variable Empf:= ser.RecvPacket(..) deffiniert und wollte jetzt

edit2.Text := Empf



Nun steht dort aber:

"Got ANSIString, TString expected"

..

Nach 3 Stunden auf google weis ich aber immer noch nicht wie ich die 
Verda**te Variable von dem ANSI in den Normalen TString wandeln kann.


Hat da jemand ne Idee!?
Oder nen ganz anderen Ansatz!?

lg
Gast #2211688
Lesenswert?

Hallo zusammen,

ich schliese mich Freddy an und ergänze zugleich noch:

Hab jezt folgenden Code:

procedure TForm1.Button2Click(Sender: TObject);
  var data:string;
      synt : char;

begin
  data:=  Edit1.Text + CR;
  ser.SendString(data);
  sleep(200);
  Edit1.text := ' ';

 recvdt := ser.RecvTerminated(1000,CRLF);
 synt := recvdt[1];

 Panel1.Caption := synt;

end;


________________________

So wenn ich das jetzt teste kann ich ohne Probleme Senden Aber wenn die 
Zeichenkette vom AtMega8 kommt dann kommt ne fehlermeldung:

"Acess voilation" oder so..

Ich geh hier langsam unter SEIT 2 ELENDEN TAGEN such ich und keiner 
Hilft mir.

Bitte ändert das!!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren