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


von Ak T. (aktronik)


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

von Michael (Gast)


Lesenswert?

-v bitte.

von H.Joachim S. (crazyhorse)


Lesenswert?

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

von Peter D. (peda)


Lesenswert?

Ak Tronik schrieb:
> Was soll dann der Quatsch mit 1-Wire?
1
                 1-Wire   UART
2
bidirektional:   ja       nein
3
Stromversorgung: ja       nein
4
multiple Slave:  ja       nein

Peter

von Ak T. (aktronik)


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

von chris (Gast)


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.

von Klaus W. (mfgkw)


Lesenswert?

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

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

von H.Joachim S. (crazyhorse)


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.

von Ak T. (aktronik)


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

von Ak T. (aktronik)


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

von Klaus W. (mfgkw)


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.

von Ak T. (aktronik)


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

von (prx) A. K. (prx)


Lesenswert?

Peter Dannegger schrieb:
1
>                  1-Wire   UART
2
> bidirektional:   ja       nein
3
> Stromversorgung: ja       nein
4
> multiple Slave:  ja       nein
5
>
Und UART braucht zudem einen präzisen Takt.

von Ak T. (aktronik)


Lesenswert?

A. K. schrieb:
> Peter Dannegger schrieb:
>
1
>>                  1-Wire   UART
2
>> bidirektional:   ja       nein
3
>> Stromversorgung: ja       nein
4
>> multiple Slave:  ja       nein
5
>>
> 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.

von Chris D. (myfairtux) (Moderator) Benutzerseite


Lesenswert?

A. K. schrieb:
> Peter Dannegger schrieb:
>
1
>>                  1-Wire   UART
2
>> bidirektional:   ja       nein
3
>> Stromversorgung: ja       nein
4
>> multiple Slave:  ja       nein
5
>>
> 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.

von (prx) A. K. (prx)


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.

von (prx) A. K. (prx)


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).

von (prx) A. K. (prx)


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.

von Ak T. (aktronik)


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?

von (prx) A. K. (prx)


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.

von Ak T. (aktronik)


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

von 123 (Gast)


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 )

von (prx) A. K. (prx)


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.

von Ak T. (aktronik)


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.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.