mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik serial host detection .....


Autor: Marc989 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
ich möchte gerne Hardwaremäßig erkennen, ob an meiner Schaltung ein 
serielles Kabel bzw. ein aktiver PC angeschlossen ist.
Dachte ich verwende das DTR (pin4) vom Kabel und überwache das per 
Optokoppler.
Gibts da irgendwelche Einwände, das es hier zu Problemen kommen könnte?

Möglich sollen alle standard seriellen 9-pol Kabel funktionieren können.

Gruß Marc989

Autor: ab-cd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
klemme einen MAX232 ran...
mit dem TTL Ausgang machst Du was Du willst.
Kein traffic...kein Pegelwechsel !

Autor: Marc989 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klar, aber der Max232 verbraucht im zuviel Strom.
Habe für mein Projekt den Max222 eingeplant, aber auch der braucht 
0,3mA, aber er hat auch diesen SHUTDN, mit dem lässt er sich auf 3uA im 
Ruhezustand schalten.
So, und daraus will ich ihn und den Mikrocontroller aufwecken, wenn ein 
Kabel gesteckt ist.

Gruß Marc989

Autor: Michael S. (mst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marc989:

schau dir mal den MAX3221 an, der hat einen auto-shutdown, laut 
datenblatt, dann nur noch 1uA;

Wenn was auf der RS232 Leitung los ist, waked er wieder auf! :-)

Die RX-Leitung klemmst du mit an einen INT vom uC ran... hab ich 
gedanklich was vergessen!?

Gruß Micha,

Autor: Marc989 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jo, hast du.
bis der Controller aufwacht über RX-Signal, ist das erste Byte schon 
kaputt. Kenne den 3221 auch, aber hab mich halt dann für den anderen 
entschieden und wollte ihn eben frühzeitig wecken. Ausserdem weiss dann 
die Software, das sie nicht im Normalen RUN-mode ist, sondern im 
Config-mode.

Marc989

Autor: Michael S. (mst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hmmm,

die TX-Leitung die vom PC kommt hängt ja standardmäßig auf > -3V laut 
Wiki, von daher ist die Idee mit optokoppler evtl. eine alternative. Ein 
Paar mA für ein Optokoppler sollte der PC ja liefern können. Evtl. als 
Stromquelle auslegen, denn der RS232 pegel kann ja auch mal -15V sein! 
Softwareseitig musst du halt bedenken, das dieses Signal vom Optokoppler 
bei Datenübertragung dann toggelt.

Mit der DTR leitung wäre ich Vorsichtig, nicht alle Kabel habe das 
verdrahtet. Wir hatten hier im Betrieb auch schon "Spar-Kabel" welche 
nur drei Leitungen (GND, RX, TX) verdrahtet hatten!

Gruß Micha,

PS: jetzt an "fast" alles gedacht? .)

Autor: Marc989 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jepp :-))
Nur das toggeln des TX Pins gefällt mir halt nicht so ganz. Müsste das 
Signal für den SHUTDN dann blocken, damit dieser bei der Übertragung 
nicht schaltet.
Die Spar-kabel wären schon ein Nachteil für meine erste Überlegung, aber 
vielleicht liefer ich ja auch einfach ein gutes Kabel mit dazu.
Hatte auch mal ein ein produktspezifisches Kabel gedacht mit Brücke 
drin, aber auch hier weiss ich nicht, was der Benutzer so anstellt 
Zuhause :-)

Marc989

Autor: Michael S. (mst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wird das kabel aufgesteckt hast du deine > -3V (muss das eigentlich 
größer -3V oder kleiner -3V heißen? matheass da? vrmtl. kleiner -3V... 
), das kannst du erkennen und dein uC freischalten + perepherie. 
auto-shutdown von deinem ganzen geraffel nach z.B. 2sec, wenn kein 
impuls > -3V mehr anliegt. Selbst wenn du immer 0'en sendest, mindestens 
das Startbit unterbricht dir die sequenz. So brauchst du dir um das 
toggeln während der Datenübertragung keine gedanken machen.

ich mach sowas ähnliches bei einer CAN-RS485 Bridge. Ich erkenne anhand 
des Stromflusses während des Sendens ob ein zweiter Abschlusswiderstand 
auf dem Bus steckt. Wenn ja schalte ich alles frei, wenn nicht, wartet 
er noch 10sec und geht mit allem in shutdown...

Geht halt nur, wenn das shut-down der uC managed, oder kannst/willst du 
das signal vom optokoppler nicht zum uC führen?

Gruß Micha,

Autor: Marc989 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke für die antwort.

habe drüber nachgedacht und werde das so mal probieren. Shutdn vom Max 
über MCU und Optokopplersignal an den Pinchange-Wakeup.
Getriggert über RX Leitung bzw. über DRT mit kleinem Lötjumper (3pol). 
Dann kann ich mir bis zuletzt die DTR Option freihalten, falls das mit 
RX widererwarten nicht klappen sollte.
Herzlichen Dank für die Anregung....

Marc989

Autor: Michael S. (mst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nix zu danken;

berichte dann evtl. mal obs funktioniert hat, oder wie du es 
letztenenden dann gemacht hast...

Gruß Micha,

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.