Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Welche Sprache und wie in Delphi implementieren? (https://www.delphipraxis.net/154064-welche-sprache-und-wie-delphi-implementieren.html)

tkone 26. Aug 2010 11:17


Welche Sprache und wie in Delphi implementieren?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi. Habe mir ein Interface gekauft, welches über serielle Schnittstelle 64 LEDs ansteuern soll.
Die kurze Anleitung zum Interface ist im Anhang.
Das mitgelieferte Programm ist lediglich für einfache Prozesse angelegt(LEDs in einer Konstellation an, eine nach der anderen, ...). Ich suche jetzt eine Möglichkeit mir ein Delphiprogramm zu schreiben, welches einen von mir definierten Ablauf simuliert.
Leider kann ich mit der verwendeten Programmiersprache nix anfangen, da ich lediglich mit Delphi herumexperimentiere.

Das Programm ist eine exe-Datei und in einem Ordner sind mehrere Dateien, die wie Quellcode aussehen.

RSCOM.BAS (vermutlich der Quellcode zur DLL - enthält Deklarationen)
RSCOM.DLL

WR64.frm (Oberfläche und Funktionen)
WR64.frx (nicht lesbar mit Texteditor)
WR64.vbp (allgemeine Programmparameter)
WR64.vbw (kA)
WR64.EXE

Die Quelltext-Dateien lassen sich durch einen einfachen Texteditor öffnen.
Ich vermute stark, dass es sich um Visual Basic handelt. Die Funktionen und schreibweise sind teilweise auch ähnlich wie bei Delphi und könnten (hoffentlich) einfach implementiert werden.
Die Dateien sind alle angehängt.
Ich hoffe jemand hat Zeit mal die Dateien anzuschauen und mir meine Vermutungen zu bestätigen oder zu wiederlegen.

Gibt es irgendwelche Anmerkungen, was ich bei der Implementierung in ein eigenes Delphiprogramm (D7pro auf Win7) beachten sollten?

Vielen Dank.

Luckie 26. Aug 2010 11:19

AW: Welche Sprache und wie in Delphi implementieren?
 
Du hast recht mit deiner Vermutung, dass es sich um Visual Basic handelt.

Aber die Anhänge fehlen.

himitsu 26. Aug 2010 11:26

AW: Welche Sprache und wie in Delphi implementieren?
 
Zitat:

RSCOM.BAS (vermutlich der Quellcode zur DLL - enthält Deklarationen)
Das werden wohl eher die Header-Deklarationen der DLL sein, also die Schnittstele zur DLL.

Diese müßtest du dir also "nur" nach Delphi übersetzen und könntest sie dann dort verwenden, natürlich zusammen mit der DLL.

shmia 26. Aug 2010 13:27

AW: Welche Sprache und wie in Delphi implementieren?
 
Das Interface hat eine RS232 - Schnittstelle.
Daher würde ich auf die DLL komplett verzichten.
Code:
Die Übertragungsparameter sind 9600,N,8,1. Beim Start des Controllers
sind alle Ausgabedaten Null. Für die Steuerung durch den PC wurde ein einfaches Protokoll
mit drei Bytes definiert: Geräteadresse, Gruppenadresse, Datenbyte zur Ansteuerung von
jeweils acht Ausgängen.
Stattdessen brauchst du eine RS232-Komponente und steuerst damit das Interface direkt an.

himitsu 26. Aug 2010 13:32

AW: Welche Sprache und wie in Delphi implementieren?
 
OK, und wenn die Standardparameter des gewünschten COM-Ports seitens Windows schon auf 9600,N,8,1 stehen, dann reicht auch ein
Delphi-Quellcode:
AssignFile(f, 'COM1')
:stupid:

gammatester 26. Aug 2010 13:41

AW: Welche Sprache und wie in Delphi implementieren?
 
Zitat:

Zitat von himitsu (Beitrag 1045219)
OK, und wenn die Standardparameter des gewünschten COM-Ports seitens Windows schon auf 9600,N,8,1 stehen, dann reicht auch ein
Delphi-Quellcode:
AssignFile(f, 'COM1')
:stupid:

Aber nur wenn im Protokoll ausschließlich ASCII/ANSI-Zeichen und keine Steuerzeichen auftreten, was bei "drei Bytes: Geräteadresse, Gruppenadresse, Datenbyte" eventuell nicht der Fall ist. Und wahrscheinlich gibt's auch Probleme wenn gleichzeitig gelesen und geschrieben werden soll.

himitsu 26. Aug 2010 13:54

AW: Welche Sprache und wie in Delphi implementieren?
 
Nee.

PS: Die sogenannten RS232-Komponenten nutzen oftmals auch nur den Weg über CreateFile (welches im AssignFile gekapselt ist). :stupid:

Robotiker 26. Aug 2010 14:40

AW: Welche Sprache und wie in Delphi implementieren?
 
Zitat:

Zitat von himitsu (Beitrag 1045219)
OK, und wenn die Standardparameter des gewünschten COM-Ports seitens Windows schon auf 9600,N,8,1 stehen, dann reicht auch ein
Delphi-Quellcode:
AssignFile(f, 'COM1')

Nach meiner Erfahrung werden diese Parameter nur beim Start von Windows so in der Hardware eingestellt.

Wenn danach ein Programm die Schnittstelleneinstellungen verstellt hat, bleiben sie so stehen, wie das Programm sie hinterlassen hat.

Bin nicht sicher, ob das allgemein so ist, konnte es aber schon auf diversen PCs reproduzieren. Deswegen sollte man besser immer alle Schnittstelleneinstellungen zuweisen, entweder über BuildCommDCB oder einen selbst erstellten DCB.

gammatester 26. Aug 2010 14:40

AW: Welche Sprache und wie in Delphi implementieren?
 
Zitat:

Zitat von himitsu (Beitrag 1045224)
Nee.

PS: Die sogenannten RS232-Komponenten nutzen oftmals auch nur den Weg über CreateFile (welches im AssignFile gekapselt ist). :stupid:

Ach ja?
Welchen Typ soll denn f haben? Und wie liest und schreibst Du gleichzeitig? Und vor allem: wie setzt und liest Du Steuerleitungen (DTR, RTS etc), wie behandelst Du CTS/DSR?

Robotiker 26. Aug 2010 15:01

AW: Welche Sprache und wie in Delphi implementieren?
 
Zitat:

Zitat von himitsu (Beitrag 1045224)
Die sogenannten RS232-Komponenten nutzen oftmals auch nur den Weg über CreateFile

Natürlich. Man braucht ja den von CreateFile zurückgegebenen Handle in allen anderen APIs die etwas mit der seriellen Schnittstelle tun.

http://www.delphipraxis.net/126702-k...erialport.html


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:44 Uhr.
Seite 1 von 2  1 2      

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