-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Mehrere AVR an einer ISP-Schnittstelle und Programmieren?

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    12.07.2008
    Ort
    Villingen-Schwenningen
    Beiträge
    143

    Mehrere AVR an einer ISP-Schnittstelle und Programmieren?

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    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.

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.02.2009
    Beiträge
    195
    Reset wäre am sichersten, damit bekommt man dann nur den controller in den Programmiermodus der auch rein soll. Alternativ würde auch SCK gehn.

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    04.04.2005
    Ort
    Hamburg
    Alter
    29
    Beiträge
    826
    Bei allen Varianten, bei denen du nur eine Leitung trennst, kann es dir aber natürlich immer passieren, dass die gerade inaktiven Controller die Leitung stören, oder sind die Pins ausschließlich mit dem Programmieradapter belegt?

    Alternativ mal prüfen, wie sich das System verhällt, wenn du die anderen Controller dauerhaft in den Reset ziehst, während du einen anderen programmierst.

    Sind die Pegel während eines Resets hochomig? Aber für diese Lösung müsstest du natürlich eine komplizierte Jumper-Konstruktion bauen, um die anderen Reset-Leitung zu ziehen.
    www.subms.de
    Aktuell: Flaschcraft Funkboard - Informationssammlung

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.11.2006
    Ort
    olargues
    Beiträge
    776
    hallo,

    wenn du dir die standardschaltung des isp-programmers (die version mit dem hc244 als treiber) ansiehst, scheint es naheliegend für jeden AVR einen solchen HC244 zu spendieren und die Tristate steuerleitungen des selbigen zu schalten. das ist dann bullet-proof

    gruss klaus

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    10.02.2005
    Ort
    eastside, L.E.
    Alter
    46
    Beiträge
    104
    Die Variante mit einer schaltbaren Reset-Leitung hab ich in einem Projekt mit bis jetzt 5 parallelen AVR's problemlos am laufen.

    Rajko

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    11.08.2008
    Ort
    Hallein
    Alter
    26
    Beiträge
    802
    Also ich würde solche 4-poligen Drehschalter mit mehreren Stellungen hernehmen wie hier: http://www.shop.robotikhardware.de/s...products_id=76
    Kultuverein Metal Resurrection, für mehr Bands und Konzerte in Österreich (:

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    12.07.2008
    Ort
    Villingen-Schwenningen
    Beiträge
    143
    So nun ich nochmal.

    Danke erst mal für die vielen Antworten.
    Vielleicht nochmal kurz zur schaltung.
    Es sollen 3 AVR's verwendet werden. Zwei davon verwenden den Pin MOSI zusätzlich als PWM-Ausgang. Ein Controller verwendet MOSI nicht.

    Es müssen also zum Programmieren eines Controllers alle Controller per Reset auf Low gehalten werden. Da Controller 2 und 3 den MOSI auch als PWM-Ausgang verwenden, müssen die natürlich per Diode entkoppelt werden, bevor sie zusammen geführt an den ISP-Stecker gehen. Bei MISO und SCK ist das nicht notwendig.

    Ich denke, wenn ich nun den SPI-Clock nur an den Controller leite, der Programmiert werden soll, müßte es doch funktionieren.

    Was meint ihr?

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.02.2009
    Beiträge
    195
    Ja aber ich find das ziemlich gefährlich, der Controller geht ja gerad in den Programmiermodus dadurch das reset vom Programmer auf Low gezogen wird und zusätzlich eine Byte Sequenz hingeschickt wird. Wenn auf deinem Sck was zappelt könnte einer der Controller doch auch im Programmiermodus landen. Du brauchst reset nicht auf Low halten wärend du einen programmierst. Ich würd Reset wie gesagt auftrennen dann bist du sicher.

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    12.07.2008
    Ort
    Villingen-Schwenningen
    Beiträge
    143
    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.
    Angehängte Dateien Angehängte Dateien

  10. #10
    Erfahrener Benutzer Roboter Genie Avatar von oratus sum
    Registriert seit
    25.12.2006
    Ort
    Wien
    Alter
    26
    Beiträge
    1.079
    Blog-Einträge
    1
    Ich habe ebenfalls die Variante mit der reset Version mit 3 Controllern problemlos am laufen und wie TheDarkRose es vorgeschlagen hat mit genau dem gleichen Schalter :-D

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •