mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 4m-Kopplung zweier AVRs mit LIN oder I2C?


Autor: RE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich baue einen Datenlogger, der einige Temperaturen und Schaltzustände 
aufzeichnen soll.  Derzeit auf Basis Butterfly = ATmega169, später 
ATmega32.  Die Sensoren sind typ. wenige cm bis max. 5m Kabellänge vom 
Logger entfernt.

Als zusätzlichen Sensor möchte ich jetzt einen SHT11 Temepratur- und 
Feuchtesensor anschließen.  Das funktioniert auch soweit, wenn der SHT11 
direkt neben dem Butterfly liegt, bei 3m Entfernung kommt nichts mehr 
durch. Nach viel Sucherei hab ich im Datenblatt gelesen, dass der SHT11 
nur max. 10cm Kabellänge abkann.

Also hab ich mir gedacht, einen ATtiny13 (liegen einige in der 
Bastelkiste) auf der einen Seite direkt mit SHT11 zu verbinden und auf 
der anderen Seite übers Kabel mit dem zentralen Logger zu sprechen. 
Meine Frage ist nun, welches Protokoll nehm ich am besten für die 
Kommunikation zwischen den AVRs. Zu LIN hab ich bereits einiges gelesen 
und auch Atmel bietet einige AppNotes; von I2C hab ich keine Ahnung. 
Weitere Punkte:

+ Autokalibration zu Beginn jeder Übertragung (Ausgleich der 
Temperaturschwankungen, ca. -20°C .. +50°C)
+ nur ein Pin (Halbduplex)
- aufwändiger Code zur Kalibrierung (nicht viel Platz im tiny13)

Geschwindigkeit ist eher Nebensache.  Die Abfragen erfolgen nur ca. alle 
10 Minuten. Da ist eine Übertragung mit 1200 Baud noch schnell.

Vorschläge, Anmerkungen?

  RE

Autor: Alex W. (a20q90)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mach ein LIN-Bus. Versorge den Bus selber über 10k mit +12V (kannst auch 
5V nehmen) und ziehe mittels Transistor den Bus gegen Masse. Der TxD vom 
AVR kannst dann direkt ohne großartigem Protokollaufbau mit "Print" die 
Werte übertragen. Solltest Du noch Checksumme wünschen kannst Du das bei 
Bascom mit crc8(x,y) errechnen lassen und mitsenden.

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.