Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Probleme mit Ansteuerung der seriellen Schnittstelle (https://www.delphipraxis.net/86511-probleme-mit-ansteuerung-der-seriellen-schnittstelle.html)

Dawn87 15. Feb 2007 08:54


Probleme mit Ansteuerung der seriellen Schnittstelle
 
Hallo,

ich habe folgendes Problem:
Ich spreche die COM Schnittstelle an meinem PC an. Ich benutze dazu die PORT.DLL (eine relativ bekannte Freeware DLL).

Wenn ich mit der Funktion OpenCOM() den COM-Port öffne und anschließend Daten empfangen möchte, hängt sich das Programm auf. Dies kann ich beliebig oft rekonstruieren.

Wenn ich jedoch Hyperterminal öffne, kurz eine Verbindung mit dem COM Port aufbaue, diese aber sofort wieder beende und anschließend mein Programm erneut starte - klappt alles wunderbar.

Was macht Hyperterminal anders als ich? Wieso läuft mein Programm nachdem ich HyperTerminal einmal gestartet habe?

Kann mir da jemand weiterhelfen?

Grüße
Stefan

DelphiKlaus 15. Feb 2007 09:18

Re: Probleme mit Ansteuerung der seriellen Schnittstelle
 
Hallo,

hast Du auch die Schnittstellenparameter (Baudrate, Parity, Anzahl Stopbits, Handshake) richtig eingestellt?

Klaus

Dawn87 15. Feb 2007 09:37

Re: Probleme mit Ansteuerung der seriellen Schnittstelle
 
Hallo,

ja. Die werden in HyperTerminal und meinem Programm gleichermaßen gesetzt.

Gibt es für die DLL eigentlich eine "offizielle" Dokumentation? Habe nichts dergleichen gefunden, sondern nur Tutorials die aber nicht sonderlich gut waren.

Grüße
Stefan

shmia 15. Feb 2007 09:43

Re: Probleme mit Ansteuerung der seriellen Schnittstelle
 
Zitat:

Zitat von Dawn87
Ich spreche die COM Schnittstelle an meinem PC an. Ich benutze dazu die PORT.DLL (eine relativ bekannte Freeware DLL).

Ich würde dir empfehlen, eine Delphi Komponente MIT SOURCECODE aber ohne zusätzliche DLL zu verwenden.
Eine Forensuche nach Hier im Forum suchenserielle Schnittstelle liefert dir genügend Empfehlungen.
Der "Unwissende" empfiehlt z.B.: http://sourceforge.net/projects/comport/

cware 15. Feb 2007 12:34

Re: Probleme mit Ansteuerung der seriellen Schnittstelle
 
die erste frage, die gestellt werden sollte:
musst du die einzelnen pins ansprechen können, oder reicht es, zeichen byteweise an das gerät zu schicken?
bei zweiterem kannst du über die winAPI-kapselung gehen CreateFile('COM1',...) oder OpenFile('COM1',...)


cheers...

Dawn87 15. Feb 2007 16:33

Re: Probleme mit Ansteuerung der seriellen Schnittstelle
 
Hallo,

habe das Problem gelöst.

Lag an einem Fehler beim Initialisieren der seriellen Schnittstelle. Habe ein M mit einem N vertauscht und somit einen Paritätsfehler ausgelöst.

Hab es einfach übersehen. Vielen Dank für Eure Hilfe.

Grüße
Stefan

alpen_wasser 28. Feb 2007 23:17

Re: Probleme mit Ansteuerung der seriellen Schnittstelle
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von shmia
Zitat:

Zitat von Dawn87
Ich spreche die COM Schnittstelle an meinem PC an. Ich benutze dazu die PORT.DLL (eine relativ bekannte Freeware DLL).

Ich würde dir empfehlen, eine Delphi Komponente MIT SOURCECODE aber ohne zusätzliche DLL zu verwenden.
Eine Forensuche nach Hier im Forum suchenserielle Schnittstelle liefert dir genügend Empfehlungen.
Der "Unwissende" empfiehlt z.B.: http://sourceforge.net/projects/comport/

Hallo,
erst mal finde ich es Klasse, hier im Forum so viele Tips zu finden. Ich bin nämlich absoluter Delphi-Anfänger. Habe früher als Student strukturierte Programmierung gemacht. Lang ist es her!

Auch ich stehe vor dem Problem eine Steuerung mit einer seriellen Schnittstelle auszulesen bzw. Parametern mittels PC in der Steuerung zu ändern und möchte mir ein kleines Programm in Delphi schreiben.
Habe mir nun auf Deinen Vorschlag hin die cport-3.10.zip heruntergeladen und versucht in Delphi 5 einzubinden. Es kommt beim Compilieren aber zu einer Fehlermeldung (siehe Bild). Wo bekomme ich denn nun die andere Version der Datei her und warum kommt der Fehler überhaupt? Ich hatte beim Compilieren die V. Delphi 5 angewählt.
Wer kann mir bitte einen Tip geben?
Danke.

moonwhaler 1. Mär 2007 07:25

Re: Probleme mit Ansteuerung der seriellen Schnittstelle
 
Soweit ich weiß kommt die ComPort Komponente mit GNUGettext mit, d.h. einem "Übersetzungstool" (auch wieder eine Komponente, wenn man so will). Da du D5 benutzt, musst Du die entsprechende "gnugettext.pas" durch eine spezielle D5 Version derselben im Source-Pfad der ComPort Komponente austauschen. Sollte diese NICHT vorhanden sein (sollte eigentlich irgendwie ausgewiesen sein, wo die steckt), dann lad Dir ne aktuelle Version der GNUGettext von hier runter: http://dybdahl.dk/dxgettext/download/

Gruß.

alpen_wasser 1. Mär 2007 21:45

Re: Probleme mit Ansteuerung der seriellen Schnittstelle
 
Zitat:

Zitat von moonwhaler
... dann lad Dir ne aktuelle Version der GNUGettext von hier runter: http://dybdahl.dk/dxgettext/download/

Gruß.

Von dort habe ich mir soeben aus dem Paket die gnugettext.pas geholt; es ist aber diesselbe Version, die ich schon habe, also eine Version, die angeblich erst ab Delphi 6 läuft.
Stellt sich mir die Frage, woher ich nun tatsächlich eine Version dieser Datei für Delphi 5 bekommen kann :?.
Grüße
Stephan


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:09 Uhr.

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