mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Serielle Verbindung zu vielen (mehr als 80!) ATtiny


Autor: KiliPet (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forum!
Ich möchte mit möglichst wenig Aufwand und Materialeinsatz sehr viele 
kleine ATtiny seriell mit daten versorgen. Die einzelnen ATs sollen 
dabei nur daten empfangen und nicht senden. In den übertragenden Daten 
würde ich dann selektieren welcher teilnehmer sich angesprochen fühlen 
soll.

Ich stelle mir einen Busstrang vor an dem alle Teilnehmer angeschlossen 
sind:

PC RS232
TxD----------------------------------...------------------------------
       |           |           |     ...     |          |          |
       |           |           |     ...     |          |          |
       |           |           |     ...     |          |          |
       |           |           |     ...     |          |          |
      RxD         RxD         RxD           RxD        RxD        RxD

Die gesamte Leitungslänge wird wahrscheinlich zwischen 30m und 50m 
betragen. Baudrate kann am unteren limit liegen da es hier nicht auf 
Geschwindigkeit ankommt.

Was meint ihr? Ist das machbar?

Danke KiliPet

Autor: LuXXuS 909 (aichn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kannst ja in gewissen Abständen nen Bustreiber dazwischen hängen. Warum 
nicht?!

Autor: Udo R. S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zeichne mal den Gegenstrang auf, dann merkst Du schnell daß es so nicht 
geht. 80 mal TXD gegeneinander an einen RXD.
Seriell ist eine PTP Verbindung und keinen Bus.
Dafür gibts besseres das auch nicht schwieriger zu händeln ist.
Google mal nach einfachen Bussystemen.

Autor: LuXXuS 909 (aichn)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso, wenn die nur Daten bekommen?! Und nichts zurückschicken.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Muss es unbedingt UART sein? Ansonsten schau Dir mal an, wie digitale 
Modellbahnsteuerungen arbeiten.

...

Autor: Udo R. S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Google ist Dein Freund. Und die Doku deines yCs!
Schau mal nach I2C oder TWI.

Autor: Udo R. S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hoppla, ich hatte es falsch verstanden. Dann One Wire. Wenns unbedingt 
RS232 sein muß, dann braucht er halt entsprechende Bustreiber. Ich würde 
mir aber den Rückweg offen halten zumal die Controller das heute schon 
beherrschen.

Autor: KiliPet (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei I2C oder auch TWI genannt komm ich mit den Leitungslängen nicht hin 
soweit wie ich gelesen habe.

Google und ich sind übrigens per Du...

Autor: Helmut -dc3yc (dc3yc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann schaue mal nach RS422 bzw. RS485!

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nun lass Dich mal nich verrückt machen. Du brauchst nur einen kräftigen 
Bustreiber am Anfang des Strangs und solltest keine zu hohe Baudrate 
verwenden. Am Ende terminierst Du den Strang nötigenfalls.

Autor: KiliPet (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit dem Gedanke habe ich auch schon gespielt aber bei reichelt kostet 
ein entsprechender umsetzer mehr als der uC. Ich wollte ein modul so 
kostengünstig wie möglich bauen. Davon brauche ich immerhin ne ganze 
menge...

Autor: dave (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nimm rs485. ist ein einfaches bussystem, was mit ca. +-15 v pegeln 
arbeitet. dazu gibts viele günstige treiber ics.
rückweg ist auch kein problem, darf halt nur ein kontroller senden. 
warum nicht ? muss es halt einen master geben der sagt wer senden darf.
i2c oder spi kannst du auf diese entfernung vergessen

Autor: KiliPet (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei nur einem Treiber am Anfang wäre das ein brauchbare lösung.

Autor: dave (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
um einen treiber wirst du bei der leitungslänge nicht herumkommen. +-5 v 
funktioniert vl., ist aber ein "pfusch". mehr als 2,3 euro kostet so ein 
ic nicht

Autor: Matthias Keller (mkeller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So sehe ich das auch.

Wenn du Bauteile sparen willst dann nimmst du am Anfang einen kräftigen 
Triber (74AC125 o.ä.) und terminierst die Leitung.

Wenn dus störsicherer haben willst nimmst du einen RS485 Bus. Ein MAX487 
kann 250kBit Baud und bis 128 Transceiver im Bus haben. Dann hast du 
gleich eine störsichere differnetielle Übertragung und kannst trotzdem 
UART nutzen.

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde nur einen einzigen Umsetzer von RS232 auf TTL auf npn-Open 
Collector nehmen und den Datenstrang mit 5..0V-Signalen füttern. Auf 
jeder Modulplatine braucht dann nur ein Pullup im Wert von 100kOhm und 
ein Schutzwiderstand zum RXD-Pin in Höhe von 2k2...4k7 geschaltet 
werden. Billiger geht´s nicht und Baudraten bis 19200 sollten kein 
Problem sein

Autor: dave (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das sicher auch gehn..die frage ist halt wie fehleranfällig das ganze 
sein darf und wie schlimm ein ausfall ist. ist es ein bastelprojekt oder 
geht es um was ? bei 5 v wirken sich halt einkopplungen schlimmer aus.

Autor: KiliPet (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist ein besonderes beleuchtungsprojekt. Wenn mal ein telegramm 
ausfällt ist das nicht tragisch.
Ich werde wohl RS485 nehmen. Da hab ich bei Reichelt einen Transeiver 
von TI (SN75176) für 26ct gefunden. Taugt der was?

Wenn ich dann einen RS485 Pegel habe könnte ich ja sogar sämtliche 
Teilnehmer in meinen bestehenden Profibus aufnehmen. Entsprechende 
portierungen für einen Profibus-Slave in C hab ich hier im Forum bereits 
gefunden. Wenn auch nicht für den ATtiny (wenn der überhaupt stark genug 
ist dafür).

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
SN75176 ist der Standard-Popel-Wald-und-Wiesen-RS485-Transceiver; für 
Deine Zwecke mehr als ausreichend.

Zum Thema I2C und 50m: Wer gelegentlich in diversen Hausbusforen 
mitliest, ist sicherlich auch schon über die Mutigen gestolpert, welche 
irgendwelche I2C-Temperatursensoren angeblich problemlos mit Buslängen 
von 100m und mehr betreiben. Ich persönlich würde sowas ebenfalls nicht 
machen; schon gar nicht bei so einer essentiellen Anwendung wie einer 
Haus-Temperaturregelung. Aber es scheint tatsächlich wider Erwarten zu 
gehen.

Wenn's billiger als RS485, unidirektional und möglichst störresistent 
sein soll: Was spricht gegen eine modulierte Stromquelle - sagen wir 
0/10mA - und ~80 Stromsenken?


MfG

Patrick

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.