Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Frage zu RS232 mit Emfangen von Daten ?!? (https://www.delphipraxis.net/134844-frage-zu-rs232-mit-emfangen-von-daten.html)

gizmoh 30. Mai 2009 12:21


Frage zu RS232 mit Emfangen von Daten ?!?
 
Das Senden über die RS232 (ComPort) geht super aber das empfangen wieder (Daten-Strings)
geht irgent wie nicht ????

--> auszug:
Delphi-Quellcode:
 procedure TForm1.ComPortTriggerAvail(CP: TObject; Count: Word);

  var I: Integer;
      C: Char;

  function GibZeichen: String;
   begin
    // Ist das Zeichen ein druckbaren Zeichen oder ein Steuerzeichen???
    if Ord(C) >= Ord(ZeichenBlank) then
     // druckbares Zeichen:
     Result := C
    else
     // Steuerzeichen:
     begin
      case c of
       NUL : Result := 'NUL';
       SOH : Result := 'SOH';
       STX : Result := 'STX';
       ETX : Result := 'ETX';
       EOT : Result := 'EOT';
       ENQ : Result := 'ENQ';
       ACK : Result := 'ACK';
       LF : Result := 'LF';
       FF : Result := 'FF';
       CR : Result := 'CR';
       SO : Result := 'SO';
       SI : Result := 'SI';
       DLE : Result := 'DLE';
       DC1 : Result := 'DC1';
       DC2 : Result := 'DC2';
       DC4 : Result := 'DC4';
       NAK : Result := 'NAK';
       ETB : Result := 'ETB';
       CAN : Result := 'CAN';
       SUB : Result := 'SUB';
       ESC : Result := 'ESC';
      else
       Result := IntToStr(Ord(C));
      end;
      // Steuerzeichen in <>:
      Result := '<'+Result+'>';
     end;
   end;

begin
 {Event, dass nach dem Empfangen eines Datenpacketes ausgelöst wird:   }
 {Count: Anzahl der empfangenen Zeichen                                }
 {String auswerten: Gewicht, Waagen-Nummer, ... Weitere Aktionen starten}
 for I := 1 to Count do
  begin
   C := ComPort.GetChar;
   with Edit1 do
    Text := Text + GibZeichen;
    vonWaage := Edit1.Text;

  end;
 end;
kann mir dar eine helfen ?
Ich mache sonst kaum was in Delphi ...

R2009 30. Mai 2009 15:27

Re: Frage zu RS232 mit Emfangen von Daten ?!?
 
Hi,

glaubst du, dass irgendjemand etwas mit deinem Codeschnipsel anfangen kann?
Welche Komponente verwendest du? Asynch pro?
Hast du schon mal gedebuggt?
Wird der Event überhaupt ausgelöst?
Woher weisst du, dass die Senderichtung funktioniert?
Stimmen Baudrate......

Vile Grüsse

gizmoh 31. Mai 2009 12:38

Re: Frage zu RS232 mit Emfangen von Daten ?!?
 
Moin

habs mit dem Empfangen .... habe das Event vergessen grrrrr
habe jetzt nur noch eine kleine frage
bekomme jetzt ja die antwort im memofeld aber immer nur in einer zeile ohne
zeilenumbruch obwol ich ein <CR> und <LF> bekommen.
wie macht mann es am besten ?
ausszug von der antwort:
Zitat:

Kundenr;Kunde;Kundenname;Kundenstrasse;Kundenort;K undenKFZ;Datum;Uhrzeit;LFD;ID;1GW;2GW;Taga;Netto;B rutto;Matterial<CR><LF>1;Meier;Horst Meier;Musterstrasse 12;26229 Neuenburg;Fri-AC 129;29.05.2009;21:12:15;1;15;12000kg;36040kg;;;240 40;Mais<CR><LF>2;Müller;Tim Müller;Am Berg 9;26389 Wilhelmshaven;WHV-TM 906;28.05.2009;09:23:30;2;16;8000kg;27600kg;;;1960 0;Silo<CR><LF>1;Meier;Horst Meier;Musterstrasse 12;26229 Neuenburg;Fri-AC 129;30.05.2009;13:51:26;3;15;11960kg;38020kg;;;260 60;Mais<CR><LF>
der inhalt vom memo wird nachher in einer csv datei gespeichert ...

mfg Giz

Chemiker 31. Mai 2009 13:44

Re: Frage zu RS232 mit Emfangen von Daten ?!?
 
Hallo gizmoh,

Du filterst doch CR und LF in der Procedure ComPortTriggerAvail heraus, wie sollen diese den dann im Memofeld angezeigt werden?

Bis bald Chemiker

gizmoh 31. Mai 2009 20:25

Re: Frage zu RS232 mit Emfangen von Daten ?!?
 
Das macht er aber siehe Zitat .... das ist die Antwort im Memofeld ...
mfg Giz


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz