![]() |
Suche ein möglichst günstiges USB-Interface
Hi,
ich möchte für ein kleines Projekt ein Signal an meinen PC senden. Einfach nur ob die Verbindung zwischen 2 Pins vorhanden ist, oder nicht. Über LPT/COM ist das ja alles ganz einfach. Dummerweise haben die neueren PC's zunehmend keine LTP-/Com-Ports mehr (Mac's sowieso nicht), sodass ich wohl oder übel auf USB ausweichen muss. Nun bieten sich ja sachen wie der IO-Warrior an, allerdings sind die für meinen Zweck a) viel zu teuer, und b) viel zu überladen, da ich ja grade mal 1/40 der Funktionen nutzen würde. Dafür will ich mir dann nicht sowas teures anschaffen. Gibts da nicht eine günstigere Alternative mein (recht einfaches) Problem zu lösen? |
Re: Suche ein möglichst günstiges USB-Interface
Nicht wirklich. Die Kosten skalieren nicht weiter nach unten, da ein Microcontroller Mindestvoraussetzung ist.
Ein einfacheres Geraet ist nicht flexibel genug um verkaufbar zu sein. Die Preiskalkulation eines IOWarrior-Starterkits wird vom Umfang der Funktionalitaet ueberhaupt nicht beeinflusst. |
Re: Suche ein möglichst günstiges USB-Interface
Hallo,
es gibt USB-to-Serial bzw. USB-to-LPT Adapter, die dir einen virtuellen Com-Port/Druckerport erzeugen. |
Re: Suche ein möglichst günstiges USB-Interface
Hm gut...hatte ich mir schon fast gedacht.
Dann sollte die USB<->COM - Variante ja die günstigste für mich sein. Das bekommt man ja um die 10€ rum schon. Danke erstmal :) |
Re: Suche ein möglichst günstiges USB-Interface
Dabei aber beachten, dass direkte Portzugriffe sowie Pins direkt einlesen/setzen nicht möglich ist. Die USB-To-XXX Adapter binden die Ports auf logischer Ebene ein und somit stehen dir nur die entsprechenden WinAPI Funktionen für die Geräteklasse zur Verfügung. Also irgendwelche Quellcodes mit eine io.dll, dlportio, etc werden damit nicht laufen.
|
Re: Suche ein möglichst günstiges USB-Interface
Das ist auch nicht nötig wenn der USB->Seriell Adapter alle Steuerleitungen benutzt, also nicht nur die Datenleitungen Tx und Rx sonder auch CTX/CTS usw. Diese kann man übers API auch einzeln steuern/einlesen. Das sollte für seine Zwecke reichen. Rein theoretisch köntest du sogar Rx über deinen Schalter mit Tx verbinden. Sendest du übers COM eine 1 als Daten so müsstest du auch eine 1 empfangen, wenn der Schalter geschlossen ist.
So gesehen reicht ein 1 Euro Handy Datenkabel in der Bucht gekauft. Gruß Hagen |
Re: Suche ein möglichst günstiges USB-Interface
Hat jemand zufällig eine gute Seite wo beschrieben wird wie man an Tx Spannung anlegt und mit Rx einließt?
|
Re: Suche ein möglichst günstiges USB-Interface
Hi
Also, bevor du irgendeine Spannung an den PC legst, abgesehen vom Netzstecker in die vorgesehene Steckdose, überprüfe, ob du den Rechner und die darin enthaltenen Daten noch benötigst. Also Tx heißt TransmitData, das bedeutet, es werden Impulse ausgegeben. Daher bitte nicht irgendeine Spannung dranbasteln..... Rx ist der Draht, der die Impulse eines anderen Rechners (Tx Fremdgerät) empfängt und damit die Pegel einen Stromkreis bilden können, sind die 0-Potentiale (Gnd) verbunden. Man kann nun Tx des eigenen Rechners mit Rx des eigenen Rechners verbinden, das war gemeint, denn dann werden die Impulse des eigenen Rechners eben Empfangen. Wenn nun ein Schalter in diese Leitung eingebaut wird, kann man diese Impulsfolge unterbrechen und der Vergleich gesendete Daten = Empfangene Daten ergibt "False" und ist somit auswertbar. Also laß fremde Stromquellen vonne Schnittstellen weg, wenn du nicht weißt, wie man's richtig macht....... es kostet, und zwar in der Regel mehr wie die hier schon so oft erwähnten Experimentierplatinen. Es steht zu COM, LPT und USB schon jede Menge Info im Forum Gruß oldmax |
Re: Suche ein möglichst günstiges USB-Interface
Äbm...ich wollte ja auch nie eine externe Stromquelle ins Spiel bringen. Dass das nach hinten los geht ist mir schon klar. Wenn dann wollte ich als Quelle den COM-Port nutzen. Nix anderes. Um zu testen ob die Leitung unterbrochen ist wäre es ja auch äußerst unpraktisch erst noch eine externe Stromquelle zu nutzen. (Mal ganz abgesehen von den bereits erwähnten Risiken)
|
Re: Suche ein möglichst günstiges USB-Interface
Also mal langsam ;)
Warum gibts überhaupt den RS232 Standard ? Um Daten korrekt über laaaange Leitungen zu senden und zu empfangen. Also über die Leitungen Rx und Tx sollen Daten fließen. Wenn du nun einfach RX und Tx am Ausgang per Schalter verbindest dann gibt es beim Senden vom PC aus zwei mögliche Zuständen 1.) Schalter ist geöffnet, PC sendet irgendwas über sein Tx raus empfängt über sein Rx aber rein garnichts 2.) Schalter ist geschlossen, das was der PC sendet empfängt er selber wieder Der Spannungspegel an Rx/Tx ist mit maximal +-12 Volt definiert dürfte aber meisten um die +-10Volt betragen. Strom kannst du maximal ca. 10mA aus diesen Leitungen ziehen. Da du ja nur einen simplen Schalter verwenden möchtest musst du hierbei nichts beachten. Einfach Schalter an Rx und Tx anschließen und fertig. Da der RS232 Standard für lange Datenleitungen spezifiert wurde ist das also idel für deine Ein-Schalterlösung. Du könntest auch zb. den Schalter an RS232-Masse nach CTS->Clear To Send legen. Auf PC seite initierst du eine RS232 Kommunikation mit Hardware Handshake und wartest asynchon per Events einfach darauf das der Client also dein Schalter das CTS Signal sendet. Damit ersparrst du dir das Senden und Selberempfangen von Daten über die RS232. Es kann aber nun sein das 1.) der USB-Seriell Treiber kein HW-Handshake unterstützt oder nur unvollständig 2.) dein USB-Seriell Adapter ebenfalls kein HW-Handshake unterstützt in beiden Fällen sind quasi die nötigen Leitungen für die HW-Handshake Signale -> RTS,CTS usw. nicht vorhanden. Ideal wäre über CTS/RTS zu arbeiten und mit RX/TX geht es garantiert. Gruß Hagen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:17 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