Einzelnen Beitrag anzeigen

schweindi

Registriert seit: 4. Feb 2010
60 Beiträge
 
#14

Re: An com port gesendete daten lesen

  Alt 5. Mär 2010, 20:14
okay ich habe jetzt mal TComPort installiert und alles verwendet... also es läuft super, nur beim auslesen hab ich noch probleme:

Also wenn ich

ComPort1.ReadFile(str,255);

mache dann wird ja immer nur 1 zeichen gelesen -> ComDataPacket, stimmt doch oder damit kann man es als "ganzes Packet" lesen?
So dann hab ich start parameter leer gelassen und als Stopparam ist #13, da das Modem ja nach jedem befehl eine neue zeile beginnt...

Doch iwie wenn ich jetzt in meinem virtual com nach dem befehl vom programm etwas eingeben, passiert nichts. Vorher habe ich in meinem Memo immer jeden Buchstaben einzeln gesehen, doch jetzt passiert garnichts, was habe ich vergessen?

Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject); //da sende ich die Eingabe zum port
var Str : String;
    i : Integer;
begin
//write to port
Str := Edit2.Text;
//ComPort1.WriteStr(Str); // string type variable
ComPort1.Write(Str[1], Length(Str)); // no defined type
ComPort1.TransmitChar(#13);
ShowMessage('Write Data Successfull');
//answer
end;
und so sieht mein Packetding aus:

[delphi]object ComDataPacket1: TComDataPacket
ComPort = ComPort1
StopString = '#13'
OnPacket = ComDataPacket1Packet
Left = 48
Top = 200
end
end[/delpi]

das OnPacket Event gibt ja an, wenn ein vollständiges packet gefunden wurde, da hab ich einfach mal ein ShoMessage() reingeschrieben, doch nichts passiert! Wenn ich zb: "abc#13" eingebe im Modem, tut mein programm so, als ob es nichts im InputBuffer hätte.

Ne idee?
  Mit Zitat antworten Zitat