www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik SPI-Bus, Eingangskapazität und max. Anzahl Bauteile


Autor: Bernhard Roth (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Zur Zeit entwickle ich einen Schaltplan wo 16 MAX3100 (SPI-UART) an
einem SPI-Bus eines atmega168 hängen sollen. Die MAX3100 haben eine
Eingangskapazität von 5pF.
Um das System möglichst schnell laufen zu lassen wollte ich die
maximale SPI-Frequenz des mega168, der mit 20MHz getacktet ist,
verwenden.
Um die Ausgänge des mega zu entlasten hatte ich vor einen Buffer (z.B.
2x 1/6 74AC14 hintereinander) anzuschalten. Die Frage ist nun ob ein
Buffer ausreicht oder ob ich lieber den SPI-Bus segmentiere (also 2x8
oder 4x4 MAX3100 mit einzelnem Treiber). Man müsste natürlich auch
beachten das die SDO Ausgänge der MAX3100 auch alle zusammenhängen und
hier kein Treiber vorgesehen werden kann...
Gibt es eine Grundregel die man bei solchen Konstellationen beachten
sollte und die ich noch nicht kenne? :)

Für die Abfrage der UART's Bauteile habe ich mir eine
Multiplex-Schaltung überlegt mit der der MCU alle Bauteile schnell
durchscannen kann. Sobald ein UART z.B. Daten hat, bekommt der MCU auf
#INT ein Signal und kann dann den entsprechenden Baustein wählen indem
#CS auf LOW gezogen wird. Wie ist Eure Meinung dazu? Sieht vielleicht
jmd noch einen Fehler?

Vielen Dank im voraus!
Grüße

Bernhard

Autor: arc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falls noch nicht zu spät, hier noch eine andere Idee:
SC16IS752/762 (Dual Uart mit SPI-Interface), der noch den Vorteil von
8-IOs mit Interrupt-Fähigkeit + Interrupt-Latch hätte.

http://www.standardics.philips.com/products/sc16/p...

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

laut Datenblat liegt die max. Taktfreq. des 3100 bei 4,2MHz.
In dem splitting des INT sehe ich keinen Sinn. Die Ansteuerung des
Decoder/Multiplexer erfolgt binär, also ist doch die Adresse des INT
bekannt.

Mit Gruß
Pieter

Autor: Bernhard Roth (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
arc: Wir haben noch einige von den MAX3100 rumliegen, die sollen verbaut
werden :)

Pieter: Meinst Du es funktioniert wenn man den SPI-Bus aller 16
Bausteine zusammenschließt? Ich habe die Befürchtung das die 80pF
Eingangskapazität etwas viel sind bei 4,2MHz Busfrequenz... Deswegen
dachte ich an die Aufteilung.
Zu den INT's: Welches Splitting der INT's? Ich mache im AVR erstmal
nichts anderes als die Decoder/Multiplexer in einer Endlosschleife von
0-15 durchzuscannen. Ist bei einem der INT-Ausgang LOW springt der AVR
in die interrupt-routine und prüft was denn ansteht. Um den passenden
MAX dann zu selektieren muss einfach nur der #CS-Eingang auf Low gelegt
werden und es kommt am richtigen Chip an.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ist der Unterschied zwischen der Treiberleistung eines 74AC14 und
des Mega168? Bei 4MHz und leidlich dichter Plazierung sollte das auch
ohne Puffer möglich sein.

Mögliche Alternative zum IRQ-Muxer: Prioritätsencoder '348. Liefert
die IRQ-Nummer frei Haus (auf Ax in umgekehrter Richtung).

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

bei INT wird ja "rückwärts gemuliplext", ist dann schon klar.
Genauso könnte mann ja auch den MISO schalten und MOSI+ CLK dann
vorwärts.  Eventuell einen 4053 in AC, also immer ein 4053+MAX3100.
MOSI, CLK und Select mit Bustreiber.
Ob der Aufwand lohnt? Nach Datenblatt ist der MAX3100 bei 100pf
angegeben. Eine Frage der Leitungskapazitäten und so blank schwer zu
beantworten.

Mit Gruß
Pieter

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.