Guten Morgen! Kann mir jemand vielleicht sagen, wie ich diesen Receiver (Anhang) richtig einsetze. Mir ist folgendes unklar: 1. Damit bei deaktivierten Treibern am Bus die Ausgänge der zugehörigen nicht betriebenen Receiver im definierten HIGH-Zustand bleiben, dürfen laut Datenblatt (Seiten 7, 8) die Signale an den betriebenen Receivern bei LOW-Zustand nicht die Schwelle von 0.4V unterschreiten. Dazu muss die Gleichtakt-Spannung z.B. ca. 1.5 V betragen und die Differenzspannung der beiden Eingänge ca. +/- 2V. Aber wie erreicht man das? 2. Der vorletzte Satz auf S. 7 lautet: As in all data transmission applications, it is necessary to provide a return ground path between the two remote grounds (driver and receiver ground references) to avoid ground differences. Heißt das, dass man zusätztlich zu den 2 Signalleitungen noch eine Masseleitung führen sollte, oder verstehe ich was falsch? Das wäre doch aufwändig! 3. In Abbildung 10 ist ein Bus dargestellt mit 4-fach-Treiber und 4-fach-Receiver. Und es heißt, dass wenn 2 von den Treibern anwendungsbedingt deaktiviert werden können müssen, muss man die hier unter 1. genannten Maßnahmen treffen. Wenn man es aber wie in Abbildung 11 gemacht wird, dann sind die Maßnahmen nicht nötig. Dabei verstehe ich nicht, wieso es so ist. Bin für jede Hilfe sehr dankbar!!
Ich gehe mal davon aus, dass es hier um den früher skizzierten SPI-Bus geht. Das in Datasheet skizzierte Problem mit teilweise offenen teilweise aktiven Leitungen stellt sich hier doch garnicht. Der Master schaltet sowieso nichts ab, der Slave schaltet alle seine Transmitter gleichermassen und das sind sämtliche Receiver-Leitungen des Masters. Der Pegel von nicht genutzten Receivern interessiert niemanden. Ein GND für alle reicht aus. Ist ja bei Differenzsignalen (hoffentlich) weitgehend stromfrei.
Hallo A. K.! >Das in Datasheet skizzierte Problem mit teilweise offenen teilweise >aktiven Leitungen stellt sich hier doch garnicht. Der Master schaltet >sowieso nichts ab, und der Slave schaltet alle seine Transmitter >gleichermassen. Und der Pegel von unbenutzen Receivern interessiert >niemanden. Die Treiber des Masters bleiben tatsächlich immer aktiv. Der Master hat für SOMI-Signal einen Receiver, der mit den Treibern aller Slaves verbunden ist. Nur der Treiber des gerade sendenden Slaves ist aktiv und andere Treiber deaktiviert. Wenn aber keiner der Slaves sendet sind alle Treiber deaktiviert und dies würde am Ausgang des Master-Receivers einen undefinierten Zustand produzieren. Oder sollte man einen Slave immer aktiv lassen, auch wenn länger kein SPI-Datentransfer stattfindet? Wenn auch es zu diesem Problem gar nicht kommt, würde mich das interessieren, wie man z.B. die Gleichtaktspannung anhebt. Etwa indem man an GND-Anschluss statt 0V einen Offset legt? Oder geht das auch so, wie in der angehängten Abbildung(hab die aus Datenblatt eines anderen Receivers). Dann wäre ja auch keine Masseleitung nötig.
noips schrieb: > andere Treiber deaktiviert. Wenn aber keiner der Slaves sendet sind alle > Treiber deaktiviert und dies würde am Ausgang des Master-Receivers einen > undefinierten Zustand produzieren. Die Eingangsbeschaltung eines Receivers sorgt bei offener Leitung selbst für einen kontrollierten Pegel, siehe Schaltbild im Datasheet. Bild 10/11 und Tabelle 1 beziehen sich auf den Fall, dass ein Teil der verwendeten Receiver eine aktive Busleitung und ein Teil der verwendeten Receiver eine offene Busleitung vorfinden. Da alle deine entsprechenden Leitungen gleichermassen entweder offen oder aktiv sind, können einzig die unbenutzten Receiver spinnen. Na lass sie, wenn ihnen Spass macht. > Wenn auch es zu diesem Problem gar nicht kommt, würde mich das > interessieren, wie man z.B. die Gleichtaktspannung anhebt. Etwa indem > man an GND-Anschluss statt 0V einen Offset legt? Nein. Wenn man den Receivern das partout nicht selbst zutraut, dann kann man es so machen wie in deinem Anhang.
PS: Zu beachten wäre allerdings, dass eine rücklaufende Taktleitung (wie früher skizziert) im offenen Zustand beim Master als "1" ankommt. Das wird zu einer fallenden Taktflanke auf der Empfangsseite des Masters führen, wenn in Mode 0+1 die Transmitter des Slaves aktiviert werden. Bei Mode 0 interessiert ihn die diese Flanke wohl nicht, aber bei Mode 1 wäre das nicht so gut.
>Die Eingangsbeschaltung eines Receivers sorgt bei offener Leitung selbst >für einen kontrollierten Pegel, siehe Schaltbild im Datasheet. Ja, die interne Schaltung sorgt für kontrollierte Pegel, aber da steht auf S. 7 noch folgendes: The internal fail-safe circuitry was designed such that the input common-mode (VIC) and differential (VID)voltages must be observed. In order to ensure the outputs of unused or inactive receivers remain in a high state when the inputs are open-circuited, shorted, or terminated, extra precaution must be taken on the active signal. In applications where the drivers are placed in a high-impedance mode or are powered-down, it is recommended that for 1, 2, or 3 active receiver inputs, the low-level input voltage (VIL) should be greater than 0.4 V. Das vestehe ich so, dass die interne fail-safe-Schaltung nur unter der Voraussetzung immer für definierte Zustände an nicht aktiven Ausgängen sorgt, dass man an den aktiven Receivereingängen den LOW-Pegel mit irgend welchen Maßnahmen über 0.4V hält. Wie sonst ist dieser Abschnitt zu verstehen?
Ich lese dies so, dass dies nur von Bedeutung ist, wenn an den überhaupt verwendeten Receivern gleichzeitig sowohl aktive wie auch inaktive Busleitungen auftreten. Gibt es hier nicht. Wobei das überhaupt nur beim skizzierten rücklaufenden Takt relevant ist. Hast du das noch vor? Wenn nicht, dann gibt es keine einzige Leitung, deren Pegel bei inaktivem Bus irgendwen interessiert. Die Master=>Slave Leitungen sind nie offen und der Zustand von SOMI ist uninteressant.
>wenn unter den überhaupt verwendeten Receivern gleichzeitig sowohl aktive >wie auch inaktive Busleitungen auftreten. Das ist einleuchtend. Dann verstehe ich auch die Abbildungen 10 und 11. Aber ich habe dies aus dem Text nicht sehen können. >Wobei das auch nur beim skizzierten rücklaufenden Takt relevant ist. Hast >du das noch vor? Nein. Es wurde beschlossen, die schnellsten Driver/Receiver zu verwenden und die Datenrate unter der Grenze zu halten, ab der die Delays zu problemen führen. Darum habe ich ja andere Bausteine ausgesucht. Habe davor andere verwendet, bevor ich überhaupt das Problem mit Delays wahrgenommen habe. >dann gibt es keine einzige Leitung, deren Pegel bei inaktivem Bus >irgendwen interessiert. Wie ist es eigentlich mit nichtdefinierten Zuständen an den Logikeingängen. Sind sie nicht grundsätzlich zu vermeiden, auch wenn die Funktion der betroffenen Schaltungsteile gerade nicht gebraucht wird. Ich habe irgend wo gelesen, dass undefinierte Zustände an Logik zum Oszillieren führen können.
Es gibt Situationen in denen undefinierte Eingänge ein Problem sind. In diesem Fall aber nicht, wobei manche Controller wie beispielsweise die AVRs mit ihren Schmitt-Triggern überhaupt keine analogen Zwischenpegel kennen. Jedenfalls sind undefinierte Zustände an MISO/MOSI ausserhalb der Transfers schon prinzipbedingt normal.
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.