Autor Beitrag
-eFu*Crusader-
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Di 06.08.02 05:43 
Hi

Mein Problem ist Folgendes: :cry:

Ich muss über die serielle Schnittstelle ein Gerät ansteuern. Unter Qbasic habe ich dieses hinbekommen. Jedoch geht das mit keiner Komponente unter Delphi. Das Problem ist es wie unter Basic eine Zeichenkette von Ascii Codes zu verschicken. Kann mir vielleicht jemand behilflich sein.

Danke für Eure Hilfe :) :) :)
t-ob-i
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 31



BeitragVerfasst: Di 06.08.02 14:03 
Hallo,

Genau wie unter DOS kannst Du auch unter Windows (inklusive NT) die
seriellen Schnittstellen als Datei öffnen. Benutze CreateFile. Mehr dazu in
der OH.

Tobias
Alfons-G
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 307

Win XP Prof, Linux, Win 7
D5 Prof, D7 Architect, D2005 Architect, D2007 Architect
BeitragVerfasst: Di 06.08.02 15:41 
Es gibt auch Delphi-Komponenten speziell für die serielle Schnittstelle.
Bei der Zeitschrift Toolbox gibt es eine Kompo namens TSerial, die ist ziemlich gut. Allerdings ist das nicht unbedingt nötig, um mal einen Initialisierungsbefehl zu senden. Dafür reicht die Lösung, welche Tobias vorgeschlagen hat.
Bei Torry gibt es auch entsprechende Kompos. Such dort mal mit dem Stichwort serial.

:idea:

_________________
Alfons Grünewald
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Di 06.08.02 16:06 
bei www.swissdelphicenter.ch gibts ne anleitung, wie du String auf den Paralellport oder die serielle schnittstelle schreibst der liest

_________________
In the beginning was the word.
And the word was content-type: text/plain.
-eFu*Crusader- Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Di 06.08.02 19:39 
Tobi,

wie funktioniert das eigentlich genau mit dem WriteFile.

In Basic funktioniert das folgendermassen:

OPEN "COM1:9600,E,7,2" For Random AS #1 // hier wird die com schnittstelle mit den jeweiligen einstellungen geöffnet

Print #1, "NT" // Hier wird dann der jeweilige text gesendet

So ähnlich habe ich das auch in delphi gemacht mit etlichen komponenten. Jedoch hat das Gerät immer eine Fehlermeldung ausgegeben.
t-ob-i
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 31



BeitragVerfasst: Di 06.08.02 19:41 
Hallo,

auf Groups-Goole-Thread
findest du ein komplettes Beispiel für Messgeräte.

Auf www.domis.de/serialng.htm eine fertige deutsche Komponente die alle gängen Windowsversionen untersützt

Aber auch im Swissdelphicenter (direkt Link) wirst du fündig.

Ich empfehle dir die Komponente. Ist wohl das einfachste für dich und sie wird auch komplett mit Source gelifert. Freeware. Außerdem liegen Demos zur Benutzung bei.
Hierbei einfach TSerialNG.SendString('Bell'); nutzten.

Tobias
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Di 06.08.02 19:59 
Wo wir grad beim Thema sind.....

Wo bekomm ich ne Kompo her, mit der ich einzelene Pins des Seriell oder Paralell Ports auf High oder Low setzten kann um z.B. LEDs anzusteuern ???

_________________
In the beginning was the word.
And the word was content-type: text/plain.
t-ob-i
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 31



BeitragVerfasst: Di 06.08.02 20:15 
Zitat:
Wo bekomm ich ne Kompo her, mit der ich einzelene Pins des Seriell oder Paralell Ports auf High oder Low setzten kann um z.B. LEDs anzusteuern ???


Ich hoffe mein Grundwissen reicht aus:
Die Komponente, auf die ich oben hingewiesen habe hat folgenes Feature aufgelistet:
- Steuerung der DTR und RTS Leitungen

Somit müsste das doch eigentlich damit laufen. Sorry, mein Basiswissen ist hierbei nicht das beste :D

Tobias