Hallo! Und zwar erstmal was ich vor hab: Ich konzipier grad ein Bussystem für einen Baugruppenträger. Der Bus an sich soll aus 8 Adressleitungen, 8 Datenleitungen und 2 Steuerleitungen bestehen. Über die Steuerleitungen soll eine Art Handshake bei der Übertragung gemacht werden und zwar wie hier: http://www.controllersandpcs.de/pdfs/bussysteme.pdf wie auf Seite 36 beschrieben. Die Baugruppen sind alle über eine Backplane 1:1 verbunden. Zum Schaltplan: Die Dateneingabe und Ausgabe soll mit Schieberegister über SPI gemacht werden. "DIR" gibt die Richtung des Datenflusses durch die 245er vor und schaltet falls das ganze als Eingang fungieren soll die 4094 in den Z-Zustand. Und nun meine Fragen: Wie soll ich die Steuerleitungen am besten ausführen? In Tri-State oder Open-Kollektor-Technik? Die Steuerleitungen müssen ja in beide Richtungen fungieren können. Gibt es falls Tri-State da einzelne Bidirektionale Bus-Treiber? Ich hätte vor die Steuerleitungen dann mit jeweils einem PIN eines AVRs zu verbinden. Kann man das dann so machen, dass im laufenden Betrieb die PINs einmal als Ein- und wieder als Ausgang betrieben werden? Oder hat das irgendwelche Nachteile? Falls die 245er als Eingang fungieren sollen hab ich mir gedacht, da es vorkommen kann, dass kurzzeitig alle Baugruppen auf Eingang geschaltet sein können Pull-Down-Widerstände reinzuschalten, damit dort in diesem Fall ein definierter Pegel herrscht. Denk ich so richtig oder kann man das getrost weglassen? Diese sind hochohmig gewählt, da durch andere Baugruppen da welche parallel geschaltet werden. Gruß Markus
Wozu der Umweg von SPI auf parallel? Wieso nicht gleich TWI?
Das so zu machen hab ich mir auch schon überlegt. TWI ist da aber denk ich zu störanfällig, wegen den Leitungslängen/Kapazitäten und auch langsamer als die SPI-Parallel-Variante.
Markus Hehn schrieb: > Das so zu machen hab ich mir auch schon überlegt. > TWI ist da aber denk ich zu störanfällig, wegen den > Leitungslängen/Kapazitäten und auch langsamer als die > SPI-Parallel-Variante. Worin unterscheiden sich denn die beiden Signale? Je nach Leitungslänge musst du eh mit der Übertragungsrate runter. Siehe ISP-Problematik mit "langen" Kabeln.
>Der Bus an sich soll aus 8 Adressleitungen, 8 Datenleitungen und 2
Steuerleitungen bestehen.
Was soll SPI damit zu tun haben ? Ein Parallelbus ist ein Parallelbus.
Das genuegt. Allerding wuerd ich ein paar mehr Steuerleitungen
spendieren.
- Read = Output enable
- Write
- Adress Latch enable : Zusammen mit Adresse = CS
- [ Peripheral Interrupt ]
Erstmal Danke für die Antworten! STK500-Besitzer schrieb: > Worin unterscheiden sich denn die beiden Signale? > Je nach Leitungslänge musst du eh mit der Übertragungsrate runter. Siehe > ISP-Problematik mit "langen" Kabeln. Ich bin nun echt am Überlegen es doch mit TWI zu realisieren. Nur wie würdest du dann das mit den Pull-Up-Widerständen realisieren? Pro Karte einen? Oder nur einen pro Master-Baugruppe? (Das ganze soll auch als Multi-Master funktionieren können) Ist dafür dann irgendeine Schutzbeschaltung nötig? Delta Oschi schrieb: > Was soll SPI damit zu tun haben ? Ein Parallelbus ist ein Parallelbus. SPI + Schieberegister ist nur eine Porterweiterung vom AVR. > Das genuegt. Allerding wuerd ich ein paar mehr Steuerleitungen > spendieren. > - Read = Output enable > - Write > - Adress Latch enable : Zusammen mit Adresse = CS > - [ Peripheral Interrupt ] Mein Hauptproblem bei der Variante des Parallel-Bus besteht darin wie ich die Treiberschaltung der Steuerleitungen realisieren soll. Als Tri-State oder Open-Kollektor? Dann benötige ich ja pro Steuerleitung 2 Pins vom AVR: Tri-State: 1 als Datenleitung, 1 als Richtungsschaltung Open-Kollektor: 1 als Ausgang, 1 als Eingang Gruß Markus
Ich werd das ganze nun ähnlich wie hier machen: Beitrag "Modulares Mikrocontroller System" Das ganze ist sehr universell gestaltet. Für mein momentanes Projekt werd ich nur TWI zur Kommunikation nutzen. Den Rest sozusagen als Reserve mal frei lassen. Zu den Pull-Up-Widerständen: Ich werde auf jeder Karte welche unterbringen und mit Jumper hin- oder wegschaltbar machen. Wie siehts nun mit einer Schutzbeschaltung für den TWI-Bus aus? Brauch ich dann auch Abschlusswiderstände, wie bei RS485? Gruß Markus
Weiß eigentlich jemand was aus diesem Projekt geworden ist: Beitrag "Modulares Mikrocontroller System" Oder kennt jemand ähnliche Projekte? Und dann hätt ich noch ne Frage interessehalber: In welcher Bustechnik (Tri-State, open-Kollektor) werden Steuerleitungen in der Regel realisiert? z.B. bei PCI und ähnlichen. Weiß jemand irgendwelche guten Referenzen, vorallem zur Schaltungstechnik von Bussystemen an sich? Gruß Markus
Doch sicher. Aber nichts Murksiges, wie SPI und parallel kombiniert. Erst muss man sich im Klaeren werden, ob Single Master, oder Multimaster, welche Bandbreite man braucht und welche Datenmenge man rueberschieben will. Was soll die Reaktionszeit sein? Controlleitungen wuerd ich Tristate fuehren, denn Opencollector ist lahm und braucht mehr Strom.
Wenns schon so ein aufwändiger paralleler Bus werden soll, wie du in da konzipierst, dann kannst du auch gleich einen GPIB bauen. Da hast du dann auch praktisch kein Timing-Problem mehr und es gibt fertige Bustreiber (75SN160 und 75SN162); schau mal in meinen Artikel GPIB-RS232-Schnittstelle. Da du ohnehin Treiberbausteine brauchst, würde ich gleich auf CAN setzen. Pins gespart, gescheite Pegel und Arbitrierung inklusive. Und die Möglichkeit, den Bus mal raus aus der Kiste zu führen (CANalyzer..)
Delta Oschi schrieb: > Doch sicher. Aber nichts Murksiges, wie SPI und parallel kombiniert. Die SPI-Parallel-Murksversion wurde inzwischen verworfen ;) Parallelbus macht da denk ich nur mit programmierbarer Logik Sinn... Wie ichs nun auch schon desöfteren im Netz gesehn hab. > Erst muss man sich im Klaeren werden, ob Single Master, oder > Multimaster, welche Bandbreite man braucht und welche Datenmenge man > rueberschieben will. Was soll die Reaktionszeit sein? Controlleitungen > wuerd ich Tristate fuehren, denn Opencollector ist lahm und braucht mehr > Strom. Gibts denn Bausteine mit einzelnen Bidirektionalen Bustreibern? Also bei denen man getrennt von andren Treibern die Richtung einstelln kann? Die mit separaten Bustreibern die ich bisher gesehn hab gehn nur in eine Richtung (74125, 74126). Sven P. schrieb: > Wenns schon so ein aufwändiger paralleler Bus werden soll, wie du in da > konzipierst, dann kannst du auch gleich einen GPIB bauen. Da hast du > dann auch praktisch kein Timing-Problem mehr und es gibt fertige > Bustreiber (75SN160 und 75SN162); schau mal in meinen Artikel > GPIB-RS232-Schnittstelle. > > Da du ohnehin Treiberbausteine brauchst, würde ich gleich auf CAN > setzen. Pins gespart, gescheite Pegel und Arbitrierung inklusive. Und > die Möglichkeit, den Bus mal raus aus der Kiste zu führen (CANalyzer..) RS485 wird reservehalber mal mitgeführt (habs zumindest auf dem Belegungsplan des Bussteckers vermerkt). Ich realisier das ganze nun mit TWI. Würdet ihr da irgendwelche Schutzschaltungen mit einbaun? Oder direkte Verbindung vom AVR auf Busplatine? Gruß Markus
TWI ist doch Murks. Da muss man die Richtung umschalten. Deswegen kommt man nie auf eine vernuenftige Geschwindigkeit. SPI ist leider auch Murks, hat nicht einmal einen Buffer. Da ist das UART schon besser, denn es hat ein (1) Byte Buffer. Zur Frage. Weshalb Schutzschaltungen? Auf Platinen sollte ja keine Ueberspannung auftreten. Allenfalls gegen RF (EMV) 100pF von jedem Pin gegen Masse.
Hallo Danke für die Antwort! Der Beitrag hat mich auf das Thema Schutzschaltung gebracht: Beitrag "Schutz von I²C-Bus" Naja so große Datenmengen werd ich über Bus eh nicht befördern. Wieso Murks? Wurde scheinbar schon mehrfach so verwendet. Wie gesagt, das ganze ist für einen Baugruppenträger. Würdet ihr den AVR direkt mit der Busplatine verbinden oder sollte ich iwelche Treiberstufen zwischenschalten? Gibts dann Treiberstufen die die Kommunikation vom TWI von sich aus ohne nen zusätzlichen µC-Pin regeln? Oder reichen da die 100pF Kondensatoren mit in Serie geschalteten Widerständen? (siehe Beitrag) Gruß Markus
Hi >Gibts dann Treiberstufen die die Kommunikation vom TWI von sich aus ohne >nen zusätzlichen µC-Pin regeln? Anhang. MfG Spess
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.