![]() |
TSerial
Hallo,
ich möchte mit der ToolBox - Kompo an meine Serielle Schnittstelle zwei LED's betreiben. Die eine soll blinken wenn ein Befehl abgearbeitet wird und die andere soll anzeigen ob der Rechner On/ Offline ist. Ich hatte gedacht ob ich dazu das TSerPort verwenden könnte, da ich jede PIN einzeln ansprechen möchte. Aber irgendwie funktioniert das net, es passiert überhaupt nix keine LED keuchtet nichts. Ich verwende folgenden Code: SerPort1.Out_RTS := true; SerPort1.Active :=True; Weiß jemand wieso das net get? Mfg Matthias |
Hi,
ich benutze eine andere Komponente, daher kann cih zu Deiner nicht viel sagen, aber was Du vor hast, kann nicht gehen. An der Seriellen gibt es nur zwei Leitungen, eine fürs Senden und eine fürs Empfangen. Dann noch die Handshake Leitungen, die Du jetzt mal nicht brauchst. Dabei werden die Daten hintereinander gesendet. Wenn Du egal was für Daten auf die Schnittstelle ausgeben würdest, dann würde Deine LED dauern leuchten, wenn es nicht gerade ein Befehl ist der in einer ms schon wieder weg ist, dann wirst Du warscheinlich das "kurze" aufblitzen der LED nicht mehr wahrnehmen. Was Du brauchst ist die Parallele Schnittstelle, die hat 8 "einzelne" Leitungen die Du dann einzeln auch ansprechen kannst und somit irgend welche LEDs zum leuchten bringen kannst oder auch nicht. Wenn Du wissen möchtest ob Dein Rechner an ist, dann häng Dir doch eine LED direkt ans Netzteil ;) Oder Du arbeitest mit der parallelen Schnittstelle. Grüsse, Daniel :hi: |
TSeriel
Hallo,
gut das würde einiges erklären. Aber es gibt doch für Unix das CPanel und da geht das mit dem COM1 doch auch, deswegen verstehe ich das ganze net. Beim CPanel fürs Unix kann man damit zwei LED's ansteuern und mit 4 Tasten den Rechner steuern. Sowas wollt ich eben für mein Windows 2000 auch machen. Na gut, vielleicht sollte ich das mal mit der parallelen Schnittstelle versuchen. Mfg Matthias |
Re: TSeriel
Zitat:
Gruß Hansa |
Zitat:
Mfg Matthias |
Natürlich kannst Du das, aber es hakt halt irgendwo. Nur Wo ? Geh doch einfach mit dem Holzhammer hin, mache eine Endlosschleife und schicke daten ohne Ende. Irgendwann muß das Teil doch leuchten. Dazu mußt Du natürlich den richtigen Draht finden. Wahrscheinlich ist Dein Signal nur zu kurz.
Gruß Hansa |
Re: TSeriel
Zitat:
Zitat:
Man kann natürlich an die Sendeleitung eine LED dran machen, und schick mal eine Datei zur seriellen, da wird die LED schon leuchten, aber ob das gewollt ist? Ein einfach Ein- und Ausschalten der LED erreicht man am einfachsten mit der parallelen, dafür gibt es zig-Delphi Projekte, die nichts anderes machen als an der parallelen Port zu setzen und wieder zu löschen. Achja, entkoppeln wäre auch nicht schlecht, und vergleiche mal die Daten die rausgehen, mit denen die wieder rein kommen. Würde mich mal interessieren ob die gleich sind. Das mit den zwei LEDs und vier Tastern, erklär mir mal bitte wie Du das mit der seriellen machen willst! Ohne extra Hardware!! Mit der parallelen kein Thema. Wie das unter UNIX ist weiss ich nicht, glaube aber nicht das die serielle da anders aussieht. Grüsse, Daniel :hi: |
Zitat:
Gruß Hansa |
Nee, funktioniert nicht: Wenn ich die TSerPort - Kompo nehme und den Holzhammer auspacke und die Schnittstelle 50 mal in der Sekunden mit Daten bombardiere leuchtet nix. Ich habe im Test die RTS Leutung verwendet.
Wenn ich TSeriel verwende und nen Text über die Schnittstelle schicke dann leuchtet die LED die ich an PIN 3 und 5 habe sowie die an 4 und 5 aber auch an 5 und 7. Es kommt also auf allen eine Spannung an. Was mache ich nur verkehrt? :? :wall: :x Mfg Matthias |
Ich beahupte das da ein schöner Controller dazwischen hängt. Sonst würdest Du niemals ein Blinken wahrnehmen, sondern alles LEDs würden leuchten und sonst nichts.
Du kennst ja die zwei Monitore unten rechts im Tray, die Blinken beim Senden und Empfangen, das ist nichts anderes. Die einzigste möglichkeit die ich sehe, um eine LED an der seriellen zum leuchten zu bringen, ist sie TxD und Masse, mit einem Vorwiderstand, und dabei ständig die serielle zu füttern, ständiges Daten raus schreiben. Und zwar nicht gerade wenig. Schreib in einer Endlosschleife irgend ein Ascii-Zeichen raus. Und zwar schnell. Dann würde sie auch nur dauerleuchten. Aber das halte ich für nciht gerade sinnvoll. Anders ist es bei der parallelen. Da hat man 8 Port, die als Ein- oder Ausgänge benutzt werden können. Da könnte man auch mit LEDs und Tastern arbeiten. Man muss nur alles schön entkoppeln, wenn man sich das Motherboard nicht kaputt machen will! Da kann man einzelne Ports einfach Ein.- und weider Ausschalten. Ich denke sowas hat Er gesucht. An der seriellen gibts das TxD fürs Senden, das RxD fürs Empfangen und CTS und RTS fürs Handshake. Das man aber Hardware-Technisch setzen muss. Man kann per Software nur das Handshake Einschalten! Und überprfüen ob es gerade gesetzt ist. Aber nicht selbst setzen. Das regelt der IC der seriellen. Man könnte das ganze natürlich wieter treiben. Man besorge sich einen PIC. Ein einfachen 16F84, lernt etwas ASM, der 16F83 hat nur 32 Befehle. Da könnte man ein Programm schreiben, das Daten von der seriellen auswertet und entsprchend die Ports des PICs setzt. Aber das würde jetzt etwas zuweit gehen. Wie gesagt, ich schlage immernoch die parallele vor. Ist die einfachste Möglichkeit. Nur das Entkoppeln sollte man nicht auslassen und vorsichtig sein mit dem was man anschliesst, denn der Port liefern nur sehr wenig Strom! Grüsse, Daniel :hi: //<-- dem jetzt langsam die Tinte in der Tastatur ausgeht :evil: |
Code:
Grüsse, Daniel :hi:
Pin Ein/Ausgang Bezeichnung
1 Ausgang 4 DCD Data Carrier Detect 2 nc nc 3 Ausgang 3 TxD Transmit Data 4 Ausgang 1 DTR Data Terminal Ready 5 Masse GND Ground 6 Eingang 2 DSR Data Set Ready 7 Ausgang 2 RTS Request To Send 8 Eingang 1 CTS Clear To Send 9 Eingang 3 RI Ring Indicator |
Zitat:
Schalte doch mal in Deiner Komponente das Handshake aus. Oder mach Dir zwei Buttons zum Ein- und Ausschalten des HS. Grüsse, Daniel :hi: |
ACHTUNG !
Nur kurz : glaube Du brauchst 4 und 5 und das über Kreuz !! 1:1 geht das sowieso nicht. Gruß Hansa |
Zitat:
Ich habe an jeder LED einen 2,2 K Widerstand hängen. |
Zitat:
Btw: Das Signal ist nciht unterschiedlich hoch, sondern mal Low und mal High, es geht hier um TTL-Signale. 5V oder 0V, dazwischen gibt es nichts. Zitat:
Grüsse, Daniel :hi: |
Zitat:
![]() eine Bauanleitung für die Serielle schnittstelle gefunden. Das was dort steht scheint aber so net zu stimmen?! :x Kann ich denn mit der parallelen auch ereignisse abfangen wenn ich z.B. ne Taste angeschlossen habe und die der Benutzer gedrückt hat? Und wo finde ich für Delphi da in paar Anleitungen, weil mit VB sowas zu machen ist Sch.... da das immer die AktiveX KOmpos brauch und die registriert werden müssen. :mrgreen: Mfg Matthias |
Hallo!
Zitat:
Nur: Serielle Schnittstellen arbeiten NICHT mit 5V! Da sind entweder +15V oder -15V (negativ gegen Masse) dran (naja, beim PC vielleicht auch nur 12V). LEDs mögen übrigens keine dauernden Verpolungen, also nicht nur den passenden Widerstand, sondern auch eine Diode davorschalten! Theoretisch ist es möglich, die statischen Ausgänge per Programm zu setzen und die statischen Eingänge zu lesen (also alles außer TxD und RxD, das sind die Daten im Takt und verändern sich). Damit kann man dann 2 LEDs und 3 Tasten anschließen. Dazu muß der Schnittstellenbaustein direkt angesprochen werden, mit den Assembler-Befehlen IN und OUT. Kleines Problem: Das geht nur unter MD-DOS Version 7 mit Windows Version 4 (auch bekannt als Win95, Win98 und Win ME; oder eben ältere DOS-Versionen) - unter NT (also NT, 2000, XP) sind diese Assembler-Befehle privilegiert und deshalb nur für Treiber zugelassen. Treiber kann man mit Delphi nicht schreiben. Achja - bei einer seriellen Schnittstelle an USB wird das bestimmt nicht leichter - wo ist da der Port für die Schnittstelle? Sollte ggf. der Treiber bereitstellen. Irgendwo soll es etwas geben, mit dem man angeblich auch unter NT die seriellen und parallelen Ports ansprechen kann. Gruß Dietmar Brüggendiek |
Zitat:
Da kannst Du die Port als Ein- oder Ausgänge nutzen. Und dadurch auch den aktuellen Zustand der jeweiligen Ports abfragen, dadurch auch einen Taster erkennen. Und dann meintwegen eine LED einschalten. Zitat:
Es gibt so viele Projekte. Such mal mit Delphi, parallele, LED u.ä.. Du findest sehr schnell was. Manche sind mit Komponenten und manche in Assembler Code, wo man keine Komponenten braucht. Grüsse, Daniel :hi: |
Zitat:
Zitat:
Code:
Signalpegel Datenleitung Steuer- und Meldeleitungen
1/H -3...-15V +3...+15V 0/L +3...+15V -3...-15V Zitat:
Grüsse, Daniel :hi: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:35 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