Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Impulse über rs232 zählen (https://www.delphipraxis.net/172633-impulse-ueber-rs232-zaehlen.html)

djmaggo 15. Jan 2013 07:05

Impulse über rs232 zählen
 
Hallo Leute,

folgendes:

Ich brauch ein programm, das den RS232 abhöhrt und impulse an der RS232 zählt. Die Impulse bekomme ich über CTS Signal.

Als Verbindung zwischen RS232 und Programm hib ich CPortLib.

Die Haken ist aber, dass wenn ich einen Impuls bekomme, dann soll der halt die Variable auf 1 setzen und über timer 1 Sekunde warten. Wenn aber innerhalb der Sekunde wieder ein Impuls kommt, dann soll der Timer abgebrochen werden und die Variable auf 2 gesetzt werden und Timer wieder 1 Sekunde ablaufen. Wenn die Sekunde vorbei ist, dann soll Quelltext ablaufen.

Wie könnt ich denn das machen?

LG Maggo

Furtbichler 15. Jan 2013 07:13

AW: Impulse über rs232 zählen
 
Delphi-Quellcode:
Procedure TMyIrgendWas.OnCTSChanged(Sender : TObject; CTSEnabled : Boolean);
Begin
  if CTSEnabled then begin
    if not Timer.Active then
      variable :=1
    else if Now - LastSignal < OneSecond then
      variable := 2;
     
    Timer.Active := Not Timer.Active;
    LastSignal := Now;
  end
end;

Procedure TTimer.TimerTimer(Sender : TObject);
Begin
  QuelltextAblaufen();
End;

djmaggo 15. Jan 2013 07:47

AW: Impulse über rs232 zählen
 
Ok, super danke aber bin ein eher ungeübter delpianer.

Mit CTSEnabled meinst du OnCTSChange oder?
Das versteh ich auch nicht ganz 'if Now - LastSignal < OneSecond then'

Danke


Alle Zeitangaben in WEZ +1. Es ist jetzt 17: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