Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wie kann man die RS 232 Schnittstelle auslesen? (https://www.delphipraxis.net/1116-wie-kann-man-die-rs-232-schnittstelle-auslesen.html)

Andi 20. Okt 2002 16:03


Wie kann man die RS 232 Schnittstelle auslesen?
 
Hi!!



Ich habe mal eine Frage,ob man das mit Delphi machen kann:

Ich habe eine kleine Küchenwaage, die über eine Schnittstelle RS232 verfügt.
2400BPS,8DataBits,1 StopBit, das ganze soll über ein 9 poliges Kabel an den Mausanschluss COM1 oder evtl. sogar wahlweise an Com2 verbunden werden.

Das Kabel habe ich schon!

Ich möchte das,was ausgelesen wird, in eine Variable speichern, damit ich dann mit dem Gewichtswert "hantieren" kann.Er soll in ein LAbel geschrieben werden,und sich dort immer aktualisieren,wenn das Gewicht sich verändert auf der Waage.

Ich habe mal einen seriellen Drucker angeschlossen.Das was "rauskommt" sieht etwa so aus:

"ST+ .14,5kg" wobei das "ST" "Gewichtswert ist stabil" bedeutet.

Kann man auch nur den Gewichtswert in eine Variable speichern? Ich meine hier die 14,5 ??

Ich hoffe, daß ich meine Frage richtig gestellt habe.

Vielen Dank schon mal für Eure Aufmerksamkeit und fürs LESEN!!

MfG

Christian Seehase 20. Okt 2002 16:42

Moin Andi,

erst einmal herzlich willkommen.

Vielleicht hilft Dir das hier schon weiter:

Relaisplatine über COM Port ansteuern

In diesem Thread geht's zumindest schon mal um die Ansteuerung serieller Schnittstellen.

Daniel B 20. Okt 2002 17:01

Hallo Andi und Willkommen,

ich möchte Dir noch eine Komponente empfehlen.
http://www2.arnes.si/~sopecrni/
Sie heisst TComPort und man kann damit super einfach arbeiten. Und die ist auch sehr schnell im Vergleich zu anderen, auch wenn es Dir nicht wirklich was bringen wird.
Man kann damit auchz so arbeiten, das sobald was an der Schnittstelle ankommt, Du damit was machen kannst. Es ist also nciht nötig in einem Timer oder einer Schleife ständig nach Daten zu sehen.

Grüsse, Daniel :hi:

Andi 20. Okt 2002 19:03

DANKE!!!
 
:lol:

Danke, für den WILKOMMENS-GRUSS!!

Vielen Dank für die Links.

Bin noch Delphi-Anfänger,möchte aber anhand dieses WAAGEN-BEISPIELS lernen!

MFG

Andi

Daniel B 20. Okt 2002 19:07

Re: DANKE!!!
 
Zitat:

Zitat von Andi
Bin noch Delphi-Anfänger,möchte aber anhand dieses WAAGEN-BEISPIELS lernen!

Hallo Andi,

schlimm, schlimm, Delphi fängt man doch mit Hello World! an... :twisted: :mrgreen: tztztz... Du solltest Dich :oops: :!: :lol:

Grüsse, Daniel :hi:

Andi 20. Okt 2002 20:19

Hello world!!!
 
:roll:



Hi!

Hast ja schon recht!! ABER ich habe immerhin schon ein kleines Programm geschrieben ,
welches DM in EUR und den Spritverbrauch auf 100km ausrechnen kann!! :bouncing4:

Habe mal vor ca. 10 jahen TurboPascal gemacht und dort auch Hardware-Ansteuerungs Software geschrieben. :lol:

Naja und nach 10 JAhren wieder mit dem proggen anzufangen ist nur etwas gewöhnungsbedürftig!!

Aber : Learning by Doing!! :dancer:

Bitte :D mich nicht aus!!

Danke!

Andi

Daniel B 20. Okt 2002 20:24

Hi,

Dich lacht bestimmt keiner aus. Jeder fängt mal klein an.
Wir freuen uns alle über Beiträge und neue User. :bounce2:
Aber das Du 10 Jahre aufgehört hast. :roll: Hauptsache Du hast wieder angefangen. ;)

Grüsse, Daniel :hi:

Andi 20. Okt 2002 21:19

Ja, leider ich schon wieder!!!
 
Hi!

Ich bins wieder!!

Danke,daß Ihr net gelacht habt! :wink:

Ich habe mir die Tcomport komponente gesaugt.Danke für den link!!

Jetzt habe ich natürlich mehrere Fragen:

Wie kann ich sehen, welche Befehle die Komponente enthält?(Hoff,ich hab die Frage richtig gestellt!)?

Mit dem Beispielprogramm, daß dabei war konnte ich die Waage erfolgreich zum "schnacken" meines Rechners bringen.

Da die Waage permanent den Gewichtswert sendet, werden immer ganz viele Linien mit dem Gewichtswert geschrieben!

Könnt Ihr mir mal ein Beispiel nennen, wie ich es anstelle:

Ein Form mit einem Label,wo der Gewichtswert drinstehen soll, dann ein Button, wenn man auf diesen clickt,daß dann angefangen wird den Gerwichtswert der Waage in das Label zu schreiben.
Der gewichtwert soll sich in dem Label immer "überschreiben" also nicht irgendwie untereinander, wie bei dem Beispielprogramm.

und dann noch ein Button, damit keine Daten mehr von der Waage empfangen werden.

Ach ja, der Gewichtswert soll in eine Variable gespeichert werden.

Ich hoffe,daß das einfach zu realisieren ist, und ich Euch nicht zu sehr beanspruche! :)


Vielen Dank nochmal von mir!!

MfG

Andi :coder:

Daniel B 20. Okt 2002 21:32

Hallo Andi,

in der .zip die Du runter geladen hast, sind noch mehrere .zip drin.
Mit den Sourcen, Eamples, help. Die help.zip musst Du entpacken. Da ist die Hilfedatei drin. Ist allerdings Englisch. Falls Du die deutsche Version brauchst, melde Dich einfach nochmal. Einfach mal die Hilfe durchlesen, bei suchen nach Events, Methods nachschauen.
Ganz interessant für Dich ist folgendes:

Example (inside OnRxChar)

Code:
procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
var
  Str: String;
begin
  ComPort1.ReadStr(Str, Count);
  Label1.Caption := Str;
end;

Example (outside OnRxChar)

Code:
var
  Str: String;
begin
  // set timeouts here or at design time
  ComPort1.ReadStr(Str, NumberOfBytes);
  Label1.Caption := Str;
end;
Sobald was an der Seriellen ankommt, wird die Caption gesetzt. Du brauchst also kein extra Button um es einzuschalten.

Jetzt musst DU nur noch einen Weg finden, bei klick auf einen Button, die Cation des Labels nicht mehr geändert werden kann.

Die einfachste möglichkeit wäre, den ComPort zu schliessen und bei bedarf wieder zu öffnen. Das kannst Du mit einem Button machen, Ein- und Ausschalten.
Soweit Klar?

Grüsse, Daniel :hi:

Hansa 20. Okt 2002 22:28

Hi Andi,

Du mußt unbedingt an das Handshake denken ! Sonst kommt immer irgendwas von der seriellen, egal was Du machst. Ich meine RTX/STX und so, für die Küchenwaage muß ich hoffentlich nicht den ganzen Kram raussuchen. Wundert mich, daß das jetzt schon funktioniert. :mrgreen:

Gruß
Hansa


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 Uhr.
Seite 1 von 4  1 23     Letzte »    

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