AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TSerial - RS232 ansprechen

Ein Thema von Netblaster · begonnen am 6. Jun 2008 · letzter Beitrag vom 15. Aug 2012
Antwort Antwort
Seite 1 von 2  1 2      
arnold mueller

Registriert seit: 27. Jul 2005
129 Beiträge
 
#1

Re: TSerial - RS232 ansprechen

  Alt 16. Sep 2008, 11:07
Zitat von christian_u:
Es gibt keine Möglichkeit herauszufinden ob etwas an der Schnittstelle hängt, die daten werden dann also einfach ins nirvana gesendet.
Die Handshake Leitungen DTR/DSR nutzt man normalerweise, um herauszufinden, ob die Gegenstelle angeschlossen ist.

Grundlagen gibt es hier:
http://www.sprut.de/electronic/inter...s232/rs232.htm

-
arno
  Mit Zitat antworten Zitat
delphihasen

Registriert seit: 2. Apr 2012
4 Beiträge
 
#2

AW: TSerial - RS232 ansprechen

  Alt 2. Apr 2012, 11:45
Hallo erstmal,

vielen Dank für die Com Unit! Hab allerdings ein Problem:
Ich mochte den Port RTS auf High schalten.

So hab ich mir das vorgestellt


Delphi-Quellcode:
//////////////////////////////////////////////////////////////////////////////////////
procedure TForm1.Button1Click(Sender: TObject);
begin

  with TCom.Create(nil) do
  try
    // com öffnen
    if Open(COM,RTS_DISABLED,DTR_DISABLED) then
    begin
        Memo1.Lines.Add ('Com'+IntToStr(Com)+' ausgewählt!');
        SetRTS(akt);
    end;
  finally
    // com schließen
    Close;
    Free;
end;
///////////////////////////////////////////////////////////////////

Bei der Prozedur SetRTS gibt Delphi mir allerdings die Fehlermeldung "Missing Operator" aus. Die Variable akt(boolean) habe ich zuvor jedoch schon true zugewiesen...

Kann mir jemand helfen???


Vielen Dank für eure Mühen

Geändert von mkinzler ( 2. Apr 2012 um 11:48 Uhr) Grund: Delphi-Tag eingefügt
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#3

AW: TSerial - RS232 ansprechen

  Alt 2. Apr 2012, 12:58
Schmeiß erst einmal das "with" raus. Und dann scheint da noch das "end" zum "finally" zu fehlen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
delphihasen

Registriert seit: 2. Apr 2012
4 Beiträge
 
#4

AW: TSerial - RS232 ansprechen

  Alt 2. Apr 2012, 13:03
Ohne with gehts gar nicht. Sorry end war noch drin-->habs lediglich nicht mitkopiert...

Denke das Problem liegt an der Prozedur:

Delphi-Quellcode:
procedure TCOM.SetRTS(const Value: boolean);
begin
  if (Value = True) then
    EscapeCommFunction(FHandle, WinTypes.SETRTS)
  else
    EscapeCommFunction(FHandle, WinTypes.CLRRTS);
end;
Um diese auszuführen bzw. RTS zu schalten sollte ich sie doch lediglich so:
SetRTS(true); ausführen können oder nicht?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#5

AW: TSerial - RS232 ansprechen

  Alt 2. Apr 2012, 13:08
Wie ist es so (ohne with)?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  ACom: TCom;
begin
  ACom := TCom.Create(nil);
  try
    // com öffnen
    if ACom.Open(COM,RTS_DISABLED,DTR_DISABLED) then
      try
        Memo1.Lines.Add ('Com'+IntToStr(Com)+' ausgewählt!');
        ACom.SetRTS(akt);
      finally
        // com schließen
        ACom.Close;
      end;
  finally
    ACom.Free;
  end;
end;
[edit] Steht da wirklich ein Vergleich mit true im Komponentencode? Wirf den lieber raus, da fehleranfällig. [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von guinnes
guinnes

Registriert seit: 28. Feb 2007
Ort: Bottrop
265 Beiträge
 
Delphi 5 Enterprise
 
#6

AW: TSerial - RS232 ansprechen

  Alt 2. Apr 2012, 13:10
Delphi-Quellcode:
procedure TCOM.SetRTS(const Value: boolean);
begin
  if (Value = True) then
    EscapeCommFunction(FHandle, WinTypes.SETRTS)
  else
    EscapeCommFunction(FHandle, WinTypes.CLRRTS);
end;
http://www.delphi-treff.de/tutorials...faengerfehler/
Glückauf
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.388 Beiträge
 
Delphi 12 Athens
 
#7

AW: TSerial - RS232 ansprechen

  Alt 2. Apr 2012, 13:12
Das =True ...
Liegt aber nicht am delphihasen.


Was ist akt ?
Und an RTS_DISABLED kann es nicht liegen?
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
delphihasen

Registriert seit: 2. Apr 2012
4 Beiträge
 
#8

AW: TSerial - RS232 ansprechen

  Alt 2. Apr 2012, 13:15
akt ist boolean die ich true gesetzt hab
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.877 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: TSerial - RS232 ansprechen

  Alt 2. Apr 2012, 13:16
 if (Value = True) then
Niemals auf True Prüfen!

Einfach If value
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#10

AW: TSerial - RS232 ansprechen

  Alt 2. Apr 2012, 13:25
Möchte das jetzt noch jemand erwähnen?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:14 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