C# SerialPort

Gast #2310200
Lesenswert?

Gallus schrieb:
> ist es möglich mit der SerialPort-Klasse von C# zu erkennen, ob ein
> Widerstand (1 Ohm oder 0 Ohm) am seriellen Ausgang vorliegt?

es ist mit gar keiner Programmiersprache mögliche, weil die Hardware das 
nicht ermitteln kann.

> Mit der Spannung funktioniert es.
was funktioniert mit Spannung?
Gast #2310218
Lesenswert?

Hallo,

vielen Dank für die schnelle Antwort. Mit einem TTL-232RUSB to TTL 
SerialConverter Kabel 
(http://elmicro.com/files/ftdi/ds_ttl232r_v102.pdf) kann ich mit 
CTSHolding erkennen, ob eine Spannung am Kabel anliegt oder nicht. Das 
Gleiche möchte ich nun auch mit dem Widerstand können. Ich denke 
Hardwareseitig sollte es funktionieren, da Kopierer auf diese Weise 
gesperrt und entsperrt werden können.
Gast #2310243
Lesenswert?

Ich möchte am Eingang prüfen ob ein Widerstand vorliegt.

Zur Verständlichkeit:
Ein externes Gerät gibt Impulse in Form von 0 oder 1 Ohm an das 
TTL-232RUSB-Kabel. Am PC möchte ich erkennen, wann 0 Ohm oder 1 Ohm 
Widerstand vorhanden ist.
Gast #2310254
Lesenswert?

Gallus schrieb:
> Ein externes Gerät gibt Impulse in Form von 0 oder 1 Ohm an das
> TTL-232RUSB-Kabel. Am PC möchte ich erkennen, wann 0 Ohm oder 1 Ohm
> Widerstand vorhanden ist.

dann sag das doch.

Bist du sicher das du 0 Ohm und 1 Ohm meinst? Wenn ja wird das nicht 
ohne zustätzliche Bauteile gehen, weil man sonst viel zu viel Strom 
braucht. Kann es nicht 1 Ohm und undentlich sein?
Gast #2310269
Lesenswert?

dann musst du den Pull-UP Widerstand wie in dem PDF verwenden. Damit ist 
der eingang immer auf +5V. dann kannst du den Eingang mit deinem Gerät 
verbinden, wenn er jetzt den eingang mit masse verbindet dann hast du 0V 
am Eingang.
Aber ein kurzer Blick in die Doku von .net Serial zeigt das du damit 
nicht direkt den eingang abfragen kannst. Es gibt er c# klassen für den 
FTDI chip, damit müsste es gehen.
Gast #2310296
Lesenswert?

Ich denke es funktioniert. 0 Ohm und unendlich Ohm funktioniert dann 
wohl wie ein Relais. Wie Peter schon geschrieben hat, nutze ich 5V 
Groundspannung und das braun CTS-Kabel. 0 Volt bei unendlich Ohm und 5 
Volt bei 0 Ohm..oder so..

Vielen Dank..Ich hätte eigentlich selbst drauf kommen können.
Gast #2310302
Lesenswert?

Gallus schrieb:
> Zur Verständlichkeit:
> Ein externes Gerät gibt Impulse in Form von 0 oder 1 Ohm an das
> TTL-232RUSB-Kabel. Am PC möchte ich erkennen, wann 0 Ohm oder 1 Ohm
> Widerstand vorhanden ist.

Ohmsche Impulse ... nie gehört.

Vermutlich meinst Du logische Impulse oder Pegel.
Die werden gerne mit 0 und 1 bezeichnet.

Ein PC kann keine Widerstände messen, schon gar nicht am seriellen Port.
Die Logikpegel jedoch kannst Du abfragen.
#2310307
Lesenswert?

Gallus schrieb:
> 0 Ohm und unendlich Ohm funktioniert dann
> wohl wie ein Relais.

Die Spannung wird in keinem Fall geregelt. Ich weiß nicht wie 
empfindlich der PC ist. Aber 1MOhm könnte er noch erkennen:
I = U/R = 5/1e6 = 5uA

Man könnte den Strom so stark begrenzen, dass der PC das Signal nicht 
mehr erkennt. Die Beste lösung ist das aber nicht.
Gast #2315643
Lesenswert?

@Gallus
Aber Du kannst natürlich auch einen Widerstand ausmessen. Zwar nur mit 
1Bit Auflösung. Aber sollte reichen.

Zum Beispiel, indem Du einen Ausgang und einen Eingang (RTS & CTS oder 
TXD und RXD) über den besagten Widerstand miteinander verbindest.

Die Innenwiderstände liegen bei ca 3kOhm und die Schaltschwellen bei 
wenigen Volt. Also sollte bei ca. 0 .. 10k ein Signal wieder 
zurückgelesen werden. Ab 10k dann nicht mehr.

So würde das in Software aussehen:
1
setRTS(0);
2
int a = getCTS();
3
setRTS(1);
4
int b = getCTS();
5

6
if (a==0 && b==1) {
7
 machwas();
8

9
}
Gast #2315656
Lesenswert?

Thomas Eckmann schrieb:
> In Verbindung mit einem Komparator, der bei Erreichen einer bestimmten
> Spannung die "Uhr" anhält.

soweit ich mir erinner kann, wurde das ganze in software gemacht. Es 
wurde ein Bit auf 0 und dann wieder auf 1 gesetzt, dann wurde einfach in 
einer Schleife gewartet bis ein anders Bit auf 1 geht. Die Hardware 
bestand nur aus dem Widerstand im Joystick, einem Kondensator und einen 
Schmitt-Trigger.
Gast #2315778
Lesenswert?

ist doch scheiss egal.
dann ersetze halt "messen" durch "fühlen" oder "erahnen" oder "Kasperle, 
den den Strom abließt und am Kollektor schraubt".

Jedenfalls hat Gallus eine ganz normale Frage gestellt und hier wird 
wieder mit aller Gewalt versucht vom Thema abzulenken, weil keiner 
helfen kann oder will.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren