www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik serieller Bus mit 1 Sender und 96 Empfängern


Autor: cord (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich möchte eine Anzeigetafel mit 96 separaten LED-Matrix Displays bauen. 
Die Daten sollen über eine serielle Leitung übermittelt werden. Jedes 
Display soll über eine eigene Adresse angesprochen werden und dann den 
entsprechenden Character darstellen. Welche möglichst preisgünstige 
Lösung bietet sich dafür an? Braucht man Optokoppler, RS232 oder 
Differenzsignal?
Spätere Änderungen im Design wären bei 96 Baugruppen sehr aufwändig, 
daher bin ich für alle Hinweise dankbar.

Gruss
  Cord

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Braucht man Optokoppler+
nicht unbedingt würde ich sagen

>RS232 oder Differenzsignal?
RS232 ist kein Bus. Auch wenn es nur Empfänger sind beeinflussen diese 
das Signal auf der Leitung. Zudem ist es auch nicht für größere Stecken 
geeignet, erst recht nicht, wenn du die Last und Kapazität durch mehrere 
"Verbraucher" erhöhst.

Was mir direkt in den Sinn gekommen ist, wäre I²C

RS422 kann glaub ich nur mit 10 Empfängern betrieben werden, RS485 mit 
32.

Also I²C denke ich wäre schon das richtige.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt RS485-Transceiver, die bis zu 128 Gegenstellen schlucken. MAX487 
beispielsweise.

Das hängt aber auch davon ab, wie weit sich die Verdrahtung erstreckt, 
in wieweit Störungen wahrscheinlich sind und wie ärgerlich Störungen 
dann sind. Denn je nach Distanz und Topologie lässt sich das u.U. auch 
asynchron mit 5V Pegel und einem einfachen Treiberbaustein für ein paar 
parallele Busleitungen abwickeln. Rückmeldung vom Slave ist ja wie es 
aussieht nicht nötig.

Autor: Hans Josef (hjm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Cord,

adhoc würde ich sagen RS485, oder CAN.
RS485 ist mit Standardbausteinen jedoch nur für bis zu 32 Teilnehmern 
spezifiziert, es gibt jedoch auch Baustein (glaube Maxim) da können dann 
128 angeschlossen werden.

Welche Intelligenz haben die Anzeigen, man könnte ja auch ein verteiltes 
Schieberegister machen.

Wie schnell und wieviel Daten sollen denn gesendet werden?

Grüße

Autor: cord (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
hohe Geschwindigkeit ist nicht wichtig, 9600Bd wären schön aber 1200 
würden auch noch reichen. Bei 1200Bd würde es ca. 2sek dauern um das 
gesamte Display zu aktualisieren. Wichtiger ist der Preis. Eine einfache 
Transistorschaltung als Empfänger wäre mir am liebsten, da preiswert. 
Evtl. könnte ich auch einen Verteiler spendieren um z.b. 8 x 12 
Empfänger zu treiben.

Gruss
  Cord

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal: wie sind die Masse? Muss das ein Kabel sein, dass sich 50m weit 
herumwindet, oder tun es auch beispielsweise 8 Busse, jeweils 1 Meter 
lang für 12 Module?

Autor: SoLaLa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da fällt mir das PelcoD Protokoll ein.
Da werden an einem RS485bus bis zu 999 Kameras angesprochen.
Es ist zwar richtig, daß an einem RS485Treiber nur 32 Teilnehmer hängen 
dürfen, aber das ganze kann man ja kaskadieren... wird bei Pelco schön 
erklärt wie das geht.

Autor: Rahul Der trollige (rahul)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man könnte ja "einfach" jedes Modul mit zwei RS485-Transceivern 
versehen, die das Signal jedes Mal verstärken. Quasi auf jedem Modul ein 
Repeater.
Dann könnte man auch eine Midi-Schnittstelle realisieren, welche den 
Vorteil einer galvanischen Entkopplung hätte.

Autor: cord (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Nochmal: wie sind die Masse? Muss das ein Kabel sein, dass sich 50m weit
>herumwindet, oder tun es auch beispielsweise 8 Busse, jeweils 1 Meter
>lang für 12 Module?

Letzteres, ich würde den Verteiler am Display anbringen und hätte dann 8 
Busse von ca 1.5m Länge.
Bei der Masseverbindung habe ich Bedenken, wenn dort 96 Baugruppen 
herumzappeln... Als Netzteil denke ich an ein 5V / 60A Gerät, das sollte 
ausreichen.

Gruss
  Cord

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
cord wrote:

> Letzteres, ich würde den Verteiler am Display anbringen und hätte dann 8
> Busse von ca 1.5m Länge.

Na also. Das ist mit normalem Logikpegel zu machen. Am einfachsten mit 
einem Treiber-IC aus der CD4000 Reihe, die sind so langsam dass kein 
Abschluss nötig ist. Für 9600bd langt's trotzdem.

Wenn du allerdings befüchten musst, dass die Massepegel soweit 
divergieren, dass es mit Logikpegel nicht geht, dann sind die erwähnten 
RS485-Transceiver fällig. Optokoppler brauchen zuviel Strom, es sei denn 
du schaltest die alle hintereinander.

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.