Hallo, folgende Situation: Mehrere AVRs sind über einen Bus verbunden. Der Bus ist im Grunde eine Leitung, jeder AVR hängt mit einem IO-Pin darauf. Die Busleitung soll nun von einem AVR auf High gesetzt werden, indem er vorher prüft ob sie schon High ist, wenn nicht, setzt er sie eben. Nun meine Frage: Wie hoch ist die Wahrscheinlichkeit, bzw. wird das jemals passieren, dass zwei AVRs zur selben Zeit die Busleitung prüfen, erkennen dass sie frei ist und dann beide auf High setzen? Danke im voraus Fabian
Fabian K. schrieb: > Wie hoch ist die Wahrscheinlichkeit, bzw. wird das jemals passieren, > dass zwei AVRs zur selben Zeit die Busleitung prüfen, erkennen dass sie > frei ist und dann beide auf High setzen? So hoch, dass du diesen Zustand definitiv abfangen musst. Schau mal nach CDMA. https://de.wikipedia.org/wiki/Carrier_Sense_Multiple_Access/Collision_Detection
Fabian K. schrieb: > Wie hoch ist die Wahrscheinlichkeit, bzw. wird das jemals passieren, > dass zwei AVRs zur selben Zeit die Busleitung prüfen, erkennen dass sie > frei ist und dann beide auf High setzen? Die Wahrscheinlichkeit ist sehr gering. Als Ergänzung zu Alexanders Vorschlag: CSMA/CA löst das Problem. Ein geniales Beispiel ist die Arbeitsweise des CAN-Bus. https://de.wikipedia.org/wiki/CAN-Bus#Arbitrierung.2C_Priorit.C3.A4t
@ Fabian K. (fabian_k) >Mehrere AVRs sind über einen Bus verbunden. Der Bus ist im Grunde eine >Leitung, jeder AVR hängt mit einem IO-Pin darauf. Hmm. >Die Busleitung soll nun von einem AVR auf High gesetzt werden, indem er >vorher prüft ob sie schon High ist, wenn nicht, setzt er sie eben. Und warum? Mach es wie I2C und nutze die IOs als Open Drain. Dann geht schon mal nix kaputt, wenn mehrere AVRs aktiv sind. Den Rest muss deine Software abfangen, damit sie nicht stehen bleibt und Fehler erkennt.
Falk Brunner schrieb: > Dann geht schon mal nix kaputt, wenn mehrere AVRs aktiv sind. Es geht auch nichts kaputt, wenn zwei Ausgänge mal eine Mikrosekunde lang gegeneinander treiben. Allerdings entstehen dabei erstens undefinierte Pegel, zweitens fließen ziemliche Ausgleichsströme über die Masse- und Versorgungsleitungen, die im Impulsbetrieb als Spikes auftreten und dann diverse wundersame Wirkungen entfalten können. Schon deshalb sollte man diesen Zustand lieber meiden.
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.