Zitat Zitat von Jon
Das haupt Problem dürfte sein, dass die Leitungen von Oszillator zum µC möglichst kurz sein müssen. Also am Besten nicht über 3cm. Und dass kannst du bei 30µCs nicht einhalten.
Wenn die Leitungen länger werden, kommt es schnell mal zu Störungen, was für zeitkritische Anwendungen schlecht ist.

jon
Die Leitungslänge sollte eigentlich kein so großes Problem sein, wenn der Takt nicht allzu hoch ist. Ich habe bei einem Projekt einen 24MHz Takt über ca. 10cm verlegt. Ich musste zwar einen kleinen Kondensator am Ende der Taktleitung gegen GND reinbauen, um die Flanken ein wenig abzuschwächen (sonst kommt es zu Reflexion), aber es funktioniert absolut störungsfrei.

Nein, das größere Problem wird sein, wie bombatz schon selber angesprochen hat, dass ein Oszillator nur begrenzt belastbar ist. Wie viele Controller man an einen Oszillator anschließen kann, müsste man im Einzelfall ausprobieren. Ich denke mal, das ist von Oszillator zu Oszillator unterschiedlich und hängt natürlich auch vom Eingangswiderstand des Takteingangs des µC ab.

Eine andere Lösung wäre, den Takt nur auf einen µC zu legen und z.B. über einen Counter-Ausgang wieder auszugeben und damit den nächsten µC zu versorgen usw. Dann hätte man weder mit der Leitungslänge noch mit der Leistung des Oszillators zu kämpfen.

Allerdings hat man dann den Nachteil, dass jeder Controller von seinen "Vorgängern" abhängig ist - d.h. wenn ein Controller nicht läuft, bekommen alle nachfolgenden keinen Takt.

Manche Controller haben auch einen CLKOUT - Pin, an dem der eingehende Takt einfach wieder über einen Treiber ausgegeben wird. Das funktionniert in der Regel auch, wenn der Controller nicht läuft. Das wäre natürlich die optimale Lösung.

Gruß,
askazo