mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 1-wire technisch überflüssig?


Autor: Ak Tronik (aktronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

eine 1-Draht-Kommunikation (GND nicht mitgezählt) ist doch seit 
zig-Jahren möglich (UART).
Was soll dann der Quatsch mit 1-Wire?
Ist die Hardware-Realisierung on Chip etwa weniger aufwendig wie UART?


MfG

Ak Tronik

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
-v bitte.

Autor: H.Joachim Seifert (crazyhorse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nö.
Du kannst in beide Richtungen kommunizieren und (zumindest teilweise) 
die Bausteine auch noch aus dieser Leitung versorgen.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ak Tronik schrieb:
> Was soll dann der Quatsch mit 1-Wire?
                 1-Wire   UART
bidirektional:   ja       nein
Stromversorgung: ja       nein
multiple Slave:  ja       nein

Peter

Autor: Ak Tronik (aktronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für Eure Antworten.

Das mit der Stromversorgung ist das Argument für 1-wire.
Das habe ich nicht gewusst.

@ Peter
Da möchte ich Dir teilweise widersprechen.
Multiple Slave und bidirektionele Kommunikation ist auch bei UART 
möglich.
Smartcards arbeiten mit einer I/O Leitung bidirektional.
Mit einer gewissen Kommunikationsdisziplin Softwareseitig) auch im 
Multislave-Betrieb.


MfG
Ak Tronik

Autor: chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stromversorgung, habe Produkte im Einsatz, welche einen Pic über 1Wire
(rs232 9bit) auch über strom versorgen. Die interne Diode des Pins 
leitet
den Strom weiter, auch mehrere Chips über denselben pin. TTL level und
Ruhestand=5V.

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ak Tronik schrieb:
> Multiple Slave und bidirektionele Kommunikation ist auch bei UART
> möglich.

Bidirektional aber nur mit einem zusätzlichen Draht, oder?

Autor: H.Joachim Seifert (crazyhorse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nö, es geht auch mit einem Draht (alle Rx direkt an eine Leitung, Tx 
jeweils über eine Diode auch dran)
Ohne MC an jeder Stelle ist die Sache aber nicht machbar, und man muss 
ne Menge Gehirnschmalz reinstecken.
1-wire läuft mit der passenden lib einfach, durch die einmaligen IDs der 
Teilnehmer.

Autor: Ak Tronik (aktronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus Wachtler schrieb:
> Ak Tronik schrieb:
>> Multiple Slave und bidirektionale Kommunikation ist auch bei UART
>> möglich.
>
> Bidirektional aber nur mit einem zusätzlichen Draht, oder?

Nein, RX- und TX-Pin werden einfach verbunden.
Schon ist die bidirektionale Kommunikation mit einem Draht 
möglich.(Halbduplex). Bei der Smartcard ist das intern realisiert.
Vollduplex kann 1-Wire auch nicht.


MfG
Ak Tronik

Autor: Ak Tronik (aktronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
H.joachim Seifert schrieb:
> nö, es geht auch mit einem Draht (alle Rx direkt an eine Leitung, Tx
> jeweils über eine Diode auch dran)

Die Diode kannst Du dir sparen, wenn Du den TX-Pin nach dem Senden auf 
Input mit Pullup proggst.

Software kann Hardware ersetzen.

MfG
Ak Tronik

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ak Tronik schrieb:
>> Bidirektional aber nur mit einem zusätzlichen Draht, oder?
>
> Nein, RX- und TX-Pin werden einfach verbunden.

ok, dann aber -ebenso wie mehr Teilnehmer- nur über zusätzliche SW 
drüber.

Autor: Ak Tronik (aktronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, mit dem Vorteil, dass die Software kopierbar ist.
Die Diode inkl. Einbau nicht.
Ich sagte ja auch man kann sie sich sparen.


MfG
Ak Tronik

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter Dannegger schrieb:
>                  1-Wire   UART
> bidirektional:   ja       nein
> Stromversorgung: ja       nein
> multiple Slave:  ja       nein
> 
Und UART braucht zudem einen präzisen Takt.

Autor: Ak Tronik (aktronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
A. K. schrieb:
> Peter Dannegger schrieb:
>
>>                  1-Wire   UART
>> bidirektional:   ja       nein
>> Stromversorgung: ja       nein
>> multiple Slave:  ja       nein
>> 
> Und UART braucht zudem einen präzisen Takt.

1-Wire braucht doch auch ein präzises Timing.
UART ist fast bei jedem µC "On-Chip". 1-Wire nicht!

Bei Peters Auflistung fehlt jeweils ein "ja" bei bidirektional und 
multiple Slave.

Autor: Chris D. (myfairtux) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
A. K. schrieb:
> Peter Dannegger schrieb:
>
>>                  1-Wire   UART
>> bidirektional:   ja       nein
>> Stromversorgung: ja       nein
>> multiple Slave:  ja       nein
>> 
> Und UART braucht zudem einen präzisen Takt.

Außerdem haben die 1-Wire-Teile (zumindest bei denen, die wir verwendet 
haben) immer eindeutige IDs und es gibt standardisierte Verfahren zu 
deren Erkennung.

Das funktioniert tadellos über 100 Meter und ist sehr robust.

Da möchte man kein selbstgestricktes Protokoll verwenden.

Chris D.

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ak Tronik schrieb:

> 1-Wire braucht doch auch ein präzises Timing.

Braucht zwar Timing, aber nicht präzise.

UART braucht rund 1% Genauigkeit auf beiden Seiten, also meist externen 
Quarz oder Kermikschwinger. 1-Wire funktioniert auch noch mit 
einfachstem internem RC-Oszillator und 20% Abweichung.

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ak Tronik schrieb:

> Ist die Hardware-Realisierung on Chip etwa weniger aufwendig wie UART?

Es geht fast immer um den Master und der ist tatsächlich weit weniger 
aufwendig, weil ohne grossen Aufwand und ohne arge Echtzeitanforderung 
i.d.R. komplett in Software realisiert.  Nur wenige Controller besitzen 
einen Hardware-Modul dafür (hauptsächlich Dallas/Maxim - wen wunderts).

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ak Tronik schrieb:

> Die Diode kannst Du dir sparen, wenn Du den TX-Pin nach dem Senden auf
> Input mit Pullup proggst.

... und ganz sicher bist, dass nie 2 Kollegen gleichzeitig senden.

Autor: Ak Tronik (aktronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Chris
>Das funktioniert tadellos über 100 Meter und ist sehr robust.

Das hat doch nichts mit 1-Wire zu tun. Physikalisch haben beide doch 
TTL-Pegel, oder? Die Entfernung ist von der Übertragungsgeschwindigkeit 
abhängig.


@ A. K
> Braucht zwar Timing, aber nicht präzise.
>
> UART braucht rund 1% Genauigkeit auf beiden Seiten, also meist externen
> Quarz oder Kermikschwinger. 1-Wire funktioniert auch noch mit
> einfachstem internem RC-Oszillator und 20% Abweichung.

Hmm, wenn kein präzises Timing erforderlich, steht das Timing dann fest?

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ak Tronik schrieb:

> Hmm, wenn kein präzises Timing erforderlich, steht das Timing dann fest?

Die Zeitvorgaben besitzen einen grossen Toleranzbereich und jedes Bit 
wird einzeln synchronisiert. Bei UART hingegen werden die ~10 Bits eines 
Frames nur ein einziges Mal synchronisiert, so dass die Zeitfehler 
kumulieren. Das ist der entscheidende Unterschied.

Autor: Ak Tronik (aktronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, dann kann ich jetzt einsehen, dass 1-Wire nicht überflüssig ist.
Vielen Dank für Eure sehr konstruktiven Antworten und Aufklärung.

MfG
Ak Tronik

Autor: 123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin

das one wire ist doch das Protokoll, wo die information auf der VCC 
leitung mit aufkodiert wird oder?

dann ist hier ein aspekt unter den tisch gefallen.

one Wire braucht für signal und Spannungsversorgung nur 2 Leitungen. 
(GND + DQ) DQ= daten + VCC auf einer Ader

RS232 braucht für signal und Spannungsversorgung mindestens 3 optimal 4 
Leitungen (GND + VCC + RX + TX )

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
123 schrieb:

> das one wire ist doch das Protokoll, wo die information auf der VCC
> leitung mit aufkodiert wird oder?

Je nach Slave möglich oder nicht. Das könnte man aber mit UART ebenfalls 
machen.

Autor: Ak Tronik (aktronik)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
123 schrieb:
> RS232 braucht für signal und Spannungsversorgung mindestens 3 optimal 4
> Leitungen (GND + VCC + RX + TX )

Hier wurde 1-Wire mit UART verglichen.

RS232 ist technisch aufwendiger und physikalisch nicht mit UART zu 
vergleichen.

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.