Mehrere AVR an einer ISP-Schnittstelle und Programmieren?
Hallo,
wie kann ich mit nur einem einzigen ISP-Stecker, an dem mehrere AVR angeschlossen sind, sicherstellen, dass nur ein bestimmter AVR beim programmieren angesprochen wird. Die anderen Controller können bereits programmiert sein und dürfen das Signal an der ISP-Schnittstelle nicht stören.
Die Idee ist, alle Controller (MISO,MOSI,SCK und Reset) mit dem Programmierstecker zu verbinden. Reicht es nun aus, nur die MOSI-Leitung per Jumper mit dem Controller zu verbinden, der programmiert werden soll? Die MOSI-Leitung zu den anderen wäre dann unterbrochen. Oder muss eine andere Leitung unterbrochen werden und wenn ja welche?
Ich kann mir vorstellen, dass die SCK-Leitung auch eine Möglichkeit wäre. Ich bin mir aber nicht sicher.
Kann mir jemand die Frage beantworten?
Gruß Mitch.
Liste der Anhänge anzeigen (Anzahl: 1)
Wenn ich nur Reset auftrenne, dann wird der Controller resettet, der programmiert werden soll. Die anderen Controller sind munter am arbeiten und stören die Signale.
Ich hab mal ein Schaltbild beigefügt, wie ich mir das vorstelle.
Reset geht auf Alle Controller. Nur der Controller kann in den Programmiermodus gehen, der einen Befehl erhält. Dazu müssen Daten per SCK getaktet werden. Da aber nur der zu programmierende Controller SCK bekommt, kann auch nur der Befehle abarbeiten und ausführen. Die anderen warten.
Bei der Schaltung wird PWM an den MOSI-Pins verwendet. Deshalb ist eine Entkopplung per Dioden notwendig. Da über die Dioden nur High auf den MOSI-Pin gelegt werden kann, wäre ein PullDown vermutlich angebrach (ca. 47k). Den hab ich nicht eingezeichnet. Damit SCK nicht in der Luft hängt, sollte hier auch ein PullDown abhilfe schaffen können.
Die SCK-Leitung vom ISP-Stecker wird auf einen Jumper-Block gegeben. Es wird immer nur ein Jumper gesteckt und leitet den SCK an das IC1 bis 3 weiter. Der Miso-Pin wird von keinem Controller verwendet und ist somit im Tri-State. Hier ist eine Entkopplung per Dioden nicht erforderlich.
Wie die Auftrennung mit dem Reset funktionieren soll weis ich nicht. Vielleicht kann mir das mal jemand erklären, was da genau aufgetrennt wird und wo verbunden bleibt.
Mitch.