www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Kurze Frage: 1-wire Bus Lesen / Schreiben


Autor: Ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

ganz kurze Frage bez. 1-wire-Bus:
Wie weiß der Slave ob ich lesen oder schreiben will?
Ich ziehe DQ auf Low und lasse dann wieder aus,
das kann eine geschriebene 0 sein oder
eine Aufforderung zum Lesen.
Wie kann der Slave das auseinanderhalten?

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du schickst ihm ja eine Befehlssequenz, zB Skip Rom, Read Scratchpad, 
und anhand der Befehle ist dann auch die Datenrichtung klar.

fchk

Autor: Ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also zuerst kann ich immer schreiben
und wenn ich einen Lesebefehl gesendet habe
muss ich lesen, wenn ich genug gelesen habe
darf ich wieder schreiben.

Autor: Bernhard B. (schluchti)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine gute Erklärung zum 1-Wire Bus gibts hier:
Beitrag "1-Wire-Bus-Projekt: DS1820  DS18S20  DS2450  DS2408  unter C und 8051"

Autor: Ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
An der lese ich grade.

Autor: Klaus De lisson (kolisson)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi DU ICH,

ohne jetzt zu wissen, was in dem zuvor verlinkten Beitrag steht,
kann ich Dir auch folgendes Datenblatt empfehlen:

http://www.google.de/url?sa=t&source=web&cd=3&ved=...

falls der link nicht geht -> DS2502

Da steht in Textform etwas über den Ablauf der einzelnen Commands.
(und jeden Absatz mehrfach lesen !)

Mir hat es jedenfalls geholfen.

Gruss Klaus

Autor: Ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke

ich bastle eigentlich mit dem DS18S20.
Noch eine Frage:
Der "Strong Pullup", den ich während der Temperaturmessung 0,75s lang 
brauche, wird im Datenblatt mit einem Mosfet realisiert. Kann ich dafür 
auch einfach den PortPin des AVR nehmen?

Autor: Ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

im Datenblatt steht, man braucht einen MOSFET für den Strong Pullup 
während der Temperaturmessung. Kann ich die 1,5mA auch mit dem Portpin 
bereitstellen, an dem die Datenleitung hängt?

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich schrieb:
> Kann ich die 1,5mA auch mit dem Portpin
>
> bereitstellen, an dem die Datenleitung hängt?

Ääh! Nein!

Warum? Weil dein Portpin in der Regel einen internen Pullup hat und der 
liefert den Strom nicht.

Und wenn Du Open-Drain Portpin verwendest schon gar nicht.


Alles Klar?

Autor: Anon Ymous (avion23)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus schrieb:
> Ich schrieb:
>> Kann ich die 1,5mA auch mit dem Portpin
>>
>> bereitstellen, an dem die Datenleitung hängt?
>
> Ääh! Nein!

Ich habe mehrere Quellen gefunden, in denen genau das gemacht wird. Ob 
der Mosfet intern oder extern ist macht auch keinen Unterschied.

Und ja, man muss den pin dabei auf Ausgang stellen ;)

Autor: Michael A. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus schrieb:
> Und wenn Du Open-Drain Portpin verwendest schon gar nicht.

Und was hindert einen dadran, statt eines externen MOSFET den Portpin 
auf active High zu setzen?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich schrieb:
> Kann ich dafür
> auch einfach den PortPin des AVR nehmen?

Ein ganz klares ja.

Ein AVR-Pin kann alle 3 benötigten Zustände (low, tristate, high), also 
wäre es Blödsinn, einen zusätzlichen Transistor zu nehmen. Der bräuchte 
dann sogar noch nen extra IO-Pin.


Peter

Autor: Hannes Jaeger (pnuebergang)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

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.